diff --git a/Readme.md b/Readme.md index b2b79ea6e..404310421 100644 --- a/Readme.md +++ b/Readme.md @@ -4,81 +4,88 @@ Xamarin creates and maintains Xamarin.iOS bindings for the Google APIs for iOS L **Active Libraries** +| Package Id | NuGet | +|------------------------------------------------------------------------------|-----------------------------------------------| +| [Xamarin.Firebase.iOS.ABTesting][F.ABTesting.Name] | [8.10.0][F.ABTesting.Package] | +| [Xamarin.Firebase.iOS.AdMob][F.AdMob.Name] | [8.10.0.0][F.AdMob.Package] | +| [Xamarin.Firebase.iOS.Analytics][F.Analytics.Name] | [8.10.0][F.Analytics.Package] | +| [Xamarin.Firebase.iOS.Auth][F.Auth.Name] | [8.10.0][F.Auth.Package] | +| [Xamarin.Firebase.iOS.CloudFirestore][F.CloudFirestore.Name] | [8.10.0][F.CloudFirestore.Package] | +| [Xamarin.Firebase.iOS.CloudFunctions][F.CloudFunctions.Name] | [8.10.0][F.CloudFunctions.Package] | +| [Xamarin.Firebase.iOS.CloudMessaging][F.CloudMessaging.Name] | [8.10.0][F.CloudMessaging.Package] | +| [Xamarin.Firebase.iOS.Core][F.Core.Name] | [8.10.0][F.Core.Package] | +| [Xamarin.Firebase.iOS.Crashlytics][F.Crashlytics.Name] | [8.10.0][F.Crashlytics.Package] | +| [Xamarin.Firebase.iOS.Database][F.Database.Name] | [8.10.0][F.Database.Package] | +| [Xamarin.Firebase.iOS.DynamicLinks][F.DynamicLinks.Name] | [8.10.0][F.DynamicLinks.Package] | +| [Xamarin.Firebase.iOS.InAppMessaging][F.InAppMessaging.Name] | [8.10.0][F.InAppMessaging.Package] | +| [Xamarin.Firebase.iOS.Installations][F.Installations.Name] | [8.10.0][F.Installations.Package] | +| [Xamarin.Firebase.iOS.PerformanceMonitoring][F.PerformanceMonitoring.Name] | [8.10.0][F.PerformanceMonitoring.Package] | +| [Xamarin.Firebase.iOS.RemoteConfig][F.RemoteConfig.Name] | [8.10.0][F.RemoteConfig.Package] | +| [Xamarin.Firebase.iOS.Storage][F.Storage.Name] | [8.10.0][F.Storage.Package] | +| [Xamarin.Google.iOS.Analytics][G.Analytics.Name] | [3.20.0.0][G.Analytics.Package] | +| [Xamarin.Google.iOS.Cast][G.Cast.Name] | [4.7.0.0][G.Cast.Package] | +| [Xamarin.Google.iOS.Maps][G.Maps.Name] | [6.0.1.0][G.Maps.Package] | +| [Xamarin.Google.iOS.MobileAds][G.MobileAds.Name] | [8.13.0.0][G.MobileAds.Package] | +| [Xamarin.Google.iOS.UserMessagingPlatform][G.UserMessagingPlatform.Name] | [1.1.0.0][G.UserMessagingPlatform.Package] | +| [Xamarin.Google.iOS.Places][G.Places.Name] | [6.0.0.0][G.Places.Package] | +| [Xamarin.Google.iOS.SignIn][G.SignIn.Name] | [5.0.2.2][G.SignIn.Package] | +| [Xamarin.Google.iOS.TagManager][G.TagManager.Name] | [7.4.0.0][G.TagManager.Package] | + +**Deprecated Libraries** + | Package Id | NuGet | |------------------------------------------------------------------------------|----------------------------------------------| -| [Xamarin.Firebase.iOS.ABTesting][F.ABTesting.Name] | [4.2.0.0][F.ABTesting.Package] | -| [Xamarin.Firebase.iOS.AdMob][F.AdMob.Name] | [7.66.0.0][F.AdMob.Package] | -| [Xamarin.Firebase.iOS.Analytics][F.Analytics.Name] | [6.9.0.0][F.Analytics.Package] | -| [Xamarin.Firebase.iOS.Auth][F.Auth.Name] | [6.9.2.0][F.Auth.Package] | -| [Xamarin.Firebase.iOS.CloudFirestore][F.CloudFirestore.Name] | [1.19.0.0][F.CloudFirestore.Package] | -| [Xamarin.Firebase.iOS.CloudFunctions][F.CloudFunctions.Name] | [2.9.0.0][F.CloudFunctions.Package] | -| [Xamarin.Firebase.iOS.CloudMessaging][F.CloudMessaging.Name] | [4.7.1.0][F.CloudMessaging.Package] | -| [Xamarin.Firebase.iOS.Core][F.Core.Name] | [6.10.4.0][F.Core.Package] | -| [Xamarin.Firebase.iOS.Crashlytics][F.Crashlytics.Name] | [4.6.2.0][F.Crashlytics.Package] | -| [Xamarin.Firebase.iOS.Database][F.Database.Name] | [6.6.0.0][F.Database.Package] | -| [Xamarin.Firebase.iOS.DynamicLinks][F.DynamicLinks.Name] | [4.3.1.0][F.DynamicLinks.Package] | -| [Xamarin.Firebase.iOS.InAppMessaging][F.InAppMessaging.Name] | [0.24.0.0][F.InAppMessaging.Package] | -| [Xamarin.Firebase.iOS.Installations][F.Installations.Name] | [1.7.0.0][F.Installations.Package] | -| [Xamarin.Firebase.iOS.InstanceID][F.InstanceID.Name] | [4.8.0.0][F.InstanceID.Package] | +| [Xamarin.Firebase.iOS.InstanceID][F.InstanceID.Name] | [7.11.0.0][F.InstanceID.Package] | +| [Xamarin.Google.iOS.AppIndexing][G.AppIndexing.Name] | [2.0.3.8][G.AppIndexing.Package] | +| [Xamarin.Google.iOS.InstanceID][G.InstanceID.Name] | [1.2.1.18][G.InstanceID.Package] | +| [Xamarin.Google.iOS.PlayGames][G.PlayGames.Name] | [5.1.1.11][G.PlayGames.Package] | +| [Xamarin.Firebase.iOS.CrashReporting][F.CrashReporting.Name] | [2.0.0.6][F.CrashReporting.Package] | +| [Xamarin.Firebase.iOS.Invites][F.Invites.Name] | [3.0.1.1][F.Invites.Package] | +| [Xamarin.Google.iOS.AppInvite][G.AppInvite.Name] | [1.0.2.4][G.AppInvite.Package] | +| [Xamarin.Google.iOS.Core][G.Core.Name] | [3.1.0.1][G.Core.Package] | +| [Xamarin.Google.iOS.GoogleCloudMessaging][G.GoogleCloudMessaging.Name] | [1.2.0.1][G.GoogleCloudMessaging.Package] | | [Xamarin.Firebase.iOS.MLKit][F.MLKit.Name] | [0.21.0.0][F.MLKit.Package] | | [Xamarin.Firebase.iOS.MLKit.Common][F.MLKit.Common.Name] | [0.21.0.0][F.MLKit.Common.Package] | | [Xamarin.Firebase.iOS.MLKit.ModelInterpreter][F.MLKit.ModelInterpreter.Name] | [0.21.0.0][F.MLKit.ModelInterpreter.Package] | -| [Xamarin.Firebase.iOS.MLKit.NaturalLanguage][F.MLKit.NaturalLanguage.Name] | [0.18.0.0][F.MLKit.NaturalLanguage.Package] | +| [Xamarin.Firebase.iOS.MLKit.NaturalLanguage][F.MLKit.NaturalLanguage.Name] | [0.18.1.0][F.MLKit.NaturalLanguage.Package] | | [Xamarin.Firebase.iOS.MLKit.Vision][F.MLKit.Vision.Name] | [0.21.0.0][F.MLKit.Vision.Package] | -| [Xamarin.Firebase.iOS.PerformanceMonitoring][F.PerformanceMonitoring.Name] | [3.3.0.0][F.PerformanceMonitoring.Package] | -| [Xamarin.Firebase.iOS.RemoteConfig][F.RemoteConfig.Name] | [4.9.1.0][F.RemoteConfig.Package] | -| [Xamarin.Firebase.iOS.Storage][F.Storage.Name] | [3.9.1.0][F.Storage.Package] | -| [Xamarin.Google.iOS.Analytics][G.Analytics.Name] | [3.17.0.6][G.Analytics.Package] | -| [Xamarin.Google.iOS.AppIndexing][G.AppIndexing.Name] | [2.0.3.8][G.AppIndexing.Package] | -| [Xamarin.Google.iOS.Cast][G.Cast.Name] | [4.4.6.1][G.Cast.Package] | -| [Xamarin.Google.iOS.InstanceID][G.InstanceID.Name] | [1.2.1.18][G.InstanceID.Package] | -| [Xamarin.Google.iOS.Maps][G.Maps.Name] | [3.9.0.0][G.Maps.Package] | -| [Xamarin.Google.iOS.MobileAds][G.MobileAds.Name] | [7.57.0.0][G.MobileAds.Package] | -| [Xamarin.Google.iOS.Places][G.Places.Name] | [3.9.0.0][G.Places.Package] | -| [Xamarin.Google.iOS.PlayGames][G.PlayGames.Name] | [5.1.1.11][G.PlayGames.Package] | -| [Xamarin.Google.iOS.SignIn][G.SignIn.Name] | [5.0.2.1][G.SignIn.Package] | -| [Xamarin.Google.iOS.TagManager][G.TagManager.Name] | [7.1.2.3][G.TagManager.Package] | - -**Deprecated Libraries** - -| Package Id | NuGet | -|----------------------------------------------------------------------------|--------------------------------------------| -| [Xamarin.Firebase.iOS.CrashReporting][F.CrashReporting.Name] | [2.0.0.6][F.CrashReporting.Package] | -| [Xamarin.Firebase.iOS.Invites][F.Invites.Name] | [3.0.1.1][F.Invites.Package] | -| [Xamarin.Google.iOS.AppInvite][G.AppInvite.Name] | [1.0.2.4][G.AppInvite.Package] | -| [Xamarin.Google.iOS.Core][G.Core.Name] | [3.1.0.1][G.Core.Package] | -| [Xamarin.Google.iOS.GoogleCloudMessaging][G.GoogleCloudMessaging.Name] | [1.2.0.1][G.GoogleCloudMessaging.Package] | ## Firebase APIs for iOS current global version Here's a table that shows in which global version is located each component of Firebase at this point of history: -| Component Name | Component Version | Global Version | -|----------------------------------|:-----------------:|:--------------:| -| Firebase A/B Testing | **4.2.0.0** | **6.34.0** | -| Firebase AdMob | **7.66.0.0** | **6.34.0** | -| Firebase Analytics | **6.9.0.0** | **6.34.0** | -| Firebase Auth | **6.9.2.0** | **6.34.0** | -| Firebase Cloud Firestore | **1.19.0.0** | **6.34.0** | -| Firebase Cloud Functions | **2.9.0.0** | **6.34.0** | -| Firebase Cloud Messaging | **4.7.1.0** | **6.34.0** | -| Firebase Core | **6.10.4.0** | **6.34.0** | -| Firebase Crashlytics | **4.6.2.0** | **6.34.0** | -| Firebase Database | **6.6.0.0** | **6.34.0** | -| Firebase Dynamic Links | **4.3.1.0** | **6.34.0** | -| Firebase In App Messaging | **0.24.0.0** | **6.34.0** | -| Firebase Installations | **1.7.0.0** | **6.34.0** | -| Firebase Instance ID | **4.8.0.0** | **6.34.0** | -| Firebase MLKit | **0.21.0.0** | **6.34.0** | -| Firebase MLKit Common | **0.21.0.0** | **6.34.0** | -| Firebase MLKit Model Interpreter | **0.21.0.0** | **6.34.0** | -| Firebase MLKit Natural Language | **0.18.0.0** | **6.34.0** | -| Firebase MLKit Vision | **0.21.0.0** | **6.34.0** | -| Firebase Performance Monitoring | **3.3.0.0** | **6.34.0** | -| Firebase RemoteConfig | **4.9.1.0** | **6.34.0** | -| Firebase Storage | **3.9.1.0** | **6.34.0** | -| Google Sign-In | **5.0.2.1** | **6.15.0** | -| Google Tag Manager | **7.1.2.3** | **6.5.0** | +| Component Name | Component Version | Global Version | +|----------------------------------|:------------------:|:--------------:| +| Firebase A/B Testing | **8.10.0** | **8.10.0** | +| Firebase AdMob | **8.10.0** | **8.10.0** | +| Firebase Analytics | **8.10.0** | **8.10.0** | +| Firebase Auth | **8.10.0** | **8.10.0** | +| Firebase Cloud Firestore | **8.10.0** | **8.10.0** | +| Firebase Cloud Functions | **8.10.0** | **8.10.0** | +| Firebase Cloud Messaging | **8.10.0** | **8.10.0** | +| Firebase Core | **8.10.0** | **8.10.0** | +| Firebase Crashlytics | **8.10.0** | **8.10.0** | +| Firebase Database | **8.10.0** | **8.10.0** | +| Firebase Dynamic Links | **8.10.0** | **8.10.0** | +| Firebase In App Messaging | **8.10.0** | **8.10.0** | +| Firebase Installations | **8.10.0** | **8.10.0** | +| Firebase Performance Monitoring | **8.10.0** | **8.10.0** | +| Firebase RemoteConfig | **8.10.0** | **8.10.0** | +| Firebase Storage | **8.10.0** | **8.10.0** | +| Google User Messaging Platform | **1.1.0.0** | **8.10.0** | +| Google Cast | **4.7.0.0** | **8.10.0** | +| Google Sign-In | **5.0.2.2** | **8.10.0** | +| Google Tag Manager | **7.4.0.0** | **8.10.0** | + +## Ad Id Support + +By default Firebase includes Ad Id Support, however, it can be disabled by adding the below property group to your project file. + +```xml + + True + +``` ## Building @@ -86,8 +93,10 @@ Here's a table that shows in which global version is located each component of F Before building the libraries and samples in this repository, you will need to install [.NET Core][30] and the [Cake .NET Core Tool][32]: +Currently requires a version of Cake less than 1.0 (due to dependencies). + ```sh -dotnet tool install -g cake.tool +dotnet tool install -g cake.tool --version 0.38.5 ``` When building on macOS, you may also need to install [CocoaPods][31]: @@ -125,26 +134,34 @@ Firebase.Database Firebase.DynamicLinks Firebase.InAppMessaging Firebase.Installations -Firebase.InstanceID -Firebase.MLKit -Firebase.MLKit.Common -Firebase.MLKit.ModelInterpreter -Firebase.MLKit.NaturalLanguage Firebase.PerformanceMonitoring Firebase.RemoteConfig Firebase.Storage // Google keys Google.Analytics -Google.Appindexing Google.Cast -Google.Core -Google.InstanceID Google.Maps Google.MobileAds +Google.UserMessagingPlatform Google.Places Google.SignIn Google.TagManager + +// MLKit keys +MLKit.BarcodeScanning +MLKit.Core +MLKit.DigitalInkRecognition +MLKit.FaceDetection +MLKit.ImageLabeling +MLKit.ObjectDetection +MLKit.TextRecognition +MLKit.TextRecognition.Chinese +MLKit.TextRecognition.Devanagari +MLKit.TextRecognition.Japanese +MLKit.TextRecognition.Korean +MLKit.TextRecognition.Latin +MLKit.Vision ``` The following targets can be specified using the `--target=`: @@ -195,12 +212,6 @@ This project is part of the [.NET Foundation][104] [F.DynamicLinks.Name]: source/Firebase/DynamicLinks [F.InAppMessaging.Name]: source/Firebase/InAppMessaging [F.Installations.Name]: source/Firebase/Installations -[F.InstanceID.Name]: source/Firebase/InstanceID -[F.MLKit.Name]: source/Firebase/MLKit -[F.MLKit.Common.Name]: source/Firebase/MLKit.Common -[F.MLKit.ModelInterpreter.Name]: source/Firebase/MLKit.ModelInterpreter -[F.MLKit.NaturalLanguage.Name]: source/Firebase/MLKit.NaturalLanguage -[F.MLKit.Vision.Name]: source/Firebase/MLKit.Vision [F.PerformanceMonitoring.Name]: source/Firebase/PerformanceMonitoring [F.RemoteConfig.Name]: source/Firebase/RemoteConfig [F.Storage.Name]: source/Firebase/Storage @@ -220,12 +231,6 @@ This project is part of the [.NET Foundation][104] [F.DynamicLinks.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.DynamicLinks/ [F.InAppMessaging.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.InAppMessaging/ [F.Installations.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.Installations/ -[F.InstanceID.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.InstanceID/ -[F.MLKit.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.MLKit/ -[F.MLKit.Common.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.MLKit.Common/ -[F.MLKit.ModelInterpreter.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.MLKit.ModelInterpreter/ -[F.MLKit.NaturalLanguage.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.MLKit.NaturalLanguage/ -[F.MLKit.Vision.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.MLKit.Vision/ [F.PerformanceMonitoring.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.PerformanceMonitoring/ [F.RemoteConfig.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.RemoteConfig/ [F.Storage.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.Storage/ @@ -234,48 +239,77 @@ This project is part of the [.NET Foundation][104] [comment]: # (Path for active Google component folders) [G.Analytics.Name]: source/Google/Analytics -[G.AppIndexing.Name]: source/Google/AppIndexing [G.Cast.Name]: source/Google/Cast -[G.InstanceID.Name]: source/Google/InstanceID [G.Maps.Name]: source/Google/Maps [G.MobileAds.Name]: source/Google/MobileAds +[G.UserMessagingPlatform.Name]: source/Google/UserMessagingPlatform [G.Places.Name]: source/Google/Places -[G.PlayGames.Name]: source/Google/PlayGames [G.SignIn.Name]: source/Google/SignIn [G.TagManager.Name]: source/Google/TagManager [comment]: # (URL for active Google component NuGets) [G.Analytics.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.Analytics/ -[G.AppIndexing.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.AppIndexing/ [G.Cast.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.Cast/ -[G.InstanceID.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.InstanceID/ [G.Maps.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.Maps/ [G.MobileAds.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.MobileAds/ +[G.UserMessagingPlatform.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.UserMessagingPlatform/ [G.Places.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.Places/ -[G.PlayGames.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.PlayGames/ [G.SignIn.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.SignIn/ [G.TagManager.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.TagManager/ +[comment]: # (Path for active MLKit component folders) + +[MLK.BarcodeScanning]: source/MLKit/BarcodeScanning +[MLK.Core]: source/MLKit/Core +[MLK.DigitalInkRecognition]: source/MLKit/DigitalInkRecognition +[MLK.FaceDetection]: source/MLKit/FaceDetection +[MLK.ImageLabeling]: source/MLKit/ImageLabeling +[MLK.ObjectDetection]: source/MLKit/ObjectDetection +[MLK.TextRecognition]: source/MLKit/TextRecognition +[MLK.TextRecognition.Chinese]: source/MLKit/TextRecognitionChinese +[MLK.TextRecognition.Devanagari]: source/MLKit/TextRecognitionDevanagari +[MLK.TextRecognition.Japanese]: source/MLKit/TextRecognitionJapanese +[MLK.TextRecognition.Korean]: source/MLKit/TextRecognitionKorean +[MLK.TextRecognition.Latin]: source/MLKit/TextRecognitionLatin +[MLK.Vision]: source/MLKit/Vision [comment]: # (Path for deprecated Firebase component folders) +[F.InstanceID.Name]: source/Firebase/InstanceID [F.CrashReporting.Name]: source/Firebase/CrashReporting [F.Invites.Name]: source/Firebase/Invites +[F.MLKit.Name]: source/Firebase/MLKit +[F.MLKit.Common.Name]: source/Firebase/MLKit.Common +[F.MLKit.ModelInterpreter.Name]: source/Firebase/MLKit.ModelInterpreter +[F.MLKit.NaturalLanguage.Name]: source/Firebase/MLKit.NaturalLanguage +[F.MLKit.Vision.Name]: source/Firebase/MLKit.Vision [comment]: # (URL for deprecated Firebase component NuGets) +[F.InstanceID.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.InstanceID/ [F.CrashReporting.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.CrashReporting/ [F.Invites.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.Invites/ +[F.MLKit.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.MLKit/ +[F.MLKit.Common.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.MLKit.Common/ +[F.MLKit.ModelInterpreter.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.MLKit.ModelInterpreter/ +[F.MLKit.NaturalLanguage.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.MLKit.NaturalLanguage/ +[F.MLKit.Vision.Package]: https://www.nuget.org/packages/Xamarin.Firebase.iOS.MLKit.Vision/ [comment]: # (Path for deprecated Google component folders) +[G.AppIndexing.Name]: source/Google/AppIndexing +[G.InstanceID.Name]: source/Google/InstanceID +[G.PlayGames.Name]: source/Google/PlayGames [G.AppInvite.Name]: source/Google/AppInvite [G.Core.Name]: source/Google/Core [G.GoogleCloudMessaging.Name]: source/Google/GoogleCloudMessaging [comment]: # (URL for deprecated Google component NuGets) +[G.AppIndexing.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.AppIndexing/ +[G.InstanceID.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.InstanceID/ +[G.PlayGames.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.PlayGames/ [G.AppInvite.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.AppInvite/ [G.Core.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.Core/ [G.GoogleCloudMessaging.Package]: https://www.nuget.org/packages/Xamarin.Google.iOS.GoogleCloudMessaging/ diff --git a/Xamarin.Google.sln b/Xamarin.Google.sln index 8032ab5ca..f9cb29e02 100644 --- a/Xamarin.Google.sln +++ b/Xamarin.Google.sln @@ -17,8 +17,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Google", "Google", "{7154BB EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Core", "source\Firebase\Core\Core.csproj", "{9335A59B-3B54-4ED5-8201-B68CFD05CAFB}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "InstanceID", "source\Firebase\InstanceID\InstanceID.csproj", "{754D8F56-C3DB-4E33-91D5-45445AB286EF}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Analytics", "source\Firebase\Analytics\Analytics.csproj", "{25783B8D-1423-4CC2-B629-7E7F36A1CF4B}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AdMob", "source\Firebase\AdMob\AdMob.csproj", "{7157A790-5767-4045-8A26-D71F2F43E78B}" @@ -37,12 +35,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Database", "source\Firebase EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DynamicLinks", "source\Firebase\DynamicLinks\DynamicLinks.csproj", "{4D102D0B-59D7-4902-913E-85CAA0DFE8A3}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MLKit.Common", "source\Firebase\MLKit.Common\MLKit.Common.csproj", "{90DDF7C4-5223-4863-9687-6211BC5D56E5}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MLKit.ModelInterpreter", "source\Firebase\MLKit.ModelInterpreter\MLKit.ModelInterpreter.csproj", "{108BC6F9-E830-4F3B-85A9-DF7A70A06396}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MLKit.Vision", "source\Firebase\MLKit.Vision\MLKit.Vision.csproj", "{B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PerformanceMonitoring", "source\Firebase\PerformanceMonitoring\PerformanceMonitoring.csproj", "{3ECC9FBF-72BB-48E4-B454-56194A422B3A}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RemoteConfig", "source\Firebase\RemoteConfig\RemoteConfig.csproj", "{2FC178FA-114D-4A51-A3DF-5EA10E2C71C4}" @@ -51,12 +43,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Storage", "source\Firebase\ EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Analytics", "source\Google\Analytics\Analytics.csproj", "{36FD3346-EA1E-41A3-91D2-1C380E97BA34}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AppIndexing", "source\Google\AppIndexing\AppIndexing.csproj", "{8AD7D708-4672-4EBB-9DDC-1482B1B72A70}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cast", "source\Google\Cast\Cast.csproj", "{D71F8108-A163-4E1B-BFB5-EF58FEBADD33}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "InstanceID", "source\Google\InstanceID\InstanceID.csproj", "{06E1E2BA-A43A-4816-ABAB-23E027CD1D98}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Maps", "source\Google\Maps\Maps.csproj", "{2D4887E5-F5E4-4C2B-9F35-EAE5E562E43B}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MobileAds", "source\Google\MobileAds\MobileAds.csproj", "{1C9DFB3E-FDA5-478B-B063-CF646AA892DB}" @@ -83,10 +71,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DatabaseSample", "samples\F EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DynamicLinksSample", "samples\Firebase\DynamicLinks\DynamicLinksSample\DynamicLinksSample.csproj", "{58BF0CB1-7D93-46C0-BE89-D97ECF5210C6}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MLKitVisionSample", "samples\Firebase\MLKit.Vision\MLKitVisionSample\MLKitVisionSample.csproj", "{8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ModelInterpreterSample", "samples\Firebase\MLKit.ModelInterpreter\ModelInterpreterSample\ModelInterpreterSample.csproj", "{11CAA1ED-73F0-4E36-B30F-B12042E7E165}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PerformanceMonitoringSample", "samples\Firebase\PerformanceMonitoring\PerformanceMonitoringSample\PerformanceMonitoringSample.csproj", "{60356E08-92A4-433E-956A-F207579B2E6D}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RemoteConfigSample", "samples\Firebase\RemoteConfig\RemoteConfigSample\RemoteConfigSample.csproj", "{F26D64FB-D6A2-41E2-9B31-E8DA0AA400C8}" @@ -95,14 +79,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StorageSample", "samples\Fi EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CuteAnimalsiOS", "samples\Google\Analytics\CuteAnimalsiOS\CuteAnimalsiOS.csproj", "{EBF60C41-86FD-4FFC-853A-72591179EDB8}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AppIndexingSample", "samples\Google\AppIndexing\AppIndexingSample\AppIndexingSample.csproj", "{890E5435-4BAB-4059-954B-788702F01BF3}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CastSample", "samples\Google\Cast\CastSample\CastSample.csproj", "{715CE4E1-EF89-411D-BA91-8227129D5704}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "InstanceIDSample", "samples\Google\InstanceID\InstanceIDSample\InstanceIDSample.csproj", "{F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Core", "source\Google\Core\Core.csproj", "{9C9AE37B-1FBB-46B2-9718-C5701F5C7704}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GoogleMapsAdvSample", "samples\Google\Maps\GoogleMapsAdvSample\GoogleMapsAdvSample.csproj", "{1AA78CE3-4FB5-4A85-B38C-320A5C8BDC8D}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GoogleMapsSample", "samples\Google\Maps\GoogleMapsSample\GoogleMapsSample.csproj", "{2F8EC051-F3A4-43C0-928C-734423FBF1D0}" @@ -115,14 +93,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SignInExample", "samples\Go EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TagManagerSample", "samples\Google\TagManager\TagManagerSample\TagManagerSample.csproj", "{A557F95D-A084-47BE-8EF8-C5E42AD8C233}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MLKit.NaturalLanguage", "source\Firebase\MLKit.NaturalLanguage\MLKit.NaturalLanguage.csproj", "{43F378EA-35C8-494E-9685-B00EBBA2A7A3}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NaturalLanguageSample", "samples\Firebase\MLKit.NaturalLanguage\NaturalLanguageSample\NaturalLanguageSample.csproj", "{6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MLKit", "source\Firebase\MLKit\MLKit.csproj", "{943D1525-5047-4E66-8E5A-D09930F8B339}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MLKitSample", "samples\Firebase\MLKit\MLKitSample\MLKitSample.csproj", "{AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Installations", "source\Firebase\Installations\Installations.csproj", "{65ACD945-5A8A-419D-B9FB-8DFD03C532F4}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CloudFunctions", "source\Firebase\CloudFunctions\CloudFunctions.csproj", "{E5719ABE-6807-49C9-9E7A-0997FF4A5365}" @@ -138,6 +108,40 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution .editorconfig = .editorconfig EndProjectSection EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UserMessagingPlatform", "source\Google\UserMessagingPlatform\UserMessagingPlatform.csproj", "{F6CEF86A-612E-4361-B46E-E5349EF478CE}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Core", "source\MLKit\Core\Core.csproj", "{720DD721-A108-488A-83CA-8DACF2D6D506}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextRecognition", "source\MLKit\TextRecognition\TextRecognition.csproj", "{F37568EB-B67A-4882-8DE8-E00D135CC73D}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextRecognitionLatin", "source\MLKit\TextRecognitionLatin\TextRecognitionLatin.csproj", "{015148EF-FF69-42AC-88C8-2CDEBCAB927E}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "MLKit", "MLKit", "{156DD27D-5857-45B7-9511-0D8E7FE4EAE3}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "MLKit", "MLKit", "{86D67AC8-6E53-4315-8610-59A85C1C35C7}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MLKitVisionSample", "samples\MLKit\MLKitVision\MLKitVisionSample\MLKitVisionSample.csproj", "{8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextRecognitionChinese", "source\MLKit\TextRecognitionChinese\TextRecognitionChinese.csproj", "{DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextRecognitionDevanagari", "source\MLKit\TextRecognitionDevanagari\TextRecognitionDevanagari.csproj", "{159C82C4-1C3C-4956-A0FE-AACF10388B34}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextRecognitionJapanese", "source\MLKit\TextRecognitionJapanese\TextRecognitionJapanese.csproj", "{247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextRecognitionKorean", "source\MLKit\TextRecognitionKorean\TextRecognitionKorean.csproj", "{C5AF22AA-649C-4D88-A498-F342B529BE48}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BarcodeScanning", "source\MLKit\BarcodeScanning\BarcodeScanning.csproj", "{5FBD1B51-DC20-4594-99AB-4C978DC65BD4}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FaceDetection", "source\MLKit\FaceDetection\FaceDetection.csproj", "{A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DigitalInkRecognition", "source\MLKit\DigitalInkRecognition\DigitalInkRecognition.csproj", "{2723A591-AD5B-40B2-8D04-262CEBB20B33}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Vision", "source\MLKit\Vision\Vision.csproj", "{AB6D62E6-8B42-401A-9E9E-E963EA0AE176}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ImageLabeling", "source\MLKit\ImageLabeling\ImageLabeling.csproj", "{AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ObjectDetection", "source\MLKit\ObjectDetection\ObjectDetection.csproj", "{847E4CEC-590D-4209-954B-0DBCB727DF64}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -181,30 +185,6 @@ Global {9335A59B-3B54-4ED5-8201-B68CFD05CAFB}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU {9335A59B-3B54-4ED5-8201-B68CFD05CAFB}.AppStore|iPhone.ActiveCfg = Debug|Any CPU {9335A59B-3B54-4ED5-8201-B68CFD05CAFB}.AppStore|iPhone.Build.0 = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Debug|x64.ActiveCfg = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Debug|x64.Build.0 = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Debug|x86.ActiveCfg = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Debug|x86.Build.0 = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Release|Any CPU.ActiveCfg = Release|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Release|Any CPU.Build.0 = Release|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Release|x64.ActiveCfg = Release|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Release|x64.Build.0 = Release|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Release|x86.ActiveCfg = Release|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Release|x86.Build.0 = Release|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Release|iPhone.ActiveCfg = Release|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Release|iPhone.Build.0 = Release|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Release|iPhoneSimulator.Build.0 = Release|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Debug|iPhone.ActiveCfg = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Debug|iPhone.Build.0 = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.AppStore|iPhone.ActiveCfg = Debug|Any CPU - {754D8F56-C3DB-4E33-91D5-45445AB286EF}.AppStore|iPhone.Build.0 = Debug|Any CPU {25783B8D-1423-4CC2-B629-7E7F36A1CF4B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {25783B8D-1423-4CC2-B629-7E7F36A1CF4B}.Debug|Any CPU.Build.0 = Debug|Any CPU {25783B8D-1423-4CC2-B629-7E7F36A1CF4B}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -421,78 +401,6 @@ Global {4D102D0B-59D7-4902-913E-85CAA0DFE8A3}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU {4D102D0B-59D7-4902-913E-85CAA0DFE8A3}.AppStore|iPhone.ActiveCfg = Debug|Any CPU {4D102D0B-59D7-4902-913E-85CAA0DFE8A3}.AppStore|iPhone.Build.0 = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Debug|Any CPU.Build.0 = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Debug|x64.ActiveCfg = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Debug|x64.Build.0 = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Debug|x86.ActiveCfg = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Debug|x86.Build.0 = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Release|Any CPU.ActiveCfg = Release|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Release|Any CPU.Build.0 = Release|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Release|x64.ActiveCfg = Release|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Release|x64.Build.0 = Release|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Release|x86.ActiveCfg = Release|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Release|x86.Build.0 = Release|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Release|iPhone.ActiveCfg = Release|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Release|iPhone.Build.0 = Release|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Release|iPhoneSimulator.Build.0 = Release|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Debug|iPhone.ActiveCfg = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Debug|iPhone.Build.0 = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.AppStore|iPhone.ActiveCfg = Debug|Any CPU - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64}.AppStore|iPhone.Build.0 = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Debug|x64.ActiveCfg = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Debug|x64.Build.0 = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Debug|x86.ActiveCfg = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Debug|x86.Build.0 = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Release|Any CPU.Build.0 = Release|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Release|x64.ActiveCfg = Release|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Release|x64.Build.0 = Release|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Release|x86.ActiveCfg = Release|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Release|x86.Build.0 = Release|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Release|iPhone.ActiveCfg = Release|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Release|iPhone.Build.0 = Release|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Release|iPhoneSimulator.Build.0 = Release|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Debug|iPhone.ActiveCfg = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Debug|iPhone.Build.0 = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.AppStore|iPhone.ActiveCfg = Debug|Any CPU - {90DDF7C4-5223-4863-9687-6211BC5D56E5}.AppStore|iPhone.Build.0 = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Debug|Any CPU.Build.0 = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Debug|x64.ActiveCfg = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Debug|x64.Build.0 = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Debug|x86.ActiveCfg = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Debug|x86.Build.0 = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Release|Any CPU.ActiveCfg = Release|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Release|Any CPU.Build.0 = Release|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Release|x64.ActiveCfg = Release|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Release|x64.Build.0 = Release|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Release|x86.ActiveCfg = Release|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Release|x86.Build.0 = Release|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Release|iPhone.ActiveCfg = Release|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Release|iPhone.Build.0 = Release|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Release|iPhoneSimulator.Build.0 = Release|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Debug|iPhone.ActiveCfg = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Debug|iPhone.Build.0 = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.AppStore|iPhone.ActiveCfg = Debug|Any CPU - {108BC6F9-E830-4F3B-85A9-DF7A70A06396}.AppStore|iPhone.Build.0 = Debug|Any CPU {3ECC9FBF-72BB-48E4-B454-56194A422B3A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {3ECC9FBF-72BB-48E4-B454-56194A422B3A}.Debug|Any CPU.Build.0 = Debug|Any CPU {3ECC9FBF-72BB-48E4-B454-56194A422B3A}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -589,30 +497,6 @@ Global {36FD3346-EA1E-41A3-91D2-1C380E97BA34}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU {36FD3346-EA1E-41A3-91D2-1C380E97BA34}.AppStore|iPhone.ActiveCfg = Debug|Any CPU {36FD3346-EA1E-41A3-91D2-1C380E97BA34}.AppStore|iPhone.Build.0 = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Debug|x64.ActiveCfg = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Debug|x64.Build.0 = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Debug|x86.ActiveCfg = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Debug|x86.Build.0 = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Release|Any CPU.Build.0 = Release|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Release|x64.ActiveCfg = Release|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Release|x64.Build.0 = Release|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Release|x86.ActiveCfg = Release|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Release|x86.Build.0 = Release|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Release|iPhone.ActiveCfg = Release|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Release|iPhone.Build.0 = Release|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Release|iPhoneSimulator.Build.0 = Release|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Debug|iPhone.ActiveCfg = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Debug|iPhone.Build.0 = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.AppStore|iPhone.ActiveCfg = Debug|Any CPU - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70}.AppStore|iPhone.Build.0 = Debug|Any CPU {D71F8108-A163-4E1B-BFB5-EF58FEBADD33}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {D71F8108-A163-4E1B-BFB5-EF58FEBADD33}.Debug|Any CPU.Build.0 = Debug|Any CPU {D71F8108-A163-4E1B-BFB5-EF58FEBADD33}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -637,30 +521,6 @@ Global {D71F8108-A163-4E1B-BFB5-EF58FEBADD33}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU {D71F8108-A163-4E1B-BFB5-EF58FEBADD33}.AppStore|iPhone.ActiveCfg = Debug|Any CPU {D71F8108-A163-4E1B-BFB5-EF58FEBADD33}.AppStore|iPhone.Build.0 = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Debug|Any CPU.Build.0 = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Debug|x64.ActiveCfg = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Debug|x64.Build.0 = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Debug|x86.ActiveCfg = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Debug|x86.Build.0 = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Release|Any CPU.ActiveCfg = Release|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Release|Any CPU.Build.0 = Release|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Release|x64.ActiveCfg = Release|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Release|x64.Build.0 = Release|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Release|x86.ActiveCfg = Release|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Release|x86.Build.0 = Release|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Release|iPhone.ActiveCfg = Release|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Release|iPhone.Build.0 = Release|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Release|iPhoneSimulator.Build.0 = Release|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Debug|iPhone.ActiveCfg = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Debug|iPhone.Build.0 = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.AppStore|iPhone.ActiveCfg = Debug|Any CPU - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98}.AppStore|iPhone.Build.0 = Debug|Any CPU {2D4887E5-F5E4-4C2B-9F35-EAE5E562E43B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {2D4887E5-F5E4-4C2B-9F35-EAE5E562E43B}.Debug|Any CPU.Build.0 = Debug|Any CPU {2D4887E5-F5E4-4C2B-9F35-EAE5E562E43B}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -973,54 +833,6 @@ Global {58BF0CB1-7D93-46C0-BE89-D97ECF5210C6}.Ad-Hoc|iPhone.Build.0 = Release|iPhone {58BF0CB1-7D93-46C0-BE89-D97ECF5210C6}.AppStore|iPhone.ActiveCfg = Release|iPhone {58BF0CB1-7D93-46C0-BE89-D97ECF5210C6}.AppStore|iPhone.Build.0 = Release|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|Any CPU.ActiveCfg = Debug|iPhoneSimulator - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|Any CPU.Build.0 = Debug|iPhoneSimulator - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|x64.ActiveCfg = Debug|iPhoneSimulator - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|x64.Build.0 = Debug|iPhoneSimulator - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|x86.ActiveCfg = Debug|iPhoneSimulator - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|x86.Build.0 = Debug|iPhoneSimulator - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|Any CPU.ActiveCfg = Release|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|Any CPU.Build.0 = Release|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|x64.ActiveCfg = Release|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|x64.Build.0 = Release|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|x86.ActiveCfg = Release|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|x86.Build.0 = Release|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|iPhone.ActiveCfg = Release|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|iPhone.Build.0 = Release|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|iPhone.ActiveCfg = Debug|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|iPhone.Build.0 = Debug|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Ad-Hoc|iPhone.ActiveCfg = Release|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Ad-Hoc|iPhone.Build.0 = Release|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.AppStore|iPhone.ActiveCfg = Release|iPhone - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.AppStore|iPhone.Build.0 = Release|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Debug|Any CPU.ActiveCfg = Debug|iPhoneSimulator - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Debug|Any CPU.Build.0 = Debug|iPhoneSimulator - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Debug|x64.ActiveCfg = Debug|iPhoneSimulator - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Debug|x64.Build.0 = Debug|iPhoneSimulator - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Debug|x86.ActiveCfg = Debug|iPhoneSimulator - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Debug|x86.Build.0 = Debug|iPhoneSimulator - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Release|Any CPU.ActiveCfg = Release|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Release|Any CPU.Build.0 = Release|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Release|x64.ActiveCfg = Release|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Release|x64.Build.0 = Release|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Release|x86.ActiveCfg = Release|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Release|x86.Build.0 = Release|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Release|iPhone.ActiveCfg = Release|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Release|iPhone.Build.0 = Release|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Debug|iPhone.ActiveCfg = Debug|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Debug|iPhone.Build.0 = Debug|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Ad-Hoc|iPhone.ActiveCfg = Release|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.Ad-Hoc|iPhone.Build.0 = Release|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.AppStore|iPhone.ActiveCfg = Release|iPhone - {11CAA1ED-73F0-4E36-B30F-B12042E7E165}.AppStore|iPhone.Build.0 = Release|iPhone {60356E08-92A4-433E-956A-F207579B2E6D}.Debug|Any CPU.ActiveCfg = Debug|iPhoneSimulator {60356E08-92A4-433E-956A-F207579B2E6D}.Debug|Any CPU.Build.0 = Debug|iPhoneSimulator {60356E08-92A4-433E-956A-F207579B2E6D}.Debug|x64.ActiveCfg = Debug|iPhoneSimulator @@ -1117,30 +929,6 @@ Global {EBF60C41-86FD-4FFC-853A-72591179EDB8}.Ad-Hoc|iPhone.Build.0 = Ad-Hoc|iPhone {EBF60C41-86FD-4FFC-853A-72591179EDB8}.AppStore|iPhone.ActiveCfg = AppStore|iPhone {EBF60C41-86FD-4FFC-853A-72591179EDB8}.AppStore|iPhone.Build.0 = AppStore|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.Debug|Any CPU.ActiveCfg = Debug|iPhoneSimulator - {890E5435-4BAB-4059-954B-788702F01BF3}.Debug|Any CPU.Build.0 = Debug|iPhoneSimulator - {890E5435-4BAB-4059-954B-788702F01BF3}.Debug|x64.ActiveCfg = Debug|iPhoneSimulator - {890E5435-4BAB-4059-954B-788702F01BF3}.Debug|x64.Build.0 = Debug|iPhoneSimulator - {890E5435-4BAB-4059-954B-788702F01BF3}.Debug|x86.ActiveCfg = Debug|iPhoneSimulator - {890E5435-4BAB-4059-954B-788702F01BF3}.Debug|x86.Build.0 = Debug|iPhoneSimulator - {890E5435-4BAB-4059-954B-788702F01BF3}.Release|Any CPU.ActiveCfg = Release|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.Release|Any CPU.Build.0 = Release|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.Release|x64.ActiveCfg = Release|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.Release|x64.Build.0 = Release|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.Release|x86.ActiveCfg = Release|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.Release|x86.Build.0 = Release|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator - {890E5435-4BAB-4059-954B-788702F01BF3}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator - {890E5435-4BAB-4059-954B-788702F01BF3}.Release|iPhone.ActiveCfg = Release|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.Release|iPhone.Build.0 = Release|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator - {890E5435-4BAB-4059-954B-788702F01BF3}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator - {890E5435-4BAB-4059-954B-788702F01BF3}.Debug|iPhone.ActiveCfg = Debug|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.Debug|iPhone.Build.0 = Debug|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.Ad-Hoc|iPhone.ActiveCfg = Release|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.Ad-Hoc|iPhone.Build.0 = Release|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.AppStore|iPhone.ActiveCfg = Release|iPhone - {890E5435-4BAB-4059-954B-788702F01BF3}.AppStore|iPhone.Build.0 = Release|iPhone {715CE4E1-EF89-411D-BA91-8227129D5704}.Debug|Any CPU.ActiveCfg = Debug|iPhoneSimulator {715CE4E1-EF89-411D-BA91-8227129D5704}.Debug|Any CPU.Build.0 = Debug|iPhoneSimulator {715CE4E1-EF89-411D-BA91-8227129D5704}.Debug|x64.ActiveCfg = Debug|iPhoneSimulator @@ -1165,54 +953,6 @@ Global {715CE4E1-EF89-411D-BA91-8227129D5704}.Ad-Hoc|iPhone.Build.0 = Release|iPhone {715CE4E1-EF89-411D-BA91-8227129D5704}.AppStore|iPhone.ActiveCfg = Release|iPhone {715CE4E1-EF89-411D-BA91-8227129D5704}.AppStore|iPhone.Build.0 = Release|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Debug|Any CPU.ActiveCfg = Debug|iPhoneSimulator - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Debug|Any CPU.Build.0 = Debug|iPhoneSimulator - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Debug|x64.ActiveCfg = Debug|iPhoneSimulator - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Debug|x64.Build.0 = Debug|iPhoneSimulator - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Debug|x86.ActiveCfg = Debug|iPhoneSimulator - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Debug|x86.Build.0 = Debug|iPhoneSimulator - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Release|Any CPU.ActiveCfg = Release|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Release|Any CPU.Build.0 = Release|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Release|x64.ActiveCfg = Release|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Release|x64.Build.0 = Release|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Release|x86.ActiveCfg = Release|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Release|x86.Build.0 = Release|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Release|iPhone.ActiveCfg = Release|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Release|iPhone.Build.0 = Release|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Debug|iPhone.ActiveCfg = Debug|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Debug|iPhone.Build.0 = Debug|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Ad-Hoc|iPhone.ActiveCfg = Release|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.Ad-Hoc|iPhone.Build.0 = Release|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.AppStore|iPhone.ActiveCfg = Release|iPhone - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7}.AppStore|iPhone.Build.0 = Release|iPhone - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Debug|Any CPU.Build.0 = Debug|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Debug|x64.ActiveCfg = Debug|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Debug|x64.Build.0 = Debug|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Debug|x86.ActiveCfg = Debug|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Debug|x86.Build.0 = Debug|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Release|Any CPU.ActiveCfg = Release|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Release|Any CPU.Build.0 = Release|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Release|x64.ActiveCfg = Release|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Release|x64.Build.0 = Release|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Release|x86.ActiveCfg = Release|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Release|x86.Build.0 = Release|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Release|iPhone.ActiveCfg = Release|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Release|iPhone.Build.0 = Release|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Release|iPhoneSimulator.Build.0 = Release|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Debug|iPhone.ActiveCfg = Debug|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Debug|iPhone.Build.0 = Debug|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.AppStore|iPhone.ActiveCfg = Release|Any CPU - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704}.AppStore|iPhone.Build.0 = Release|Any CPU {1AA78CE3-4FB5-4A85-B38C-320A5C8BDC8D}.Debug|Any CPU.ActiveCfg = Debug|iPhoneSimulator {1AA78CE3-4FB5-4A85-B38C-320A5C8BDC8D}.Debug|Any CPU.Build.0 = Debug|iPhoneSimulator {1AA78CE3-4FB5-4A85-B38C-320A5C8BDC8D}.Debug|x64.ActiveCfg = Debug|iPhoneSimulator @@ -1357,30 +1097,6 @@ Global {A557F95D-A084-47BE-8EF8-C5E42AD8C233}.Ad-Hoc|iPhone.Build.0 = Release|iPhone {A557F95D-A084-47BE-8EF8-C5E42AD8C233}.AppStore|iPhone.ActiveCfg = Release|iPhone {A557F95D-A084-47BE-8EF8-C5E42AD8C233}.AppStore|iPhone.Build.0 = Release|iPhone - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Debug|x64.ActiveCfg = Debug|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Debug|x64.Build.0 = Debug|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Debug|x86.ActiveCfg = Debug|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Debug|x86.Build.0 = Debug|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Release|Any CPU.Build.0 = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Release|x64.ActiveCfg = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Release|x64.Build.0 = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Release|x86.ActiveCfg = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Release|x86.Build.0 = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Release|iPhone.ActiveCfg = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Release|iPhone.Build.0 = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Release|iPhoneSimulator.Build.0 = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Debug|iPhone.ActiveCfg = Debug|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Debug|iPhone.Build.0 = Debug|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.AppStore|iPhone.ActiveCfg = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.AppStore|iPhone.Build.0 = Release|Any CPU {E5719ABE-6807-49C9-9E7A-0997FF4A5365}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {E5719ABE-6807-49C9-9E7A-0997FF4A5365}.Debug|Any CPU.Build.0 = Debug|Any CPU {E5719ABE-6807-49C9-9E7A-0997FF4A5365}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -1405,86 +1121,6 @@ Global {E5719ABE-6807-49C9-9E7A-0997FF4A5365}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU {E5719ABE-6807-49C9-9E7A-0997FF4A5365}.AppStore|iPhone.ActiveCfg = Debug|Any CPU {E5719ABE-6807-49C9-9E7A-0997FF4A5365}.AppStore|iPhone.Build.0 = Debug|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.AppStore|iPhone.ActiveCfg = Release|Any CPU - {43F378EA-35C8-494E-9685-B00EBBA2A7A3}.AppStore|iPhone.Build.0 = Release|Any CPU - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Debug|Any CPU.ActiveCfg = Debug|iPhoneSimulator - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Debug|Any CPU.Build.0 = Debug|iPhoneSimulator - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Debug|x64.ActiveCfg = Debug|iPhoneSimulator - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Debug|x64.Build.0 = Debug|iPhoneSimulator - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Debug|x86.ActiveCfg = Debug|iPhoneSimulator - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Debug|x86.Build.0 = Debug|iPhoneSimulator - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Release|Any CPU.ActiveCfg = Release|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Release|Any CPU.Build.0 = Release|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Release|x64.ActiveCfg = Release|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Release|x64.Build.0 = Release|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Release|x86.ActiveCfg = Release|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Release|x86.Build.0 = Release|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Release|iPhone.ActiveCfg = Release|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Release|iPhone.Build.0 = Release|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Debug|iPhone.ActiveCfg = Debug|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Debug|iPhone.Build.0 = Debug|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Ad-Hoc|iPhone.ActiveCfg = Release|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Ad-Hoc|iPhone.Build.0 = Release|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.AppStore|iPhone.ActiveCfg = Release|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.AppStore|iPhone.Build.0 = Release|iPhone - {E5719ABE-6807-49C9-9E7A-0997FF4A5365}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.Ad-Hoc|iPhone.Build.0 = Release|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.AppStore|iPhone.ActiveCfg = Release|iPhone - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7}.AppStore|iPhone.Build.0 = Release|iPhone - {943D1525-5047-4E66-8E5A-D09930F8B339}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Debug|Any CPU.Build.0 = Debug|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Debug|x64.ActiveCfg = Debug|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Debug|x64.Build.0 = Debug|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Debug|x86.ActiveCfg = Debug|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Debug|x86.Build.0 = Debug|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Release|Any CPU.ActiveCfg = Release|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Release|Any CPU.Build.0 = Release|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Release|x64.ActiveCfg = Release|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Release|x64.Build.0 = Release|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Release|x86.ActiveCfg = Release|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Release|x86.Build.0 = Release|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Release|iPhone.ActiveCfg = Release|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Release|iPhone.Build.0 = Release|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Release|iPhoneSimulator.Build.0 = Release|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Debug|iPhone.ActiveCfg = Debug|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Debug|iPhone.Build.0 = Debug|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.AppStore|iPhone.ActiveCfg = Release|Any CPU - {943D1525-5047-4E66-8E5A-D09930F8B339}.AppStore|iPhone.Build.0 = Release|Any CPU - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Debug|Any CPU.ActiveCfg = Debug|iPhoneSimulator - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Debug|Any CPU.Build.0 = Debug|iPhoneSimulator - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Debug|x64.ActiveCfg = Debug|iPhoneSimulator - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Debug|x64.Build.0 = Debug|iPhoneSimulator - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Debug|x86.ActiveCfg = Debug|iPhoneSimulator - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Debug|x86.Build.0 = Debug|iPhoneSimulator - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Release|Any CPU.ActiveCfg = Release|iPhone - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Release|Any CPU.Build.0 = Release|iPhone - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Release|x64.ActiveCfg = Release|iPhone - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Release|x64.Build.0 = Release|iPhone - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Release|x86.ActiveCfg = Release|iPhone - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Release|x86.Build.0 = Release|iPhone - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Release|iPhone.ActiveCfg = Release|iPhone - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Release|iPhone.Build.0 = Release|iPhone - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Debug|iPhone.ActiveCfg = Debug|iPhone - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Debug|iPhone.Build.0 = Debug|iPhone - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Ad-Hoc|iPhone.ActiveCfg = Release|iPhone - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.Ad-Hoc|iPhone.Build.0 = Release|iPhone - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.AppStore|iPhone.ActiveCfg = Release|iPhone - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A}.AppStore|iPhone.Build.0 = Release|iPhone {65ACD945-5A8A-419D-B9FB-8DFD03C532F4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {65ACD945-5A8A-419D-B9FB-8DFD03C532F4}.Debug|Any CPU.Build.0 = Debug|Any CPU {65ACD945-5A8A-419D-B9FB-8DFD03C532F4}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -1592,6 +1228,366 @@ Global {C02A268C-500B-4C3E-81E7-4E40A7AEB323}.Ad-Hoc|iPhone.Build.0 = Release|iPhone {C02A268C-500B-4C3E-81E7-4E40A7AEB323}.AppStore|iPhone.ActiveCfg = Release|iPhone {C02A268C-500B-4C3E-81E7-4E40A7AEB323}.AppStore|iPhone.Build.0 = Release|iPhone + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Debug|x64.ActiveCfg = Debug|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Debug|x64.Build.0 = Debug|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Debug|x86.ActiveCfg = Debug|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Debug|x86.Build.0 = Debug|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Release|Any CPU.Build.0 = Release|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Release|x64.ActiveCfg = Release|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Release|x64.Build.0 = Release|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Release|x86.ActiveCfg = Release|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Release|x86.Build.0 = Release|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Release|iPhone.ActiveCfg = Release|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Release|iPhone.Build.0 = Release|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Debug|iPhone.Build.0 = Debug|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {F6CEF86A-612E-4361-B46E-E5349EF478CE}.AppStore|iPhone.Build.0 = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Debug|Any CPU.Build.0 = Debug|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Debug|x64.ActiveCfg = Debug|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Debug|x64.Build.0 = Debug|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Debug|x86.ActiveCfg = Debug|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Debug|x86.Build.0 = Debug|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Release|Any CPU.ActiveCfg = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Release|Any CPU.Build.0 = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Release|x64.ActiveCfg = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Release|x64.Build.0 = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Release|x86.ActiveCfg = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Release|x86.Build.0 = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Release|iPhone.ActiveCfg = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Release|iPhone.Build.0 = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Debug|iPhone.Build.0 = Debug|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {720DD721-A108-488A-83CA-8DACF2D6D506}.AppStore|iPhone.Build.0 = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Debug|x64.ActiveCfg = Debug|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Debug|x64.Build.0 = Debug|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Debug|x86.ActiveCfg = Debug|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Debug|x86.Build.0 = Debug|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Release|Any CPU.Build.0 = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Release|x64.ActiveCfg = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Release|x64.Build.0 = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Release|x86.ActiveCfg = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Release|x86.Build.0 = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Release|iPhone.ActiveCfg = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Release|iPhone.Build.0 = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Debug|iPhone.Build.0 = Debug|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {F37568EB-B67A-4882-8DE8-E00D135CC73D}.AppStore|iPhone.Build.0 = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Debug|x64.ActiveCfg = Debug|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Debug|x64.Build.0 = Debug|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Debug|x86.ActiveCfg = Debug|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Debug|x86.Build.0 = Debug|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Release|Any CPU.Build.0 = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Release|x64.ActiveCfg = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Release|x64.Build.0 = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Release|x86.ActiveCfg = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Release|x86.Build.0 = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Release|iPhone.ActiveCfg = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Release|iPhone.Build.0 = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Debug|iPhone.Build.0 = Debug|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {015148EF-FF69-42AC-88C8-2CDEBCAB927E}.AppStore|iPhone.Build.0 = Release|Any CPU + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|Any CPU.ActiveCfg = Debug|iPhoneSimulator + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|Any CPU.Build.0 = Debug|iPhoneSimulator + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|x64.ActiveCfg = Debug|iPhoneSimulator + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|x64.Build.0 = Debug|iPhoneSimulator + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|x86.ActiveCfg = Debug|iPhoneSimulator + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|x86.Build.0 = Debug|iPhoneSimulator + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|Any CPU.ActiveCfg = Release|iPhone + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|Any CPU.Build.0 = Release|iPhone + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|x64.ActiveCfg = Release|iPhone + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|x64.Build.0 = Release|iPhone + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|x86.ActiveCfg = Release|iPhone + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|x86.Build.0 = Release|iPhone + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|iPhone.ActiveCfg = Release|iPhone + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|iPhone.Build.0 = Release|iPhone + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|iPhone.ActiveCfg = Debug|iPhone + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Debug|iPhone.Build.0 = Debug|iPhone + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Ad-Hoc|iPhone.ActiveCfg = Release|iPhone + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.Ad-Hoc|iPhone.Build.0 = Release|iPhone + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.AppStore|iPhone.ActiveCfg = Release|iPhone + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F}.AppStore|iPhone.Build.0 = Release|iPhone + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Debug|x64.ActiveCfg = Debug|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Debug|x64.Build.0 = Debug|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Debug|x86.ActiveCfg = Debug|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Debug|x86.Build.0 = Debug|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Release|Any CPU.Build.0 = Release|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Release|x64.ActiveCfg = Release|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Release|x64.Build.0 = Release|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Release|x86.ActiveCfg = Release|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Release|x86.Build.0 = Release|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Release|iPhone.ActiveCfg = Release|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Release|iPhone.Build.0 = Release|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Debug|iPhone.Build.0 = Debug|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C}.AppStore|iPhone.Build.0 = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Debug|Any CPU.Build.0 = Debug|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Debug|x64.ActiveCfg = Debug|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Debug|x64.Build.0 = Debug|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Debug|x86.ActiveCfg = Debug|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Debug|x86.Build.0 = Debug|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Release|Any CPU.ActiveCfg = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Release|Any CPU.Build.0 = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Release|x64.ActiveCfg = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Release|x64.Build.0 = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Release|x86.ActiveCfg = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Release|x86.Build.0 = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Release|iPhone.ActiveCfg = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Release|iPhone.Build.0 = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Debug|iPhone.Build.0 = Debug|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {159C82C4-1C3C-4956-A0FE-AACF10388B34}.AppStore|iPhone.Build.0 = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Debug|Any CPU.Build.0 = Debug|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Debug|x64.ActiveCfg = Debug|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Debug|x64.Build.0 = Debug|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Debug|x86.ActiveCfg = Debug|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Debug|x86.Build.0 = Debug|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Release|Any CPU.ActiveCfg = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Release|Any CPU.Build.0 = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Release|x64.ActiveCfg = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Release|x64.Build.0 = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Release|x86.ActiveCfg = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Release|x86.Build.0 = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Release|iPhone.ActiveCfg = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Release|iPhone.Build.0 = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Debug|iPhone.Build.0 = Debug|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9}.AppStore|iPhone.Build.0 = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Debug|x64.ActiveCfg = Debug|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Debug|x64.Build.0 = Debug|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Debug|x86.ActiveCfg = Debug|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Debug|x86.Build.0 = Debug|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Release|Any CPU.Build.0 = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Release|x64.ActiveCfg = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Release|x64.Build.0 = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Release|x86.ActiveCfg = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Release|x86.Build.0 = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Release|iPhone.ActiveCfg = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Release|iPhone.Build.0 = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Debug|iPhone.Build.0 = Debug|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {C5AF22AA-649C-4D88-A498-F342B529BE48}.AppStore|iPhone.Build.0 = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Debug|x64.ActiveCfg = Debug|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Debug|x64.Build.0 = Debug|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Debug|x86.ActiveCfg = Debug|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Debug|x86.Build.0 = Debug|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Release|Any CPU.Build.0 = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Release|x64.ActiveCfg = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Release|x64.Build.0 = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Release|x86.ActiveCfg = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Release|x86.Build.0 = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Release|iPhone.ActiveCfg = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Release|iPhone.Build.0 = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Debug|iPhone.Build.0 = Debug|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4}.AppStore|iPhone.Build.0 = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Debug|x64.ActiveCfg = Debug|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Debug|x64.Build.0 = Debug|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Debug|x86.ActiveCfg = Debug|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Debug|x86.Build.0 = Debug|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Release|Any CPU.Build.0 = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Release|x64.ActiveCfg = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Release|x64.Build.0 = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Release|x86.ActiveCfg = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Release|x86.Build.0 = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Release|iPhone.ActiveCfg = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Release|iPhone.Build.0 = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Debug|iPhone.Build.0 = Debug|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE}.AppStore|iPhone.Build.0 = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Debug|x64.ActiveCfg = Debug|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Debug|x64.Build.0 = Debug|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Debug|x86.ActiveCfg = Debug|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Debug|x86.Build.0 = Debug|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Release|Any CPU.Build.0 = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Release|x64.ActiveCfg = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Release|x64.Build.0 = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Release|x86.ActiveCfg = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Release|x86.Build.0 = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Release|iPhone.ActiveCfg = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Release|iPhone.Build.0 = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Debug|iPhone.Build.0 = Debug|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {2723A591-AD5B-40B2-8D04-262CEBB20B33}.AppStore|iPhone.Build.0 = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Debug|Any CPU.Build.0 = Debug|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Debug|x64.ActiveCfg = Debug|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Debug|x64.Build.0 = Debug|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Debug|x86.ActiveCfg = Debug|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Debug|x86.Build.0 = Debug|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Release|Any CPU.ActiveCfg = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Release|Any CPU.Build.0 = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Release|x64.ActiveCfg = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Release|x64.Build.0 = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Release|x86.ActiveCfg = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Release|x86.Build.0 = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Release|iPhone.ActiveCfg = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Release|iPhone.Build.0 = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Debug|iPhone.Build.0 = Debug|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176}.AppStore|iPhone.Build.0 = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Debug|x64.ActiveCfg = Debug|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Debug|x64.Build.0 = Debug|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Debug|x86.ActiveCfg = Debug|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Debug|x86.Build.0 = Debug|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Release|Any CPU.ActiveCfg = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Release|Any CPU.Build.0 = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Release|x64.ActiveCfg = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Release|x64.Build.0 = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Release|x86.ActiveCfg = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Release|x86.Build.0 = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Release|iPhone.ActiveCfg = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Release|iPhone.Build.0 = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Debug|iPhone.Build.0 = Debug|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6}.AppStore|iPhone.Build.0 = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Debug|Any CPU.Build.0 = Debug|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Debug|x64.ActiveCfg = Debug|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Debug|x64.Build.0 = Debug|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Debug|x86.ActiveCfg = Debug|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Debug|x86.Build.0 = Debug|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Release|Any CPU.ActiveCfg = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Release|Any CPU.Build.0 = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Release|x64.ActiveCfg = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Release|x64.Build.0 = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Release|x86.ActiveCfg = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Release|x86.Build.0 = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Release|iPhone.ActiveCfg = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Release|iPhone.Build.0 = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Debug|iPhone.Build.0 = Debug|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.AppStore|iPhone.ActiveCfg = Release|Any CPU + {847E4CEC-590D-4209-954B-0DBCB727DF64}.AppStore|iPhone.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(NestedProjects) = preSolution {87DAFAF8-C745-44F0-BC8A-503BF4A97082} = {66A8A447-CECE-4C0D-9F8E-8EC790A141F3} @@ -1599,7 +1595,6 @@ Global {A8FBB637-BB67-45CD-9883-E203FE66EC13} = {69028465-228C-475F-A932-A161B6F17B75} {7154BBDA-0E15-4967-B3B9-7623F914F697} = {69028465-228C-475F-A932-A161B6F17B75} {9335A59B-3B54-4ED5-8201-B68CFD05CAFB} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} - {754D8F56-C3DB-4E33-91D5-45445AB286EF} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} {25783B8D-1423-4CC2-B629-7E7F36A1CF4B} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} {7157A790-5767-4045-8A26-D71F2F43E78B} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} {76D97DB8-CAFE-4F0C-9F90-970CB26080FA} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} @@ -1609,16 +1604,11 @@ Global {E1558CDF-C9CE-4A78-AA96-9EA75A39D266} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} {5013B41D-804C-499D-B0E5-E8D14859044F} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} {4D102D0B-59D7-4902-913E-85CAA0DFE8A3} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} - {B0D91D94-300F-4DEB-A0A7-11DCBDF6FD64} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} - {90DDF7C4-5223-4863-9687-6211BC5D56E5} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} - {108BC6F9-E830-4F3B-85A9-DF7A70A06396} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} {3ECC9FBF-72BB-48E4-B454-56194A422B3A} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} {2FC178FA-114D-4A51-A3DF-5EA10E2C71C4} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} {03D44E24-A726-44F9-8EC9-4B136F15B817} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} {36FD3346-EA1E-41A3-91D2-1C380E97BA34} = {CF41ABBD-2DDE-44D3-A5C8-85846812AE23} - {8AD7D708-4672-4EBB-9DDC-1482B1B72A70} = {CF41ABBD-2DDE-44D3-A5C8-85846812AE23} {D71F8108-A163-4E1B-BFB5-EF58FEBADD33} = {CF41ABBD-2DDE-44D3-A5C8-85846812AE23} - {06E1E2BA-A43A-4816-ABAB-23E027CD1D98} = {CF41ABBD-2DDE-44D3-A5C8-85846812AE23} {2D4887E5-F5E4-4C2B-9F35-EAE5E562E43B} = {CF41ABBD-2DDE-44D3-A5C8-85846812AE23} {1C9DFB3E-FDA5-478B-B063-CF646AA892DB} = {CF41ABBD-2DDE-44D3-A5C8-85846812AE23} {FC514AE9-BE75-467B-91CC-B5FFC0AFBEC4} = {CF41ABBD-2DDE-44D3-A5C8-85846812AE23} @@ -1632,30 +1622,38 @@ Global {DB75BE06-E241-4750-8243-C00D1743F4D0} = {A8FBB637-BB67-45CD-9883-E203FE66EC13} {94474EED-2C21-463F-A093-A6FE10C97F50} = {A8FBB637-BB67-45CD-9883-E203FE66EC13} {58BF0CB1-7D93-46C0-BE89-D97ECF5210C6} = {A8FBB637-BB67-45CD-9883-E203FE66EC13} - {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F} = {A8FBB637-BB67-45CD-9883-E203FE66EC13} - {11CAA1ED-73F0-4E36-B30F-B12042E7E165} = {A8FBB637-BB67-45CD-9883-E203FE66EC13} {60356E08-92A4-433E-956A-F207579B2E6D} = {A8FBB637-BB67-45CD-9883-E203FE66EC13} {F26D64FB-D6A2-41E2-9B31-E8DA0AA400C8} = {A8FBB637-BB67-45CD-9883-E203FE66EC13} {87BCF68D-05D6-4E40-9550-AE74C37AFA89} = {A8FBB637-BB67-45CD-9883-E203FE66EC13} {EBF60C41-86FD-4FFC-853A-72591179EDB8} = {7154BBDA-0E15-4967-B3B9-7623F914F697} - {890E5435-4BAB-4059-954B-788702F01BF3} = {7154BBDA-0E15-4967-B3B9-7623F914F697} {715CE4E1-EF89-411D-BA91-8227129D5704} = {7154BBDA-0E15-4967-B3B9-7623F914F697} - {F7E9AC25-E5CE-42C0-AC38-1D597E5DECE7} = {7154BBDA-0E15-4967-B3B9-7623F914F697} - {9C9AE37B-1FBB-46B2-9718-C5701F5C7704} = {CF41ABBD-2DDE-44D3-A5C8-85846812AE23} {1AA78CE3-4FB5-4A85-B38C-320A5C8BDC8D} = {7154BBDA-0E15-4967-B3B9-7623F914F697} {2F8EC051-F3A4-43C0-928C-734423FBF1D0} = {7154BBDA-0E15-4967-B3B9-7623F914F697} {0FFC84D3-DC23-433C-8675-500FD96CCD73} = {7154BBDA-0E15-4967-B3B9-7623F914F697} {B55BE51C-E261-4A23-9ACB-2FE7FFF89E22} = {7154BBDA-0E15-4967-B3B9-7623F914F697} {7571880D-0FA2-43A3-BA08-A0F68B590253} = {7154BBDA-0E15-4967-B3B9-7623F914F697} {A557F95D-A084-47BE-8EF8-C5E42AD8C233} = {7154BBDA-0E15-4967-B3B9-7623F914F697} - {43F378EA-35C8-494E-9685-B00EBBA2A7A3} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} - {6EB1DC55-1D8C-4D5C-AD5C-5C4E74B93FF7} = {A8FBB637-BB67-45CD-9883-E203FE66EC13} - {943D1525-5047-4E66-8E5A-D09930F8B339} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} - {AF9847A8-8F2E-4F1F-8DF6-B311BAE0407A} = {A8FBB637-BB67-45CD-9883-E203FE66EC13} {65ACD945-5A8A-419D-B9FB-8DFD03C532F4} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} {AB5F0D3A-EE49-48ED-848F-B288D837CA77} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} {9353CA95-7C8D-44BC-B599-FCD195C4722E} = {A8FBB637-BB67-45CD-9883-E203FE66EC13} {E5719ABE-6807-49C9-9E7A-0997FF4A5365} = {87DAFAF8-C745-44F0-BC8A-503BF4A97082} {C02A268C-500B-4C3E-81E7-4E40A7AEB323} = {A8FBB637-BB67-45CD-9883-E203FE66EC13} + {F6CEF86A-612E-4361-B46E-E5349EF478CE} = {CF41ABBD-2DDE-44D3-A5C8-85846812AE23} + {720DD721-A108-488A-83CA-8DACF2D6D506} = {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} + {F37568EB-B67A-4882-8DE8-E00D135CC73D} = {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} + {015148EF-FF69-42AC-88C8-2CDEBCAB927E} = {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} + {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} = {66A8A447-CECE-4C0D-9F8E-8EC790A141F3} + {86D67AC8-6E53-4315-8610-59A85C1C35C7} = {69028465-228C-475F-A932-A161B6F17B75} + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F} = {86D67AC8-6E53-4315-8610-59A85C1C35C7} + {DAF37117-66D8-45B7-A3F8-D9DC897CDF1C} = {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} + {159C82C4-1C3C-4956-A0FE-AACF10388B34} = {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} + {247C0EC4-67A7-42EE-BFA7-B3C60905A6C9} = {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} + {C5AF22AA-649C-4D88-A498-F342B529BE48} = {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} + {5FBD1B51-DC20-4594-99AB-4C978DC65BD4} = {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} + {A4B54A9B-3C3A-491B-BD29-62C8D230CBDE} = {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} + {2723A591-AD5B-40B2-8D04-262CEBB20B33} = {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176} = {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6} = {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} + {847E4CEC-590D-4209-954B-0DBCB727DF64} = {156DD27D-5857-45B7-9511-0D8E7FE4EAE3} EndGlobalSection EndGlobal diff --git a/cgmanifest.json b/cgmanifest.json index 1b7b22ebb..b16b00c74 100644 --- a/cgmanifest.json +++ b/cgmanifest.json @@ -14,7 +14,7 @@ "Type": "Pod", "Pod": { "Name": "AppAuth", - "Version": "1.3.0" + "Version": "1.4.0" } } }, @@ -32,7 +32,7 @@ "type": "Pod", "Pod": { "name": "FirebaseABTesting", - "Version": "4.2.0" + "Version": "8.10.0" } } }, @@ -41,7 +41,7 @@ "type": "Pod", "Pod": { "name": "FirebaseAnalytics", - "Version": "6.9.0" + "Version": "8.10.0" } } }, @@ -50,7 +50,7 @@ "type": "Pod", "Pod": { "name": "FirebaseAuth", - "Version": "6.9.2" + "Version": "8.10.0" } } }, @@ -59,7 +59,7 @@ "type": "Pod", "Pod": { "name": "FirebaseCore", - "Version": "6.10.4" + "Version": "8.10.0" } } }, @@ -68,7 +68,7 @@ "type": "Pod", "Pod": { "name": "FirebaseCoreDiagnostics", - "Version": "1.6.0" + "Version": "8.10.0" } } }, @@ -77,7 +77,7 @@ "type": "Pod", "Pod": { "name": "FirebaseCrashlytics", - "Version": "4.6.2" + "Version": "8.10.0" } } }, @@ -86,7 +86,7 @@ "type": "Pod", "Pod": { "name": "FirebaseDatabase", - "Version": "6.6.0" + "Version": "8.10.0" } } }, @@ -95,7 +95,7 @@ "type": "Pod", "Pod": { "name": "FirebaseDynamicLinks", - "Version": "4.3.1" + "Version": "8.10.0" } } }, @@ -104,7 +104,7 @@ "type": "Pod", "Pod": { "name": "FirebaseFirestore", - "Version": "1.19.0" + "Version": "8.10.0" } } }, @@ -113,7 +113,7 @@ "type": "Pod", "Pod": { "name": "FirebaseFunctions", - "Version": "2.9.0" + "Version": "8.10.0" } } }, @@ -122,7 +122,7 @@ "type": "Pod", "Pod": { "name": "FirebaseInAppMessaging", - "Version": "0.24.0" + "Version": "8.10.0-beta" } } }, @@ -131,7 +131,7 @@ "type": "Pod", "Pod": { "name": "FirebaseInstallations", - "Version": "1.7.0" + "Version": "8.10.0" } } }, @@ -139,8 +139,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseInstanceID", - "Version": "4.8.0" + "name": "FirebaseMessaging", + "Version": "8.10.0" } } }, @@ -148,8 +148,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMessaging", - "Version": "4.7.1" + "name": "FirebasePerformance", + "Version": "8.10.0" } } }, @@ -157,8 +157,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMLCommon", - "Version": "0.21.0" + "name": "FirebaseRemoteConfig", + "Version": "8.10.0" } } }, @@ -166,8 +166,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMLModelInterpreter", - "Version": "0.21.0" + "name": "FirebaseStorage", + "Version": "8.10.0" } } }, @@ -175,8 +175,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMLNaturalLanguage", - "Version": "0.18.0" + "name": "FirebaseAppDistribution", + "Version": "8.10.0-beta" } } }, @@ -184,8 +184,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMLNLLanguageID", - "Version": "0.18.0" + "name": "FirebaseAppCheck", + "Version": "8.10.0-beta" } } }, @@ -193,8 +193,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMLNLSmartReply", - "Version": "0.18.0" + "name": "GoogleAPIClientForREST", + "Version": "1.6.0" } } }, @@ -202,8 +202,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMLNLTranslate", - "Version": "0.19.0" + "name": "GoogleAppMeasurement", + "Version": "8.10.0" } } }, @@ -211,8 +211,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMLVision", - "Version": "0.21.0" + "name": "GoogleAnalytics", + "Version": "3.20.0" } } }, @@ -220,8 +220,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMLVisionAutoML", - "Version": "0.21.0" + "name": "google-cast-sdk", + "Version": "4.7.0" } } }, @@ -229,8 +229,17 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMLVisionBarcodeModel", - "Version": "0.21.0" + "name": "GoogleDataTransport", + "Version": "9.1.2" + } + } + }, + { + "component": { + "type": "Pod", + "Pod": { + "name": "GoogleIPhoneUtilities", + "Version": "1.2.0" } } }, @@ -238,8 +247,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMLVisionFaceModel", - "Version": "0.21.0" + "name": "GoogleMaps", + "Version": "6.0.1" } } }, @@ -247,8 +256,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMLVisionLabelModel", - "Version": "0.21.0" + "name": "Google-Mobile-Ads-SDK", + "Version": "8.13.0" } } }, @@ -256,8 +265,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMLVisionObjectDetection", - "Version": "0.21.0" + "name": "GooglePlaces", + "Version": "6.0.0" } } }, @@ -265,8 +274,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseMLVisionTextModel", - "Version": "0.21.0" + "name": "GoogleSignIn", + "Version": "5.0.2" } } }, @@ -274,8 +283,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebasePerformance", - "Version": "3.3.0" + "name": "GoogleTagManager", + "Version": "7.4.0" } } }, @@ -283,8 +292,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseRemoteConfig", - "Version": "4.9.1" + "name": "GoogleToolboxForMac", + "Version": "2.3.2" } } }, @@ -292,8 +301,8 @@ "component": { "type": "Pod", "Pod": { - "name": "FirebaseStorage", - "Version": "3.9.1" + "name": "GoogleUserMessagingPlatform", + "Version": "1.1.0" } } }, @@ -301,8 +310,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GoogleAnalytics", - "Version": "3.17.0" + "name": "GoogleUtilities", + "Version": "7.6.0" } } }, @@ -310,8 +319,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GoogleAPIClientForREST", - "Version": "1.4.3" + "name": "GoogleUtilitiesComponents", + "Version": "1.0.0" } } }, @@ -319,8 +328,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GoogleAppIndexing", - "Version": "2.0.3" + "name": "gRPC-C++", + "Version": "1.28.2" } } }, @@ -328,8 +337,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GoogleAppMeasurement", - "Version": "6.9.0" + "name": "gRPC-Core", + "Version": "1.28.2" } } }, @@ -337,8 +346,8 @@ "component": { "type": "Pod", "Pod": { - "name": "google-cast-sdk", - "Version": "4.4.6" + "name": "GTMAppAuth", + "Version": "1.2.1" } } }, @@ -346,8 +355,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GoogleDataTransport", - "Version": "7.5.1" + "name": "GTMSessionFetcher", + "Version": "1.7.0" } } }, @@ -355,8 +364,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GGLInstanceID", - "Version": "1.2.1" + "name": "leveldb-library", + "Version": "1.22.1" } } }, @@ -364,8 +373,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GoogleIPhoneUtilities", - "Version": "1.2.0" + "name": "nanopb", + "Version": "2.30908.0" } } }, @@ -373,8 +382,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GoogleMaps", - "Version": "3.9.0" + "name": "PromisesObjC", + "Version": "2.0.0" } } }, @@ -382,8 +391,8 @@ "component": { "type": "Pod", "Pod": { - "name": "Google-Mobile-Ads-SDK", - "Version": "7.66.0" + "name": "Protobuf", + "Version": "3.15.8" } } }, @@ -391,8 +400,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GooglePlaces", - "Version": "3.9.0" + "name": "TensorFlowLiteC", + "Version": "2.3.0" } } }, @@ -400,8 +409,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GoogleSignIn", - "Version": "5.0.2" + "name": "MLKitCommon", + "Version": "5.0.0" } } }, @@ -409,8 +418,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GoogleTagManager", - "Version": "7.1.2" + "name": "MLKitVision", + "Version": "3.0.0" } } }, @@ -418,8 +427,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GoogleToolboxForMac", - "Version": "2.2.2" + "name": "MLImage", + "Version": "1.0.0-beta2" } } }, @@ -427,8 +436,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GoogleUserMessagingPlatform", - "Version": "1.1.0" + "name": "MLKitMDD", + "Version": "3.0.0" } } }, @@ -436,8 +445,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GoogleUtilities", - "Version": "6.7.2" + "name": "SSZipArchive", + "Version": "2.4.2" } } }, @@ -445,8 +454,8 @@ "component": { "type": "Pod", "Pod": { - "name": "gRPC-C++", - "Version": "1.28.2" + "name": "MLKitTextRecognitionCommon", + "Version": "1.0.0-beta3" } } }, @@ -454,8 +463,8 @@ "component": { "type": "Pod", "Pod": { - "name": "gRPC-Core", - "Version": "1.28.2" + "name": "MLKitTextRecognition", + "Version": "1.4.0-beta3" } } }, @@ -463,8 +472,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GTMAppAuth", - "Version": "1.0.0" + "name": "MLKitTextRecognitionChinese", + "Version": "1.0.0-beta3" } } }, @@ -472,8 +481,8 @@ "component": { "type": "Pod", "Pod": { - "name": "GTMSessionFetcher", - "Version": "1.4.0" + "name": "MLKitTextRecognitionDevanagari", + "Version": "1.0.0-beta3" } } }, @@ -481,8 +490,8 @@ "component": { "type": "Pod", "Pod": { - "name": "leveldb-library", - "Version": "1.22.0" + "name": "MLKitTextRecognitionJapanese", + "Version": "1.0.0-beta3" } } }, @@ -490,8 +499,8 @@ "component": { "type": "Pod", "Pod": { - "name": "nanopb", - "Version": "1.30906.0" + "name": "MLKitTextRecognitionKorean", + "Version": "1.0.0-beta3" } } }, @@ -499,8 +508,8 @@ "component": { "type": "Pod", "Pod": { - "name": "PromisesObjC", - "Version": "1.2.10" + "name": "MLKitFaceDetection", + "Version": "1.5.0" } } }, @@ -508,8 +517,8 @@ "component": { "type": "Pod", "Pod": { - "name": "Protobuf", - "Version": "3.13.0" + "name": "MLKitBarcodeScanning", + "Version": "1.6.0" } } }, @@ -517,8 +526,8 @@ "component": { "type": "Pod", "Pod": { - "name": "TensorFlowLiteC", - "Version": "2.3.0" + "name": "MLKitDigitalInkRecognition", + "Version": "1.5.0" } } }, @@ -526,8 +535,35 @@ "component": { "type": "Pod", "Pod": { - "name": "TensorFlowLiteObjC", - "Version": "2.3.0" + "name": "MLKitVisionKit", + "Version": "4.0.0" + } + } + }, + { + "component": { + "type": "Pod", + "Pod": { + "name": "MLKitImageLabelingCommon", + "Version": "3.0.0" + } + } + }, + { + "component": { + "type": "Pod", + "Pod": { + "name": "MLKitObjectDetectionCommon", + "Version": "3.0.0" + } + } + }, + { + "component": { + "type": "Pod", + "Pod": { + "name": "MLKitImageLabeling", + "Version": "1.5.0" } } }, @@ -535,8 +571,8 @@ "component": { "type": "Pod", "Pod": { - "name": "Google", - "Version": "3.1.0" + "name": "MLKitObjectDetection", + "Version": "1.5.0" } } } diff --git a/common.cake b/common.cake index 9f9b2ab63..81b456b48 100644 --- a/common.cake +++ b/common.cake @@ -99,8 +99,11 @@ void BuildSdkOnPodfile (Artifact artifact) if (artifact.PodSpecs?.Length == 0) return; - var baseArch = Platform.iOSArmV7; - var platforms = new [] { baseArch, Platform.iOSArm64, Platform.iOSSimulator64, Platform.iOSSimulator }; + var baseArch = Platform.iOSArmV7; + // from iOS 11 only 64-bit builds are supported + var platforms = Version.TryParse(GetMinimunSupportedVersion(artifact), out var iosVer) && iosVer.Major > 10 + ? new [] { Platform.iOSArm64, Platform.iOSSimulator64 } + : new [] { baseArch, Platform.iOSArm64, Platform.iOSSimulator64, Platform.iOSSimulator }; var podsProject = "./Pods/Pods.xcodeproj"; var workingDirectory = (DirectoryPath)$"./externals/{artifact.Id}"; diff --git a/components.cake b/components.cake index 0ce25c340..d3343cdce 100644 --- a/components.cake +++ b/components.cake @@ -1,38 +1,47 @@ // Firebase artifacts available to be built. These artifacts generate NuGets. -Artifact FIREBASE_AB_TESTING_ARTIFACT = new Artifact ("Firebase.ABTesting", "4.2.0", "8.0", ComponentGroup.Firebase, csprojName: "ABTesting"); -Artifact FIREBASE_AD_MOB_ARTIFACT = new Artifact ("Firebase.AdMob", "7.66.0", "8.0", ComponentGroup.Firebase, csprojName: "AdMob"); -Artifact FIREBASE_ANALYTICS_ARTIFACT = new Artifact ("Firebase.Analytics", "6.9.0", "8.0", ComponentGroup.Firebase, csprojName: "Analytics"); -Artifact FIREBASE_AUTH_ARTIFACT = new Artifact ("Firebase.Auth", "6.9.2", "8.0", ComponentGroup.Firebase, csprojName: "Auth"); -Artifact FIREBASE_CLOUD_FIRESTORE_ARTIFACT = new Artifact ("Firebase.CloudFirestore", "1.19.0", "8.0", ComponentGroup.Firebase, csprojName: "CloudFirestore"); -Artifact FIREBASE_CLOUD_FUNCTIONS_ARTIFACT = new Artifact ("Firebase.CloudFunctions", "2.9.0", "8.0", ComponentGroup.Firebase, csprojName: "CloudFunctions"); -Artifact FIREBASE_CLOUD_MESSAGING_ARTIFACT = new Artifact ("Firebase.CloudMessaging", "4.7.1", "8.0", ComponentGroup.Firebase, csprojName: "CloudMessaging"); -Artifact FIREBASE_CORE_ARTIFACT = new Artifact ("Firebase.Core", "6.10.4", "8.0", ComponentGroup.Firebase, csprojName: "Core"); -Artifact FIREBASE_CRASHLYTICS_ARTIFACT = new Artifact ("Firebase.Crashlytics", "4.6.2", "8.0", ComponentGroup.Firebase, csprojName: "Crashlytics"); -Artifact FIREBASE_DATABASE_ARTIFACT = new Artifact ("Firebase.Database", "6.6.0", "8.0", ComponentGroup.Firebase, csprojName: "Database"); -Artifact FIREBASE_DYNAMIC_LINKS_ARTIFACT = new Artifact ("Firebase.DynamicLinks", "4.3.1", "8.0", ComponentGroup.Firebase, csprojName: "DynamicLinks"); -Artifact FIREBASE_IN_APP_MESSAGING_ARTIFACT = new Artifact ("Firebase.InAppMessaging", "0.24.0", "9.0", ComponentGroup.Firebase, csprojName: "InAppMessaging"); -Artifact FIREBASE_INSTALLATIONS_ARTIFACT = new Artifact ("Firebase.Installations", "1.7.0", "8.0", ComponentGroup.Firebase, csprojName: "Installations"); -Artifact FIREBASE_INSTANCE_ID_ARTIFACT = new Artifact ("Firebase.InstanceID", "4.8.0", "8.0", ComponentGroup.Firebase, csprojName: "InstanceID"); -Artifact FIREBASE_MLKIT_ARTIFACT = new Artifact ("Firebase.MLKit", "0.21.0", "9.0", ComponentGroup.Firebase, csprojName: "MLKit"); -Artifact FIREBASE_MLKIT_COMMON_ARTIFACT = new Artifact ("Firebase.MLKit.Common", "0.21.0", "9.0", ComponentGroup.Firebase, csprojName: "MLKit.Common"); -Artifact FIREBASE_MLKIT_MODEL_INTERPRETER_ARTIFACT = new Artifact ("Firebase.MLKit.ModelInterpreter", "0.21.0", "9.0", ComponentGroup.Firebase, csprojName: "MLKit.ModelInterpreter"); -Artifact FIREBASE_MLKIT_NATURAL_LANGUAGE_ARTIFACT = new Artifact ("Firebase.MLKit.NaturalLanguage", "0.18.0", "9.0", ComponentGroup.Firebase, csprojName: "MLKit.NaturalLanguage"); -Artifact FIREBASE_MLKIT_VISION_ARTIFACT = new Artifact ("Firebase.MLKit.Vision", "0.21.0", "9.0", ComponentGroup.Firebase, csprojName: "MLKit.Vision"); -Artifact FIREBASE_PERFORMANCE_MONITORING_ARTIFACT = new Artifact ("Firebase.PerformanceMonitoring", "3.3.0", "8.0", ComponentGroup.Firebase, csprojName: "PerformanceMonitoring"); -Artifact FIREBASE_REMOTE_CONFIG_ARTIFACT = new Artifact ("Firebase.RemoteConfig", "4.9.1", "8.0", ComponentGroup.Firebase, csprojName: "RemoteConfig"); -Artifact FIREBASE_STORAGE_ARTIFACT = new Artifact ("Firebase.Storage", "3.9.1", "8.0", ComponentGroup.Firebase, csprojName: "Storage"); +Artifact FIREBASE_AB_TESTING_ARTIFACT = new Artifact ("Firebase.ABTesting", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "ABTesting"); +Artifact FIREBASE_AD_MOB_ARTIFACT = new Artifact ("Firebase.AdMob", "8.13.0", "10.0", ComponentGroup.Firebase, csprojName: "AdMob"); +Artifact FIREBASE_ANALYTICS_ARTIFACT = new Artifact ("Firebase.Analytics", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "Analytics"); +Artifact FIREBASE_AUTH_ARTIFACT = new Artifact ("Firebase.Auth", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "Auth"); +Artifact FIREBASE_CLOUD_FIRESTORE_ARTIFACT = new Artifact ("Firebase.CloudFirestore", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "CloudFirestore"); +Artifact FIREBASE_CLOUD_FUNCTIONS_ARTIFACT = new Artifact ("Firebase.CloudFunctions", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "CloudFunctions"); +Artifact FIREBASE_CLOUD_MESSAGING_ARTIFACT = new Artifact ("Firebase.CloudMessaging", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "CloudMessaging"); +Artifact FIREBASE_CORE_ARTIFACT = new Artifact ("Firebase.Core", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "Core"); +Artifact FIREBASE_CRASHLYTICS_ARTIFACT = new Artifact ("Firebase.Crashlytics", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "Crashlytics"); +Artifact FIREBASE_DATABASE_ARTIFACT = new Artifact ("Firebase.Database", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "Database"); +Artifact FIREBASE_DYNAMIC_LINKS_ARTIFACT = new Artifact ("Firebase.DynamicLinks", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "DynamicLinks"); +Artifact FIREBASE_IN_APP_MESSAGING_ARTIFACT = new Artifact ("Firebase.InAppMessaging", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "InAppMessaging"); +Artifact FIREBASE_INSTALLATIONS_ARTIFACT = new Artifact ("Firebase.Installations", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "Installations"); +Artifact FIREBASE_PERFORMANCE_MONITORING_ARTIFACT = new Artifact ("Firebase.PerformanceMonitoring", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "PerformanceMonitoring"); +Artifact FIREBASE_REMOTE_CONFIG_ARTIFACT = new Artifact ("Firebase.RemoteConfig", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "RemoteConfig"); +Artifact FIREBASE_STORAGE_ARTIFACT = new Artifact ("Firebase.Storage", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "Storage"); +// Artifact FIREBASE_APP_DISTRIBUTION_ARTIFACT = new Artifact ("Firebase.AppDistribution", "8.10.0", "10.0", ComponentGroup.Firebase, csprojName: "AppDistribution"); +// Artifact FIREBASE_APP_CHECK_ARTIFACT = new Artifact ("Firebase.AppCheck", "8.10.0", "11.0", ComponentGroup.Firebase, csprojName: "AppCheck"); // Google artifacts available to be built. These artifacts generate NuGets. -Artifact GOOGLE_ANALYTICS_ARTIFACT = new Artifact ("Google.Analytics", "3.17.0.6", "5.0", ComponentGroup.Google, csprojName: "Analytics"); -Artifact GOOGLE_APP_INDEXING_ARTIFACT = new Artifact ("Google.AppIndexing", "2.0.3.8", "7.0", ComponentGroup.Google, csprojName: "AppIndexing"); -Artifact GOOGLE_CAST_ARTIFACT = new Artifact ("Google.Cast", "4.4.6.1", "9.0", ComponentGroup.Google, csprojName: "Cast"); -Artifact GOOGLE_CORE_ARTIFACT = new Artifact ("Google.Core", "3.1.0.4", "7.0", ComponentGroup.Google, csprojName: "Core"); -Artifact GOOGLE_INSTANCE_ID_ARTIFACT = new Artifact ("Google.InstanceID", "1.2.1.18", "7.0", ComponentGroup.Google, csprojName: "InstanceID"); -Artifact GOOGLE_MAPS_ARTIFACT = new Artifact ("Google.Maps", "3.9.0.0", "9.0", ComponentGroup.Google, csprojName: "Maps"); -Artifact GOOGLE_MOBILE_ADS_ARTIFACT = new Artifact ("Google.MobileAds", "7.66.0", "9.0", ComponentGroup.Google, csprojName: "MobileAds"); -Artifact GOOGLE_PLACES_ARTIFACT = new Artifact ("Google.Places", "3.9.0.0", "9.0", ComponentGroup.Google, csprojName: "Places"); -Artifact GOOGLE_SIGN_IN_ARTIFACT = new Artifact ("Google.SignIn", "5.0.2.1", "8.0", ComponentGroup.Google, csprojName: "SignIn"); -Artifact GOOGLE_TAG_MANAGER_ARTIFACT = new Artifact ("Google.TagManager", "7.1.2.3", "8.0", ComponentGroup.Google, csprojName: "TagManager"); +Artifact GOOGLE_ANALYTICS_ARTIFACT = new Artifact ("Google.Analytics", "3.20.0.0", "9.0", ComponentGroup.Google, csprojName: "Analytics"); +Artifact GOOGLE_CAST_ARTIFACT = new Artifact ("Google.Cast", "4.7.0.0", "12.0", ComponentGroup.Google, csprojName: "Cast"); +Artifact GOOGLE_MAPS_ARTIFACT = new Artifact ("Google.Maps", "5.2.0.0", "12.0", ComponentGroup.Google, csprojName: "Maps"); +Artifact GOOGLE_MOBILE_ADS_ARTIFACT = new Artifact ("Google.MobileAds", "8.13.0.0", "10.0", ComponentGroup.Google, csprojName: "MobileAds"); +Artifact GOOGLE_UMP_ARTIFACT = new Artifact ("Google.UserMessagingPlatform", "1.1.0.0", "10.0", ComponentGroup.Google, csprojName: "UserMessagingPlatform"); +Artifact GOOGLE_PLACES_ARTIFACT = new Artifact ("Google.Places", "5.1.0.0", "12.0", ComponentGroup.Google, csprojName: "Places"); +Artifact GOOGLE_SIGN_IN_ARTIFACT = new Artifact ("Google.SignIn", "5.0.2.2", "10.0", ComponentGroup.Google, csprojName: "SignIn"); +Artifact GOOGLE_TAG_MANAGER_ARTIFACT = new Artifact ("Google.TagManager", "7.4.0.0", "10.0", ComponentGroup.Google, csprojName: "TagManager"); + +// MLKit artifacts available to be built. These artifacts generate NuGets. +Artifact MLKIT_CORE_ARTIFACT = new Artifact ("MLKit.Core", "5.0.0", "10.0", ComponentGroup.MLKit, csprojName: "Core"); +Artifact MLKIT_TEXT_RECOGNITION = new Artifact ("MLKit.TextRecognition", "1.0.0.3", "10.0", ComponentGroup.MLKit, csprojName: "TextRecognition"); +Artifact MLKIT_VISION = new Artifact ("MLKit.Vision", "3.0.0", "10.0", ComponentGroup.MLKit, csprojName: "Vision"); +Artifact MLKIT_TEXT_RECOGNITION_LATIN = new Artifact ("MLKit.TextRecognition.Latin", "1.4.0.3", "10.0", ComponentGroup.MLKit, csprojName: "TextRecognitionLatin"); +Artifact MLKIT_TEXT_RECOGNITION_CHINESE = new Artifact ("MLKit.TextRecognition.Chinese", "1.0.0.3", "10.0", ComponentGroup.MLKit, csprojName: "TextRecognitionChinese"); +Artifact MLKIT_TEXT_RECOGNITION_DEVANAGARI = new Artifact ("MLKit.TextRecognition.Devanagari", "1.0.0.3", "10.0", ComponentGroup.MLKit, csprojName: "TextRecognitionDevanagari"); +Artifact MLKIT_TEXT_RECOGNITION_JAPANESE = new Artifact ("MLKit.TextRecognition.Japanese", "1.0.0.3", "10.0", ComponentGroup.MLKit, csprojName: "TextRecognitionJapanese"); +Artifact MLKIT_TEXT_RECOGNITION_KOREAN = new Artifact ("MLKit.TextRecognition.Korean", "1.0.0.3", "10.0", ComponentGroup.MLKit, csprojName: "TextRecognitionKorean"); +Artifact MLKIT_FACE_DETECTION = new Artifact ("MLKit.FaceDetection", "1.5.0", "10.0", ComponentGroup.MLKit, csprojName: "FaceDetection"); +Artifact MLKIT_BARCODE_SCANNING = new Artifact ("MLKit.BarcodeScanning", "1.6.0", "10.0", ComponentGroup.MLKit, csprojName: "BarcodeScanning"); +Artifact MLKIT_DIGITAL_INK_RECOGNITION = new Artifact ("MLKit.DigitalInkRecognition", "1.5.0", "10.0", ComponentGroup.MLKit, csprojName: "DigitalInkRecognition"); +Artifact MLKIT_IMAGE_LABELING = new Artifact ("MLKit.ImageLabeling", "1.5.0", "10.0", ComponentGroup.MLKit, csprojName: "ImageLabeling"); +Artifact MLKIT_OBJECT_DETECTION = new Artifact ("MLKit.ObjectDetection", "1.5.0", "10.0", ComponentGroup.MLKit, csprojName: "ObjectDetection"); var ARTIFACTS = new Dictionary { { "Firebase.ABTesting", FIREBASE_AB_TESTING_ARTIFACT }, @@ -48,26 +57,33 @@ var ARTIFACTS = new Dictionary { { "Firebase.DynamicLinks", FIREBASE_DYNAMIC_LINKS_ARTIFACT }, { "Firebase.InAppMessaging", FIREBASE_IN_APP_MESSAGING_ARTIFACT }, { "Firebase.Installations", FIREBASE_INSTALLATIONS_ARTIFACT }, - { "Firebase.InstanceID", FIREBASE_INSTANCE_ID_ARTIFACT }, - { "Firebase.MLKit", FIREBASE_MLKIT_ARTIFACT }, - { "Firebase.MLKit.Common", FIREBASE_MLKIT_COMMON_ARTIFACT }, - { "Firebase.MLKit.ModelInterpreter", FIREBASE_MLKIT_MODEL_INTERPRETER_ARTIFACT }, - { "Firebase.MLKit.NaturalLanguage", FIREBASE_MLKIT_NATURAL_LANGUAGE_ARTIFACT }, - { "Firebase.MLKit.Vision", FIREBASE_MLKIT_VISION_ARTIFACT }, { "Firebase.PerformanceMonitoring", FIREBASE_PERFORMANCE_MONITORING_ARTIFACT }, { "Firebase.RemoteConfig", FIREBASE_REMOTE_CONFIG_ARTIFACT }, { "Firebase.Storage", FIREBASE_STORAGE_ARTIFACT }, + // { "Firebase.AppDistribution", FIREBASE_APP_DISTRIBUTION_ARTIFACT }, + // { "Firebase.AppCheck", FIREBASE_APP_CHECK_ARTIFACT }, + + { "Google.Analytics", GOOGLE_ANALYTICS_ARTIFACT }, + { "Google.Cast", GOOGLE_CAST_ARTIFACT }, + { "Google.Maps", GOOGLE_MAPS_ARTIFACT }, + { "Google.MobileAds", GOOGLE_MOBILE_ADS_ARTIFACT }, + { "Google.UserMessagingPlatform", GOOGLE_UMP_ARTIFACT }, + { "Google.Places", GOOGLE_PLACES_ARTIFACT }, + { "Google.SignIn", GOOGLE_SIGN_IN_ARTIFACT }, + { "Google.TagManager", GOOGLE_TAG_MANAGER_ARTIFACT }, - { "Google.Analytics", GOOGLE_ANALYTICS_ARTIFACT }, - { "Google.Appindexing", GOOGLE_APP_INDEXING_ARTIFACT }, - { "Google.Cast", GOOGLE_CAST_ARTIFACT }, - { "Google.Core", GOOGLE_CORE_ARTIFACT }, - { "Google.InstanceID", GOOGLE_INSTANCE_ID_ARTIFACT }, - { "Google.Maps", GOOGLE_MAPS_ARTIFACT }, - { "Google.MobileAds", GOOGLE_MOBILE_ADS_ARTIFACT }, - { "Google.Places", GOOGLE_PLACES_ARTIFACT }, - { "Google.SignIn", GOOGLE_SIGN_IN_ARTIFACT }, - { "Google.TagManager", GOOGLE_TAG_MANAGER_ARTIFACT }, + { "MLKit.Core", MLKIT_CORE_ARTIFACT }, + { "MLKit.TextRecognition", MLKIT_TEXT_RECOGNITION }, + { "MLKit.Vision", MLKIT_VISION }, + { "MLKit.TextRecognition.Latin", MLKIT_TEXT_RECOGNITION_LATIN }, + { "MLKit.TextRecognition.Chinese", MLKIT_TEXT_RECOGNITION_CHINESE }, + { "MLKit.TextRecognition.Devanagari", MLKIT_TEXT_RECOGNITION_DEVANAGARI }, + { "MLKit.TextRecognition.Japanese", MLKIT_TEXT_RECOGNITION_JAPANESE }, + { "MLKit.TextRecognition.Korean", MLKIT_TEXT_RECOGNITION_KOREAN }, + { "MLKit.FaceDetection", MLKIT_FACE_DETECTION }, + { "MLKit.BarcodeScanning", MLKIT_BARCODE_SCANNING }, + { "MLKit.ImageLabeling", MLKIT_IMAGE_LABELING }, + { "MLKit.ObjectDetection", MLKIT_OBJECT_DETECTION }, }; void SetArtifactsDependencies () @@ -78,156 +94,188 @@ void SetArtifactsDependencies () FIREBASE_AUTH_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, /* Needed for sample */ GOOGLE_SIGN_IN_ARTIFACT }; FIREBASE_CLOUD_FIRESTORE_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, /* Needed for sample */ FIREBASE_AUTH_ARTIFACT }; FIREBASE_CLOUD_FUNCTIONS_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT}; - FIREBASE_CLOUD_MESSAGING_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT, FIREBASE_INSTANCE_ID_ARTIFACT }; + FIREBASE_CLOUD_MESSAGING_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT }; FIREBASE_CORE_ARTIFACT.Dependencies = null; FIREBASE_CRASHLYTICS_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT }; FIREBASE_DATABASE_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, /* Needed for sample */ FIREBASE_AUTH_ARTIFACT }; FIREBASE_DYNAMIC_LINKS_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT }; FIREBASE_IN_APP_MESSAGING_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT, FIREBASE_AB_TESTING_ARTIFACT }; FIREBASE_INSTALLATIONS_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT }; - FIREBASE_INSTANCE_ID_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT }; - FIREBASE_MLKIT_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT, FIREBASE_INSTANCE_ID_ARTIFACT, FIREBASE_AB_TESTING_ARTIFACT, FIREBASE_REMOTE_CONFIG_ARTIFACT, FIREBASE_MLKIT_COMMON_ARTIFACT, FIREBASE_MLKIT_MODEL_INTERPRETER_ARTIFACT, FIREBASE_MLKIT_NATURAL_LANGUAGE_ARTIFACT, FIREBASE_MLKIT_VISION_ARTIFACT }; - FIREBASE_MLKIT_COMMON_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT, FIREBASE_INSTANCE_ID_ARTIFACT }; - FIREBASE_MLKIT_MODEL_INTERPRETER_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT, FIREBASE_INSTANCE_ID_ARTIFACT, FIREBASE_MLKIT_COMMON_ARTIFACT }; - FIREBASE_MLKIT_NATURAL_LANGUAGE_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT, FIREBASE_INSTANCE_ID_ARTIFACT, FIREBASE_MLKIT_COMMON_ARTIFACT, FIREBASE_AB_TESTING_ARTIFACT, FIREBASE_REMOTE_CONFIG_ARTIFACT }; - FIREBASE_MLKIT_VISION_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT, FIREBASE_INSTANCE_ID_ARTIFACT, FIREBASE_MLKIT_COMMON_ARTIFACT }; - FIREBASE_PERFORMANCE_MONITORING_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT, FIREBASE_INSTANCE_ID_ARTIFACT, FIREBASE_AB_TESTING_ARTIFACT, FIREBASE_REMOTE_CONFIG_ARTIFACT }; - FIREBASE_REMOTE_CONFIG_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT, FIREBASE_INSTANCE_ID_ARTIFACT, FIREBASE_AB_TESTING_ARTIFACT }; + FIREBASE_PERFORMANCE_MONITORING_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT, FIREBASE_AB_TESTING_ARTIFACT, FIREBASE_REMOTE_CONFIG_ARTIFACT }; + FIREBASE_REMOTE_CONFIG_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT, FIREBASE_AB_TESTING_ARTIFACT }; FIREBASE_STORAGE_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_DATABASE_ARTIFACT, /* Needed for sample */ FIREBASE_AUTH_ARTIFACT }; + // FIREBASE_APP_DISTRIBUTION_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT }; + // FIREBASE_APP_CHECK_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT }; GOOGLE_ANALYTICS_ARTIFACT.Dependencies = null; - GOOGLE_APP_INDEXING_ARTIFACT.Dependencies = null; GOOGLE_CAST_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT }; - GOOGLE_CORE_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTANCE_ID_ARTIFACT, FIREBASE_ANALYTICS_ARTIFACT }; - GOOGLE_INSTANCE_ID_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTANCE_ID_ARTIFACT, FIREBASE_ANALYTICS_ARTIFACT, GOOGLE_CORE_ARTIFACT }; GOOGLE_MAPS_ARTIFACT.Dependencies = null; GOOGLE_MOBILE_ADS_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT }; + GOOGLE_UMP_ARTIFACT.Dependencies = null; GOOGLE_PLACES_ARTIFACT.Dependencies = new [] { GOOGLE_MAPS_ARTIFACT }; GOOGLE_SIGN_IN_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT }; - GOOGLE_TAG_MANAGER_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT, FIREBASE_INSTANCE_ID_ARTIFACT, FIREBASE_ANALYTICS_ARTIFACT, GOOGLE_ANALYTICS_ARTIFACT }; + GOOGLE_TAG_MANAGER_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, FIREBASE_INSTALLATIONS_ARTIFACT, FIREBASE_ANALYTICS_ARTIFACT }; + + MLKIT_CORE_ARTIFACT.Dependencies = new [] { FIREBASE_CORE_ARTIFACT }; + MLKIT_TEXT_RECOGNITION.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, MLKIT_CORE_ARTIFACT }; + MLKIT_VISION.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, MLKIT_CORE_ARTIFACT }; + MLKIT_TEXT_RECOGNITION_LATIN.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, MLKIT_CORE_ARTIFACT, MLKIT_TEXT_RECOGNITION }; + MLKIT_TEXT_RECOGNITION_CHINESE.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, MLKIT_CORE_ARTIFACT, MLKIT_TEXT_RECOGNITION }; + MLKIT_TEXT_RECOGNITION_DEVANAGARI.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, MLKIT_CORE_ARTIFACT, MLKIT_TEXT_RECOGNITION }; + MLKIT_TEXT_RECOGNITION_JAPANESE.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, MLKIT_CORE_ARTIFACT, MLKIT_TEXT_RECOGNITION }; + MLKIT_TEXT_RECOGNITION_KOREAN.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, MLKIT_CORE_ARTIFACT, MLKIT_TEXT_RECOGNITION }; + MLKIT_FACE_DETECTION.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, MLKIT_CORE_ARTIFACT }; + MLKIT_BARCODE_SCANNING.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, MLKIT_CORE_ARTIFACT }; + MLKIT_DIGITAL_INK_RECOGNITION.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, MLKIT_CORE_ARTIFACT }; + MLKIT_IMAGE_LABELING.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, MLKIT_CORE_ARTIFACT, MLKIT_VISION }; + MLKIT_OBJECT_DETECTION.Dependencies = new [] { FIREBASE_CORE_ARTIFACT, MLKIT_CORE_ARTIFACT, MLKIT_VISION }; } void SetArtifactsPodSpecs () { // Firebase components FIREBASE_AB_TESTING_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseABTesting", targetName: "FirebaseABTesting", subSpecs: new [] { "ABTesting" }) + PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseABTesting", targetName: "FirebaseABTesting", subSpecs: new [] { "ABTesting" }) }; FIREBASE_AD_MOB_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", subSpecs: new [] { "AdMob" }) + PodSpec.Create ("Firebase", "8.10.0", subSpecs: new [] { "AdMob" }) }; FIREBASE_ANALYTICS_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", subSpecs: new [] { "Analytics" }) + PodSpec.Create ("Firebase", "8.10.0", subSpecs: new [] { "Analytics" }) }; FIREBASE_AUTH_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseAuth", targetName: "FirebaseAuth", subSpecs: new [] { "Auth" }) + PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseAuth", targetName: "FirebaseAuth", subSpecs: new [] { "Auth" }) }; FIREBASE_CLOUD_FIRESTORE_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseFirestore", targetName: "FirebaseFirestore", subSpecs: new [] { "Firestore" }), + PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseFirestore", targetName: "FirebaseFirestore", subSpecs: new [] { "Firestore" }), PodSpec.Create ("BoringSSL-GRPC", "0.0.7", frameworkSource: FrameworkSource.Pods, frameworkName: "openssl_grpc"), PodSpec.Create ("gRPC-Core", "1.28.2", frameworkSource: FrameworkSource.Pods, frameworkName: "grpc"), PodSpec.Create ("gRPC-C++", "1.28.2", frameworkSource: FrameworkSource.Pods, frameworkName: "grpcpp"), PodSpec.Create ("abseil", "0.20200225.0", frameworkSource: FrameworkSource.Pods, frameworkName: "absl", subSpecs: new [] { "algorithm", "base", "memory", "meta", "strings", "time", "types" }) }; FIREBASE_CLOUD_FUNCTIONS_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseFunctions", targetName: "FirebaseFunctions", subSpecs: new [] { "Functions" }) + PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseFunctions", targetName: "FirebaseFunctions", subSpecs: new [] { "Functions" }) }; FIREBASE_CLOUD_MESSAGING_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseMessaging", targetName: "FirebaseMessaging", subSpecs: new [] { "Messaging" }) + PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseMessaging", targetName: "FirebaseMessaging", subSpecs: new [] { "Messaging" }) }; FIREBASE_CORE_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseCore", targetName: "FirebaseCore", subSpecs: new [] { "CoreOnly" }), - PodSpec.Create ("FirebaseCoreDiagnostics", "1.6.0", frameworkSource: FrameworkSource.Pods), - PodSpec.Create ("GTMSessionFetcher", "1.4.0", frameworkSource: FrameworkSource.Pods, subSpecs: new [] { "Full" }), - PodSpec.Create ("GoogleAPIClientForREST", "1.4.3", frameworkSource: FrameworkSource.Pods, subSpecs: new [] { "Vision" }, useDefaultSubspecs: true), - PodSpec.Create ("GoogleAppMeasurement", "6.9.0"), - PodSpec.Create ("GoogleDataTransport", "7.5.1", frameworkSource: FrameworkSource.Pods), - PodSpec.Create ("PromisesObjC", "1.2.10", frameworkSource: FrameworkSource.Pods, frameworkName: "FBLPromises", targetName: "PromisesObjC"), - PodSpec.Create ("GoogleToolboxForMac", "2.2.2", frameworkSource: FrameworkSource.Pods, subSpecs: new [] { "NSData+zlib", "NSDictionary+URLArguments", "Logger", "StringEncoding", "URLBuilder" }), - PodSpec.Create ("GoogleUtilities", "6.7.2", frameworkSource: FrameworkSource.Pods, subSpecs: new [] { "AppDelegateSwizzler", "Environment", "Logger", "ISASwizzler", "MethodSwizzler", "Network", "NSData+zlib", "Reachability", "UserDefaults", }), - PodSpec.Create ("nanopb", "1.30906.0", frameworkSource: FrameworkSource.Pods), - PodSpec.Create ("leveldb-library", "1.22.0", frameworkSource: FrameworkSource.Pods, frameworkName: "leveldb"), - PodSpec.Create ("Protobuf", "3.13.0", frameworkSource: FrameworkSource.Pods, frameworkName: "Protobuf") + PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseCore", targetName: "FirebaseCore", subSpecs: new [] { "CoreOnly" }), + PodSpec.Create ("FirebaseCoreDiagnostics", "8.10.0", frameworkSource: FrameworkSource.Pods), + PodSpec.Create ("GTMSessionFetcher", "1.7.0", frameworkSource: FrameworkSource.Pods, subSpecs: new [] { "Full" }), + PodSpec.Create ("GoogleAPIClientForREST", "1.6.0", frameworkSource: FrameworkSource.Pods, subSpecs: new [] { "Vision" }, useDefaultSubspecs: true), + PodSpec.Create ("GoogleAppMeasurement", "8.10.0"), + PodSpec.Create ("GoogleDataTransport", "9.1.2", frameworkSource: FrameworkSource.Pods), + PodSpec.Create ("PromisesObjC", "2.0.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FBLPromises", targetName: "PromisesObjC"), + PodSpec.Create ("GoogleToolboxForMac", "2.3.2", frameworkSource: FrameworkSource.Pods, subSpecs: new [] { "NSData+zlib", "NSDictionary+URLArguments", "Logger", "StringEncoding", "URLBuilder" }), + PodSpec.Create ("GoogleUtilities", "7.6.0", frameworkSource: FrameworkSource.Pods, subSpecs: new [] { "AppDelegateSwizzler", "Environment", "Logger", "ISASwizzler", "MethodSwizzler", "Network", "NSData+zlib", "Reachability", "UserDefaults", }), + PodSpec.Create ("GoogleUtilitiesComponents", "1.0.0", frameworkSource: FrameworkSource.Pods), + PodSpec.Create ("nanopb", "2.30908.0", frameworkSource: FrameworkSource.Pods), + PodSpec.Create ("leveldb-library", "1.22.1", frameworkSource: FrameworkSource.Pods, frameworkName: "leveldb"), + PodSpec.Create ("Protobuf", "3.15.8", frameworkSource: FrameworkSource.Pods, frameworkName: "Protobuf") }; FIREBASE_CRASHLYTICS_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseCrashlytics", targetName: "FirebaseCrashlytics", subSpecs: new [] { "Crashlytics" }) + PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseCrashlytics", targetName: "FirebaseCrashlytics", subSpecs: new [] { "Crashlytics" }) }; FIREBASE_DATABASE_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseDatabase", targetName: "FirebaseDatabase", subSpecs: new [] { "Database" }) + PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseDatabase", targetName: "FirebaseDatabase", subSpecs: new [] { "Database" }) }; FIREBASE_DYNAMIC_LINKS_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseDynamicLinks", targetName: "FirebaseDynamicLinks", subSpecs: new [] { "DynamicLinks" }) + PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseDynamicLinks", targetName: "FirebaseDynamicLinks", subSpecs: new [] { "DynamicLinks" }) }; FIREBASE_IN_APP_MESSAGING_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseInAppMessaging", targetName: "FirebaseInAppMessaging", subSpecs: new [] { "InAppMessaging" }) + PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseInAppMessaging", targetName: "FirebaseInAppMessaging", subSpecs: new [] { "InAppMessaging" }) }; FIREBASE_INSTALLATIONS_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("FirebaseInstallations", "1.7.0", frameworkSource: FrameworkSource.Pods) - }; - FIREBASE_INSTANCE_ID_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("FirebaseInstanceID", "4.8.0", frameworkSource: FrameworkSource.Pods) - }; - FIREBASE_MLKIT_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", subSpecs: new [] { "MLCommon", "MLModelInterpreter", "MLNaturalLanguage", "MLVision" }) - }; - FIREBASE_MLKIT_COMMON_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", subSpecs: new [] { "MLCommon" }), - PodSpec.Create ("TensorFlowLiteObjC", "2.3.0", frameworkSource: FrameworkSource.Pods, frameworkName: "TFLTensorFlowLite", targetName: "TensorFlowLiteObjC"), - PodSpec.Create ("TensorFlowLiteC", "2.3.0") - }; - FIREBASE_MLKIT_MODEL_INTERPRETER_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", subSpecs: new [] { "MLModelInterpreter" }) - }; - FIREBASE_MLKIT_NATURAL_LANGUAGE_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", subSpecs: new [] { "MLNaturalLanguage", "MLNLLanguageID", "MLNLSmartReply", "MLNLTranslate" }) - }; - FIREBASE_MLKIT_VISION_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", subSpecs: new [] { "MLVision", "MLVisionAutoML", "MLVisionBarcodeModel", "MLVisionFaceModel", "MLVisionLabelModel", "MLVisionTextModel", "MLVisionObjectDetection" }) + PodSpec.Create ("FirebaseInstallations", "8.10.0", frameworkSource: FrameworkSource.Pods) }; FIREBASE_PERFORMANCE_MONITORING_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", subSpecs: new [] { "Performance" }) + PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebasePerformance", targetName: "FirebasePerformance", subSpecs: new [] { "Performance" }) }; FIREBASE_REMOTE_CONFIG_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseRemoteConfig", targetName: "FirebaseRemoteConfig", subSpecs: new [] { "RemoteConfig" }) + PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseRemoteConfig", targetName: "FirebaseRemoteConfig", subSpecs: new [] { "RemoteConfig" }) }; FIREBASE_STORAGE_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Firebase", "6.34.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseStorage", targetName: "FirebaseStorage", subSpecs: new [] { "Storage" }) - }; + PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseStorage", targetName: "FirebaseStorage", subSpecs: new [] { "Storage" }) + }; + // FIREBASE_APP_DISTRIBUTION_ARTIFACT.PodSpecs = new [] { + // PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseAppDistribution", targetName: "FirebaseAppDistribution", subSpecs: new [] { "AppDistribution" }) + // }; + // FIREBASE_APP_CHECK_ARTIFACT.PodSpecs = new [] { + // PodSpec.Create ("Firebase", "8.10.0", frameworkSource: FrameworkSource.Pods, frameworkName: "FirebaseAppCheck", targetName: "FirebaseAppCheck", subSpecs: new [] { "AppCheck" }) + // }; // Google components GOOGLE_ANALYTICS_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("GoogleAnalytics", "3.17.0") - }; - GOOGLE_APP_INDEXING_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("GoogleAppIndexing", "2.0.3") + PodSpec.Create ("GoogleAnalytics", "3.20.0") }; GOOGLE_CAST_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("google-cast-sdk", "4.4.5") - }; - GOOGLE_CORE_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Google", "3.1.0", subSpecs: new [] { "Core" }) - }; - GOOGLE_INSTANCE_ID_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("GGLInstanceID", "1.2.1"), - PodSpec.Create ("GoogleIPhoneUtilities", "1.2.0") + PodSpec.Create ("google-cast-sdk", "4.7.0") }; GOOGLE_MAPS_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("GoogleMaps", "3.9.0") + PodSpec.Create ("GoogleMaps", "6.0.1") }; GOOGLE_MOBILE_ADS_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("Google-Mobile-Ads-SDK", "7.66.0"), + PodSpec.Create ("Google-Mobile-Ads-SDK", "8.13.0") + }; + GOOGLE_UMP_ARTIFACT.PodSpecs = new [] { PodSpec.Create ("GoogleUserMessagingPlatform", "1.1.0") }; GOOGLE_PLACES_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("GooglePlaces", "3.9.0") + PodSpec.Create ("GooglePlaces", "6.0.0") }; GOOGLE_SIGN_IN_ARTIFACT.PodSpecs = new [] { PodSpec.Create ("GoogleSignIn", "5.0.2"), - PodSpec.Create ("AppAuth", "1.3.0", frameworkSource: FrameworkSource.Pods), - PodSpec.Create ("GTMAppAuth", "1.0.0", frameworkSource: FrameworkSource.Pods), + PodSpec.Create ("AppAuth", "1.4.0", frameworkSource: FrameworkSource.Pods), + PodSpec.Create ("GTMAppAuth", "1.2.1", frameworkSource: FrameworkSource.Pods), }; GOOGLE_TAG_MANAGER_ARTIFACT.PodSpecs = new [] { - PodSpec.Create ("GoogleTagManager", "7.1.2") + PodSpec.Create ("GoogleTagManager", "7.4.0") + }; + + // MLKit components + MLKIT_CORE_ARTIFACT.PodSpecs = new [] { + PodSpec.Create ("MLKitCore", "5.0.0"), + PodSpec.Create ("MLKitVision", "3.0.0"), + PodSpec.Create ("MLImage", "1.0.0-beta2"), + PodSpec.Create ("MLKitMDD", "3.0.0"), + PodSpec.Create ("SSZipArchive", "2.4.2", frameworkSource: FrameworkSource.Pods), + }; + MLKIT_TEXT_RECOGNITION.PodSpecs = new [] { + PodSpec.Create ("MLKitTextRecognitionCommon", "1.0.0") + }; + MLKIT_VISION.PodSpecs = new [] { + PodSpec.Create ("MLKitVision", "3.0.0") + }; + MLKIT_TEXT_RECOGNITION_LATIN.PodSpecs = new [] { + PodSpec.Create ("MLKitTextRecognition", "1.4.0") + }; + MLKIT_TEXT_RECOGNITION_CHINESE.PodSpecs = new [] { + PodSpec.Create ("MLKitTextRecognitionChinese", "1.0.0") + }; + MLKIT_TEXT_RECOGNITION_DEVANAGARI.PodSpecs = new [] { + PodSpec.Create ("MLKitTextRecognitionDevanagari", "1.0.0") + }; + MLKIT_TEXT_RECOGNITION_JAPANESE.PodSpecs = new [] { + PodSpec.Create ("MLKitTextRecognitionJapanese", "1.0.0") + }; + MLKIT_TEXT_RECOGNITION_KOREAN.PodSpecs = new [] { + PodSpec.Create ("MLKitTextRecognitionKorean", "1.0.0") + }; + MLKIT_FACE_DETECTION.PodSpecs = new [] { + PodSpec.Create ("MLKitFaceDetection", "1.5.0") + }; + MLKIT_BARCODE_SCANNING.PodSpecs = new [] { + PodSpec.Create ("MLKitBarcodeScanning", "1.6.0") + }; + MLKIT_DIGITAL_INK_RECOGNITION.PodSpecs = new [] { + PodSpec.Create ("MLKitDigitalInkRecognition", "1.5.0") + }; + MLKIT_IMAGE_LABELING.PodSpecs = new [] { + PodSpec.Create ("MLKitImageLabeling", "1.5.0") + }; + MLKIT_OBJECT_DETECTION.PodSpecs = new [] { + PodSpec.Create ("MLKitObjectDetection", "1.5.0") }; } @@ -265,10 +313,12 @@ void SetArtifactsExtraPodfileLines () FIREBASE_DATABASE_ARTIFACT.ExtraPodfileLines = dynamicFrameworkLines; FIREBASE_DYNAMIC_LINKS_ARTIFACT.ExtraPodfileLines = dynamicFrameworkLines; FIREBASE_INSTALLATIONS_ARTIFACT.ExtraPodfileLines = dynamicFrameworkLines; - FIREBASE_INSTANCE_ID_ARTIFACT.ExtraPodfileLines = dynamicFrameworkLines; + FIREBASE_PERFORMANCE_MONITORING_ARTIFACT.ExtraPodfileLines = dynamicFrameworkLines; FIREBASE_REMOTE_CONFIG_ARTIFACT.ExtraPodfileLines = dynamicFrameworkLines; FIREBASE_STORAGE_ARTIFACT.ExtraPodfileLines = dynamicFrameworkLines; - + // FIREBASE_APP_DISTRIBUTION_ARTIFACT.ExtraPodfileLines = dynamicFrameworkLines; + // FIREBASE_APP_CHECK_ARTIFACT.ExtraPodfileLines = dynamicFrameworkLines; + var inAppMessagingWorkaround = new [] { "post_install do |installer|", "\tinstaller.pods_project.targets.each do |pod|", @@ -306,25 +356,21 @@ void SetArtifactsSamples () FIREBASE_DYNAMIC_LINKS_ARTIFACT.Samples = new [] { "DynamicLinksSample" }; FIREBASE_IN_APP_MESSAGING_ARTIFACT.Samples = new [] { "InAppMessagingSample" }; FIREBASE_INSTALLATIONS_ARTIFACT.Samples = null; - FIREBASE_INSTANCE_ID_ARTIFACT.Samples = null; - FIREBASE_MLKIT_ARTIFACT.Samples = new [] { "MLKitSample" }; - FIREBASE_MLKIT_COMMON_ARTIFACT.Samples = null; - FIREBASE_MLKIT_MODEL_INTERPRETER_ARTIFACT.Samples = new [] { "ModelInterpreterSample" }; - FIREBASE_MLKIT_NATURAL_LANGUAGE_ARTIFACT.Samples = new [] { "NaturalLanguageSample" }; - FIREBASE_MLKIT_VISION_ARTIFACT.Samples = new [] { "MLKitVisionSample" }; FIREBASE_PERFORMANCE_MONITORING_ARTIFACT.Samples = new [] { "PerformanceMonitoringSample" }; FIREBASE_REMOTE_CONFIG_ARTIFACT.Samples = new [] { "RemoteConfigSample" }; FIREBASE_STORAGE_ARTIFACT.Samples = new [] { "StorageSample" }; + //FIREBASE_APP_DISTRIBUTION_ARTIFACT.Samples = new [] { "AppDistributionSample" }; + //FIREBASE_APP_CHECK_ARTIFACT.Samples = new [] { "AppCheckSample" }; // Google components GOOGLE_ANALYTICS_ARTIFACT.Samples = new [] { "CuteAnimalsiOS" }; - GOOGLE_APP_INDEXING_ARTIFACT.Samples = new [] { "AppIndexingSample" }; - GOOGLE_CAST_ARTIFACT.Samples = new [] { "CastSample" }; - GOOGLE_CORE_ARTIFACT.Samples = null; - GOOGLE_INSTANCE_ID_ARTIFACT.Samples = new [] { "InstanceIDSample" }; + GOOGLE_CAST_ARTIFACT.Samples = new [] { "CastSample" }; GOOGLE_MAPS_ARTIFACT.Samples = new [] { "GoogleMapsAdvSample", "GoogleMapsSample" }; GOOGLE_MOBILE_ADS_ARTIFACT.Samples = new [] { "MobileAdsExample" }; GOOGLE_PLACES_ARTIFACT.Samples = new [] { "GooglePlacesSample" }; GOOGLE_SIGN_IN_ARTIFACT.Samples = new [] { "SignInExample" }; GOOGLE_TAG_MANAGER_ARTIFACT.Samples = new [] { "TagManagerSample" }; + + // MLKit + MLKIT_VISION.Samples = new [] { "MLKitVisionSample" }; } diff --git a/poco.cake b/poco.cake index 14cafaa41..990bbb869 100644 --- a/poco.cake +++ b/poco.cake @@ -1,7 +1,8 @@ enum ComponentGroup { Firebase, - Google + Google, + MLKit } enum FrameworkSource diff --git a/samples/Firebase/AdMob/AdMobSample/AdMobSample.csproj b/samples/Firebase/AdMob/AdMobSample/AdMobSample.csproj index 282f0f8aa..0a90cff56 100644 --- a/samples/Firebase/AdMob/AdMobSample/AdMobSample.csproj +++ b/samples/Firebase/AdMob/AdMobSample/AdMobSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -143,5 +143,5 @@ - + \ No newline at end of file diff --git a/samples/Firebase/AdMob/AdMobSample/AdsViewController.cs b/samples/Firebase/AdMob/AdMobSample/AdsViewController.cs index ad835d3b8..301381508 100644 --- a/samples/Firebase/AdMob/AdMobSample/AdsViewController.cs +++ b/samples/Firebase/AdMob/AdMobSample/AdsViewController.cs @@ -7,14 +7,14 @@ using CoreGraphics; using Google.MobileAds; +using Foundation; namespace AdMobSample { - public class AdsViewController : DialogViewController - { + public class AdsViewController : DialogViewController { BannerView adViewTableView; BannerView adViewWindow; - Interstitial adInterstitial; + InterstitialAd adInterstitial; bool adOnTable; bool adOnWindow; @@ -46,9 +46,10 @@ void AddToTableView () if (adViewTableView == null) { // Setup your BannerView, review AdSizeCons class for more Ad sizes. adViewTableView = new BannerView (size: AdSizeCons.SmartBannerPortrait) { - AdUnitId = AdMobConstants.BannerId, + RootViewController = NavigationController }; + adViewTableView.AdUnitId = AdMobConstants.BannerId; // Wire AdReceived event to know when the Ad is ready to be displayed adViewTableView.AdReceived += (object sender, EventArgs e) => { @@ -85,10 +86,10 @@ void AddToWindow () // Setup your GADBannerView, review AdSizeCons class for more Ad sizes. adViewWindow = new BannerView (size: AdSizeCons.SmartBannerPortrait, origin: new CGPoint (0, UIScreen.MainScreen.Bounds.Size.Height - AdSizeCons.Banner.Size.Height)) { - AdUnitId = AdMobConstants.BannerId, + RootViewController = NavigationController }; - + adViewWindow.AdUnitId = AdMobConstants.BannerId; // Wire AdReceived event to know when the Ad is ready to be displayed adViewWindow.AdReceived += (object sender, EventArgs e) => { if (!adOnWindow) { @@ -119,24 +120,29 @@ void RemoveAdFromWindow () void AddToView () { - if (!adInterstitial.IsReady) - return; + if (adInterstitial?.CanPresent (NavigationController, out _) == true) { + adInterstitial.DismissedContent += (sender, args) => { + // Interstitial is a one time use object. That means once an interstitial is shown, HasBeenUsed + // returns true and the interstitial can't be used to load another ad. + // To request another interstitial, you'll need to create a new Interstitial object. + adInterstitial.Dispose (); + adInterstitial = null; + CreateAndRequestInterstitial (); + }; - adInterstitial.Present (NavigationController); + adInterstitial.Present (NavigationController); + } } void CreateAndRequestInterstitial () { - adInterstitial = new Interstitial (AdMobConstants.IntersitialId); - adInterstitial.ScreenDismissed += (sender, e) => { - // Interstitial is a one time use object. That means once an interstitial is shown, HasBeenUsed - // returns true and the interstitial can't be used to load another ad. - // To request another interstitial, you'll need to create a new Interstitial object. - adInterstitial.Dispose (); - adInterstitial = null; - CreateAndRequestInterstitial (); - }; - adInterstitial.LoadRequest (GetRequest ()); + if (adInterstitial == null) { + InterstitialAd.Load (AdMobConstants.IntersitialId, GetRequest (), (ad, err) => { + if (ad != null) { + adInterstitial = ad; + } + }); + } } Request GetRequest () @@ -144,5 +150,5 @@ Request GetRequest () var request = Request.GetDefaultRequest (); return request; } - } + } } diff --git a/samples/Firebase/AdMob/AdMobSample/Info.plist b/samples/Firebase/AdMob/AdMobSample/Info.plist index 7372cccdc..923dd5dc8 100644 --- a/samples/Firebase/AdMob/AdMobSample/Info.plist +++ b/samples/Firebase/AdMob/AdMobSample/Info.plist @@ -13,7 +13,7 @@ LSRequiresIPhoneOS MinimumOSVersion - 8.0 + 9.0 UIDeviceFamily 1 diff --git a/samples/Firebase/AdMob/AdMobSample/packages.config b/samples/Firebase/AdMob/AdMobSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Firebase/AdMob/AdMobSample/packages.config +++ b/samples/Firebase/AdMob/AdMobSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Firebase/Analytics/AnalyticsSample/AnalyticsSample.csproj b/samples/Firebase/Analytics/AnalyticsSample/AnalyticsSample.csproj index da4808002..316006b3b 100644 --- a/samples/Firebase/Analytics/AnalyticsSample/AnalyticsSample.csproj +++ b/samples/Firebase/Analytics/AnalyticsSample/AnalyticsSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -152,5 +152,5 @@ - + \ No newline at end of file diff --git a/samples/Firebase/Analytics/AnalyticsSample/packages.config b/samples/Firebase/Analytics/AnalyticsSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Firebase/Analytics/AnalyticsSample/packages.config +++ b/samples/Firebase/Analytics/AnalyticsSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Firebase/Auth/AuthSample/AuthSample.csproj b/samples/Firebase/Auth/AuthSample/AuthSample.csproj index a373b172b..d88d6bc9f 100644 --- a/samples/Firebase/Auth/AuthSample/AuthSample.csproj +++ b/samples/Firebase/Auth/AuthSample/AuthSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -184,5 +184,5 @@ - + diff --git a/samples/Firebase/Auth/AuthSample/packages.config b/samples/Firebase/Auth/AuthSample/packages.config index ab3e681cb..2071fb995 100644 --- a/samples/Firebase/Auth/AuthSample/packages.config +++ b/samples/Firebase/Auth/AuthSample/packages.config @@ -1,7 +1,7 @@  - + \ No newline at end of file diff --git a/samples/Firebase/CloudFirestore/CloudFirestoreSample/CloudFirestoreSample.csproj b/samples/Firebase/CloudFirestore/CloudFirestoreSample/CloudFirestoreSample.csproj index 7efbef1c2..a09504f2a 100644 --- a/samples/Firebase/CloudFirestore/CloudFirestoreSample/CloudFirestoreSample.csproj +++ b/samples/Firebase/CloudFirestore/CloudFirestoreSample/CloudFirestoreSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -164,5 +164,5 @@ - + \ No newline at end of file diff --git a/samples/Firebase/CloudFirestore/CloudFirestoreSample/packages.config b/samples/Firebase/CloudFirestore/CloudFirestoreSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Firebase/CloudFirestore/CloudFirestoreSample/packages.config +++ b/samples/Firebase/CloudFirestore/CloudFirestoreSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Firebase/CloudFunctions/CloudFunctionsSample/CloudFunctionsSample.csproj b/samples/Firebase/CloudFunctions/CloudFunctionsSample/CloudFunctionsSample.csproj index d2b44e1eb..7b1ec1512 100644 --- a/samples/Firebase/CloudFunctions/CloudFunctionsSample/CloudFunctionsSample.csproj +++ b/samples/Firebase/CloudFunctions/CloudFunctionsSample/CloudFunctionsSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -142,5 +142,5 @@ - + diff --git a/samples/Firebase/CloudFunctions/CloudFunctionsSample/packages.config b/samples/Firebase/CloudFunctions/CloudFunctionsSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Firebase/CloudFunctions/CloudFunctionsSample/packages.config +++ b/samples/Firebase/CloudFunctions/CloudFunctionsSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Firebase/CloudMessaging/CloudMessagingSample/AppDelegate.cs b/samples/Firebase/CloudMessaging/CloudMessagingSample/AppDelegate.cs index bcfac7c77..4cbbf708d 100644 --- a/samples/Firebase/CloudMessaging/CloudMessagingSample/AppDelegate.cs +++ b/samples/Firebase/CloudMessaging/CloudMessagingSample/AppDelegate.cs @@ -2,7 +2,6 @@ using UIKit; using UserNotifications; -using Firebase.InstanceID; using Firebase.Core; using Firebase.CloudMessaging; using System; @@ -61,21 +60,9 @@ public override bool FinishedLaunching (UIApplication application, NSDictionary Messaging.SharedInstance.Delegate = this; - InstanceId.SharedInstance.GetInstanceId (InstanceIdResultHandler); - return true; } - void InstanceIdResultHandler (InstanceIdResult result, NSError error) - { - if (error != null) { - LogInformation (nameof (InstanceIdResultHandler), $"Error: {error.LocalizedDescription}"); - return; - } - - LogInformation (nameof (InstanceIdResultHandler), $"Remote Instance Id token: {result.Token}"); - } - [Export ("messaging:didReceiveRegistrationToken:")] public void DidReceiveRegistrationToken (Messaging messaging, string fcmToken) { @@ -113,15 +100,6 @@ public override void DidReceiveRemoteNotification (UIApplication application, NS completionHandler (UIBackgroundFetchResult.NewData); } - [Export ("messaging:didReceiveMessage:")] - public void DidReceiveMessage (Messaging messaging, RemoteMessage remoteMessage) - { - // Handle Data messages for iOS 10 and above. - HandleMessage (remoteMessage.AppData); - - LogInformation (nameof (DidReceiveMessage), remoteMessage.AppData); - } - void HandleMessage (NSDictionary message) { if (MessageReceived == null) diff --git a/samples/Firebase/CloudMessaging/CloudMessagingSample/CloudMessagingSample.csproj b/samples/Firebase/CloudMessaging/CloudMessagingSample/CloudMessagingSample.csproj index ecf6f1165..068504ebd 100644 --- a/samples/Firebase/CloudMessaging/CloudMessagingSample/CloudMessagingSample.csproj +++ b/samples/Firebase/CloudMessaging/CloudMessagingSample/CloudMessagingSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -130,10 +130,6 @@ {9335A59B-3B54-4ED5-8201-B68CFD05CAFB} Core - - {754D8F56-C3DB-4E33-91D5-45445AB286EF} - InstanceID - {65ACD945-5A8A-419D-B9FB-8DFD03C532F4} Installations @@ -148,5 +144,5 @@ - + \ No newline at end of file diff --git a/samples/Firebase/CloudMessaging/CloudMessagingSample/packages.config b/samples/Firebase/CloudMessaging/CloudMessagingSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Firebase/CloudMessaging/CloudMessagingSample/packages.config +++ b/samples/Firebase/CloudMessaging/CloudMessagingSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Firebase/Crashlytics/CrashlyticsSample/CrashlyticsSample.csproj b/samples/Firebase/Crashlytics/CrashlyticsSample/CrashlyticsSample.csproj index d2e005272..782a5ae54 100644 --- a/samples/Firebase/Crashlytics/CrashlyticsSample/CrashlyticsSample.csproj +++ b/samples/Firebase/Crashlytics/CrashlyticsSample/CrashlyticsSample.csproj @@ -1,6 +1,6 @@  - + Debug @@ -145,5 +145,5 @@ - + \ No newline at end of file diff --git a/samples/Firebase/Crashlytics/CrashlyticsSample/packages.config b/samples/Firebase/Crashlytics/CrashlyticsSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Firebase/Crashlytics/CrashlyticsSample/packages.config +++ b/samples/Firebase/Crashlytics/CrashlyticsSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Firebase/Database/DatabaseSample/DatabaseSample.csproj b/samples/Firebase/Database/DatabaseSample/DatabaseSample.csproj index 166ba6681..69179bcbf 100644 --- a/samples/Firebase/Database/DatabaseSample/DatabaseSample.csproj +++ b/samples/Firebase/Database/DatabaseSample/DatabaseSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -163,5 +163,5 @@ - + \ No newline at end of file diff --git a/samples/Firebase/Database/DatabaseSample/packages.config b/samples/Firebase/Database/DatabaseSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Firebase/Database/DatabaseSample/packages.config +++ b/samples/Firebase/Database/DatabaseSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Firebase/DynamicLinks/DynamicLinksSample/DynamicLinksSample.csproj b/samples/Firebase/DynamicLinks/DynamicLinksSample/DynamicLinksSample.csproj index 4c1815790..7c84fe2f2 100644 --- a/samples/Firebase/DynamicLinks/DynamicLinksSample/DynamicLinksSample.csproj +++ b/samples/Firebase/DynamicLinks/DynamicLinksSample/DynamicLinksSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -151,5 +151,5 @@ - + \ No newline at end of file diff --git a/samples/Firebase/DynamicLinks/DynamicLinksSample/packages.config b/samples/Firebase/DynamicLinks/DynamicLinksSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Firebase/DynamicLinks/DynamicLinksSample/packages.config +++ b/samples/Firebase/DynamicLinks/DynamicLinksSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Firebase/InAppMessaging/InAppMessagingSample/InAppMessagingSample.csproj b/samples/Firebase/InAppMessaging/InAppMessagingSample/InAppMessagingSample.csproj index c70ecfcbb..25f644445 100644 --- a/samples/Firebase/InAppMessaging/InAppMessagingSample/InAppMessagingSample.csproj +++ b/samples/Firebase/InAppMessaging/InAppMessagingSample/InAppMessagingSample.csproj @@ -1,6 +1,6 @@ - + Debug iPhoneSimulator @@ -154,5 +154,5 @@ - + \ No newline at end of file diff --git a/samples/Firebase/InAppMessaging/InAppMessagingSample/packages.config b/samples/Firebase/InAppMessaging/InAppMessagingSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Firebase/InAppMessaging/InAppMessagingSample/packages.config +++ b/samples/Firebase/InAppMessaging/InAppMessagingSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/AppDelegate.cs b/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/AppDelegate.cs index b43efa81b..12c82db07 100644 --- a/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/AppDelegate.cs +++ b/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/AppDelegate.cs @@ -27,13 +27,16 @@ public override bool FinishedLaunching (UIApplication application, NSDictionary // Override point for customization after application launch. // If not required for your application you can safely delete this method - // You can download your GoogleService-Info.plist file following the next link: + // You can download your GoogleService-Info.plist file following the next link: // https://firebase.google.com/docs/ios/setup if (!GoogleServiceInfoPlistHelper.FileExist ()) { Window = GoogleServiceInfoPlistHelper.CreateWindowWithFileNotFoundMessage (); return true; } + // Use Firebase library to configure APIs + App.Configure (); + var navigationController = Window.RootViewController as UINavigationController; if (UIDevice.CurrentDevice.CheckSystemVersion (11, 0)) @@ -66,9 +69,6 @@ public override bool FinishedLaunching (UIApplication application, NSDictionary // The following line enables/disables custom traces Performance.SharedInstance.DataCollectionEnabled = isPerformanceMonitoringDataCollectionEnabled; - // Use Firebase library to configure APIs - App.Configure (); - return true; } diff --git a/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/Controllers/SettingsTableViewController.cs b/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/Controllers/SettingsTableViewController.cs index cf6ad15c1..7419f07fc 100644 --- a/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/Controllers/SettingsTableViewController.cs +++ b/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/Controllers/SettingsTableViewController.cs @@ -92,7 +92,7 @@ void HandleRemoteConfigFetchCompletionHandler (RemoteConfigFetchStatus status, N void OkAction () { - remoteConfig.ActivateFetched (); + remoteConfig.Activate (); var indexPaths = TableView.IndexPathsForVisibleRows; foreach (var indexPath in indexPaths) { diff --git a/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/PerformanceMonitoringSample.csproj b/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/PerformanceMonitoringSample.csproj index 8464db6b9..3d18eadf9 100644 --- a/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/PerformanceMonitoringSample.csproj +++ b/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/PerformanceMonitoringSample.csproj @@ -1,5 +1,5 @@  - + Debug iPhoneSimulator @@ -151,10 +151,6 @@ {9335A59B-3B54-4ED5-8201-B68CFD05CAFB} Core - - {754D8F56-C3DB-4E33-91D5-45445AB286EF} - InstanceID - {3ECC9FBF-72BB-48E4-B454-56194A422B3A} PerformanceMonitoring @@ -178,7 +174,6 @@ - - + diff --git a/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/packages.config b/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/packages.config +++ b/samples/Firebase/PerformanceMonitoring/PerformanceMonitoringSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Firebase/RemoteConfig/RemoteConfigSample/RemoteConfigSample.csproj b/samples/Firebase/RemoteConfig/RemoteConfigSample/RemoteConfigSample.csproj index 779573c64..b0a9a5741 100644 --- a/samples/Firebase/RemoteConfig/RemoteConfigSample/RemoteConfigSample.csproj +++ b/samples/Firebase/RemoteConfig/RemoteConfigSample/RemoteConfigSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -127,10 +127,6 @@ {9335A59B-3B54-4ED5-8201-B68CFD05CAFB} Core - - {754D8F56-C3DB-4E33-91D5-45445AB286EF} - InstanceID - {2FC178FA-114D-4A51-A3DF-5EA10E2C71C4} RemoteConfig @@ -150,5 +146,5 @@ - + \ No newline at end of file diff --git a/samples/Firebase/RemoteConfig/RemoteConfigSample/packages.config b/samples/Firebase/RemoteConfig/RemoteConfigSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Firebase/RemoteConfig/RemoteConfigSample/packages.config +++ b/samples/Firebase/RemoteConfig/RemoteConfigSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Firebase/Storage/StorageSample/StorageSample.csproj b/samples/Firebase/Storage/StorageSample/StorageSample.csproj index 0fb039b9c..55f37ee2f 100644 --- a/samples/Firebase/Storage/StorageSample/StorageSample.csproj +++ b/samples/Firebase/Storage/StorageSample/StorageSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -167,5 +167,5 @@ - + \ No newline at end of file diff --git a/samples/Firebase/Storage/StorageSample/packages.config b/samples/Firebase/Storage/StorageSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Firebase/Storage/StorageSample/packages.config +++ b/samples/Firebase/Storage/StorageSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Google/Analytics/CuteAnimalsiOS/CuteAnimalsiOS.csproj b/samples/Google/Analytics/CuteAnimalsiOS/CuteAnimalsiOS.csproj index 2b5376b96..300be73be 100644 --- a/samples/Google/Analytics/CuteAnimalsiOS/CuteAnimalsiOS.csproj +++ b/samples/Google/Analytics/CuteAnimalsiOS/CuteAnimalsiOS.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -154,11 +154,11 @@ - {36FD3346-EA1E-41A3-91D2-1C380E97BA34} Analytics + \ No newline at end of file diff --git a/samples/Google/Analytics/CuteAnimalsiOS/packages.config b/samples/Google/Analytics/CuteAnimalsiOS/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Google/Analytics/CuteAnimalsiOS/packages.config +++ b/samples/Google/Analytics/CuteAnimalsiOS/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Google/Cast/CastSample/CastSample.csproj b/samples/Google/Cast/CastSample/CastSample.csproj index a8ccbefd3..13b63edbc 100644 --- a/samples/Google/Cast/CastSample/CastSample.csproj +++ b/samples/Google/Cast/CastSample/CastSample.csproj @@ -1,6 +1,6 @@  - + Debug @@ -142,5 +142,5 @@ - + \ No newline at end of file diff --git a/samples/Google/Cast/CastSample/packages.config b/samples/Google/Cast/CastSample/packages.config index b17362e11..8c357b944 100644 --- a/samples/Google/Cast/CastSample/packages.config +++ b/samples/Google/Cast/CastSample/packages.config @@ -1,5 +1,5 @@  - + \ No newline at end of file diff --git a/samples/Google/Maps/GoogleMapsAdvSample/AppDelegate.cs b/samples/Google/Maps/GoogleMapsAdvSample/AppDelegate.cs index 746a9f270..24b12421c 100644 --- a/samples/Google/Maps/GoogleMapsAdvSample/AppDelegate.cs +++ b/samples/Google/Maps/GoogleMapsAdvSample/AppDelegate.cs @@ -31,7 +31,7 @@ public partial class AppDelegate : UIApplicationDelegate // public override bool FinishedLaunching (UIApplication application, NSDictionary launchOptions) { - MapServices.ProvideAPIKey (MapsApiKey); + MapServices.ProvideApiKey (MapsApiKey); window = new UIWindow (UIScreen.MainScreen.Bounds); diff --git a/samples/Google/Maps/GoogleMapsAdvSample/GoogleMapsAdvSample.csproj b/samples/Google/Maps/GoogleMapsAdvSample/GoogleMapsAdvSample.csproj index 6099ad7c8..ec8cc7e4a 100644 --- a/samples/Google/Maps/GoogleMapsAdvSample/GoogleMapsAdvSample.csproj +++ b/samples/Google/Maps/GoogleMapsAdvSample/GoogleMapsAdvSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -155,5 +155,5 @@ - + \ No newline at end of file diff --git a/samples/Google/Maps/GoogleMapsAdvSample/packages.config b/samples/Google/Maps/GoogleMapsAdvSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Google/Maps/GoogleMapsAdvSample/packages.config +++ b/samples/Google/Maps/GoogleMapsAdvSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Google/Maps/GoogleMapsSample/AppDelegate.cs b/samples/Google/Maps/GoogleMapsSample/AppDelegate.cs index a193e187e..19934549a 100644 --- a/samples/Google/Maps/GoogleMapsSample/AppDelegate.cs +++ b/samples/Google/Maps/GoogleMapsSample/AppDelegate.cs @@ -16,7 +16,7 @@ public partial class AppDelegate : UIApplicationDelegate public override bool FinishedLaunching (UIApplication application, NSDictionary launchOptions) { - MapServices.ProvideAPIKey (""); + MapServices.ProvideApiKey (""); window = new UIWindow (UIScreen.MainScreen.Bounds) { RootViewController = new MapViewController () diff --git a/samples/Google/Maps/GoogleMapsSample/GoogleMapsSample.csproj b/samples/Google/Maps/GoogleMapsSample/GoogleMapsSample.csproj index 71e13470a..a6fc739da 100644 --- a/samples/Google/Maps/GoogleMapsSample/GoogleMapsSample.csproj +++ b/samples/Google/Maps/GoogleMapsSample/GoogleMapsSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -99,8 +99,8 @@ - + @@ -121,5 +121,5 @@ - + diff --git a/samples/Google/Maps/GoogleMapsSample/packages.config b/samples/Google/Maps/GoogleMapsSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Google/Maps/GoogleMapsSample/packages.config +++ b/samples/Google/Maps/GoogleMapsSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Google/MobileAds/MobileAdsExample/AppDelegate.cs b/samples/Google/MobileAds/MobileAdsExample/AppDelegate.cs index 9d3d28047..c87ef783e 100644 --- a/samples/Google/MobileAds/MobileAdsExample/AppDelegate.cs +++ b/samples/Google/MobileAds/MobileAdsExample/AppDelegate.cs @@ -26,7 +26,7 @@ public partial class AppDelegate : UIApplicationDelegate BannerView adViewTableView; BannerView adViewWindow; - Interstitial adInterstitial; + InterstitialAd adInterstitial; bool adOnTable = false; bool adOnWindow = false; @@ -75,9 +75,9 @@ void AddToTableView () // Setup your BannerView, review AdSizeCons class for more Ad sizes. adViewTableView = new BannerView (size: AdSizeCons.Banner, origin: new CGPoint (-10, 0)) { - AdUnitID = bannerId, RootViewController = navController }; + adViewTableView.AdUnitId = bannerId; // Wire AdReceived event to know when the Ad is ready to be displayed adViewTableView.AdReceived += (object sender, EventArgs e) => { @@ -114,9 +114,9 @@ void AddToWindow () // Setup your GADBannerView, review AdSizeCons class for more Ad sizes. adViewWindow = new BannerView (size: AdSizeCons.Banner, origin: new CGPoint (0, window.Bounds.Size.Height - AdSizeCons.Banner.Size.Height)) { - AdUnitID = bannerId, RootViewController = navController }; + adViewWindow.AdUnitId = bannerId; // Wire AdReceived event to know when the Ad is ready to be displayed adViewWindow.AdReceived += (object sender, EventArgs e) => { @@ -152,35 +152,27 @@ void AddToView () return; if (adInterstitial == null) { - adInterstitial = new Interstitial (intersitialId); - - adInterstitial.ScreenDismissed += (sender, e) => { - interstitialRequested = false; - - // You need to explicitly Dispose Interstitial when you dont need it anymore - // to avoid crashes if pending request are in progress - adInterstitial.Dispose (); - adInterstitial = null; - }; - } + InterstitialAd.Load (intersitialId, Request.GetDefaultRequest (), (ad, err) => { + if (ad != null) { + adInterstitial = ad; - interstitialRequested = true; - adInterstitial.LoadRequest (Request.GetDefaultRequest ()); + adInterstitial.DismissedContent += (sender, e) => { + interstitialRequested = false; - ShowInterstitial (); - } - - async void ShowInterstitial () - { - // We need to wait until the Intersitial is ready to show - do { - await Task.Delay (100); - } while (!adInterstitial.IsReady); + // You need to explicitly Dispose Interstitial when you dont need it anymore + // to avoid crashes if pending request are in progress + adInterstitial.Dispose (); + adInterstitial = null; + }; - // Once is ready, show it - InvokeOnMainThread (() => adInterstitial.PresentFromRootViewController (navController)); + adInterstitial.Present (navController); + } + else { + interstitialRequested = false; + } + }); + } } - } } diff --git a/samples/Google/MobileAds/MobileAdsExample/MobileAdsExample.csproj b/samples/Google/MobileAds/MobileAdsExample/MobileAdsExample.csproj index 0e73fac2f..f66ad552f 100644 --- a/samples/Google/MobileAds/MobileAdsExample/MobileAdsExample.csproj +++ b/samples/Google/MobileAds/MobileAdsExample/MobileAdsExample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -112,7 +112,6 @@ - @@ -126,4 +125,5 @@ Core + \ No newline at end of file diff --git a/samples/Google/MobileAds/MobileAdsExample/packages.config b/samples/Google/MobileAds/MobileAdsExample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Google/MobileAds/MobileAdsExample/packages.config +++ b/samples/Google/MobileAds/MobileAdsExample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Google/Places/GooglePlacesSample/AppDelegate.cs b/samples/Google/Places/GooglePlacesSample/AppDelegate.cs index 84c181d89..b9777c54e 100644 --- a/samples/Google/Places/GooglePlacesSample/AppDelegate.cs +++ b/samples/Google/Places/GooglePlacesSample/AppDelegate.cs @@ -23,19 +23,6 @@ public override bool FinishedLaunching (UIApplication application, NSDictionary // Override point for customization after application launch. // If not required for your application you can safely delete this method - if (string.IsNullOrWhiteSpace (GoogleApiKey.Key)) { - var message = $"Configure the Key property inside GoogleApiKey class for your bundle {NSBundle.MainBundle.BundleIdentifier}"; - ShowMessage ("Google API Key is missing...", message, Window.RootViewController); - } - - // Provide the Places API with your API key. - PlacesClient.ProvideApiKey (GoogleApiKey.Key); - - // Provide the Maps API with your API key. You may not need - // this in your app, however we do need this for the demo - // app as it uses Maps. - MapServices.ProvideAPIKey (GoogleApiKey.Key); - var splitViewController = UIStoryboard.FromName ("Main", null).InstantiateViewController (nameof (UISplitViewController)) as UISplitViewController; splitViewController.Delegate = this; splitViewController.PreferredDisplayMode = UISplitViewControllerDisplayMode.PrimaryOverlay; @@ -45,6 +32,20 @@ public override bool FinishedLaunching (UIApplication application, NSDictionary }; Window.MakeKeyAndVisible (); + if (string.IsNullOrWhiteSpace (GoogleApiKey.Key)) { + var message = $"Configure the Key property inside GoogleApiKey class for your bundle {NSBundle.MainBundle.BundleIdentifier}"; + ShowMessage ("Google API Key is missing...", message, Window.RootViewController); + } + else { + // Provide the Places API with your API key. + PlacesClient.ProvideApiKey (GoogleApiKey.Key); + + // Provide the Maps API with your API key. You may not need + // this in your app, however we do need this for the demo + // app as it uses Maps. + MapServices.ProvideApiKey (GoogleApiKey.Key); + } + return true; } diff --git a/samples/Google/Places/GooglePlacesSample/GooglePlacesSample.csproj b/samples/Google/Places/GooglePlacesSample/GooglePlacesSample.csproj index 2efd05425..5daa10d94 100644 --- a/samples/Google/Places/GooglePlacesSample/GooglePlacesSample.csproj +++ b/samples/Google/Places/GooglePlacesSample/GooglePlacesSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -151,5 +151,5 @@ - + \ No newline at end of file diff --git a/samples/Google/Places/GooglePlacesSample/packages.config b/samples/Google/Places/GooglePlacesSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Google/Places/GooglePlacesSample/packages.config +++ b/samples/Google/Places/GooglePlacesSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Google/SignIn/SignInExample/SignInExample.csproj b/samples/Google/SignIn/SignInExample/SignInExample.csproj index 182283dda..55dff73fa 100644 --- a/samples/Google/SignIn/SignInExample/SignInExample.csproj +++ b/samples/Google/SignIn/SignInExample/SignInExample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -89,7 +89,6 @@ - {9335A59B-3B54-4ED5-8201-B68CFD05CAFB} @@ -126,4 +125,5 @@ + \ No newline at end of file diff --git a/samples/Google/SignIn/SignInExample/packages.config b/samples/Google/SignIn/SignInExample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Google/SignIn/SignInExample/packages.config +++ b/samples/Google/SignIn/SignInExample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/Google/TagManager/TagManagerSample/TagManagerSample.csproj b/samples/Google/TagManager/TagManagerSample/TagManagerSample.csproj index 8980f8fe7..4e7c3b17b 100644 --- a/samples/Google/TagManager/TagManagerSample/TagManagerSample.csproj +++ b/samples/Google/TagManager/TagManagerSample/TagManagerSample.csproj @@ -1,6 +1,6 @@  - + Debug iPhoneSimulator @@ -129,10 +129,6 @@ {9335A59B-3B54-4ED5-8201-B68CFD05CAFB} Core - - {754D8F56-C3DB-4E33-91D5-45445AB286EF} - InstanceID - {3FCDD0B5-F60C-49F7-AAD7-497D02285A38} TagManager @@ -159,5 +155,5 @@ - + \ No newline at end of file diff --git a/samples/Google/TagManager/TagManagerSample/packages.config b/samples/Google/TagManager/TagManagerSample/packages.config index 3df7db1e7..60c59b79d 100644 --- a/samples/Google/TagManager/TagManagerSample/packages.config +++ b/samples/Google/TagManager/TagManagerSample/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/AppDelegate.cs b/samples/MLKit/MLKitVision/MLKitVisionSample/AppDelegate.cs new file mode 100644 index 000000000..e6629a3e4 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/AppDelegate.cs @@ -0,0 +1,37 @@ +using Foundation; +using UIKit; +using System; + +namespace MLKitVisionSample { + // The UIApplicationDelegate for the application. This class is responsible for launching the + // User Interface of the application, as well as listening (and optionally responding) to application events from iOS. + [Register ("AppDelegate")] + public class AppDelegate : UIApplicationDelegate { + // class-level declarations + + public override UIWindow Window { + get; + set; + } + + public override bool FinishedLaunching (UIApplication application, NSDictionary launchOptions) + { + // Override point for customization after application launch. + // If not required for your application you can safely delete this method + + Firebase.Core.App.Configure (); + + return true; + } + + public static void ShowMessage (string title, string message, UIViewController fromViewController, string okTitle = "Ok", Action okAction = null, string cancelTitle = "Cancel", Action cancelAction = null) + { + var alertController = UIAlertController.Create (title, message, UIAlertControllerStyle.Alert); + alertController.AddAction (UIAlertAction.Create (okTitle, UIAlertActionStyle.Default, (obj) => okAction?.Invoke ())); + alertController.AddAction (UIAlertAction.Create (cancelTitle, UIAlertActionStyle.Cancel, (obj) => cancelAction?.Invoke ())); + + fromViewController.PresentViewController (alertController, true, null); + } + } +} + diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/120.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/120.png new file mode 100755 index 000000000..c2b22f060 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/120.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/152.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/152.png new file mode 100755 index 000000000..f8986ea6a Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/152.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/167.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/167.png new file mode 100755 index 000000000..01e472344 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/167.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/180.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/180.png new file mode 100755 index 000000000..a61a0f994 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/180.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/20.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/20.png new file mode 100755 index 000000000..8dc59d750 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/20.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/29.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/29.png new file mode 100755 index 000000000..2c141a006 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/29.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/40.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/40.png new file mode 100755 index 000000000..72cf573f4 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/40.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/58.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/58.png new file mode 100755 index 000000000..057f441ab Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/58.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/60.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/60.png new file mode 100755 index 000000000..55623e87c Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/60.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/76.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/76.png new file mode 100755 index 000000000..7ebf438ed Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/76.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/80.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/80.png new file mode 100755 index 000000000..75bb67467 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/80.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/87.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/87.png new file mode 100755 index 000000000..16a304070 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/87.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/Contents.json b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 000000000..292bc48a7 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,219 @@ +{ + "images": [ + { + "filename": "40.png", + "size": "20x20", + "scale": "2x", + "idiom": "iphone" + }, + { + "filename": "60.png", + "size": "20x20", + "scale": "3x", + "idiom": "iphone" + }, + { + "filename": "58.png", + "size": "29x29", + "scale": "2x", + "idiom": "iphone" + }, + { + "filename": "87.png", + "size": "29x29", + "scale": "3x", + "idiom": "iphone" + }, + { + "filename": "80.png", + "size": "40x40", + "scale": "2x", + "idiom": "iphone" + }, + { + "filename": "120.png", + "size": "40x40", + "scale": "3x", + "idiom": "iphone" + }, + { + "filename": "120.png", + "size": "60x60", + "scale": "2x", + "idiom": "iphone" + }, + { + "filename": "180.png", + "size": "60x60", + "scale": "3x", + "idiom": "iphone" + }, + { + "filename": "20.png", + "size": "20x20", + "scale": "1x", + "idiom": "ipad" + }, + { + "filename": "40.png", + "size": "20x20", + "scale": "2x", + "idiom": "ipad" + }, + { + "filename": "29.png", + "size": "29x29", + "scale": "1x", + "idiom": "ipad" + }, + { + "filename": "58.png", + "size": "29x29", + "scale": "2x", + "idiom": "ipad" + }, + { + "filename": "40.png", + "size": "40x40", + "scale": "1x", + "idiom": "ipad" + }, + { + "filename": "80.png", + "size": "40x40", + "scale": "2x", + "idiom": "ipad" + }, + { + "filename": "167.png", + "size": "83.5x83.5", + "scale": "2x", + "idiom": "ipad" + }, + { + "filename": "76.png", + "size": "76x76", + "scale": "1x", + "idiom": "ipad" + }, + { + "filename": "152.png", + "size": "76x76", + "scale": "2x", + "idiom": "ipad" + }, + { + "size": "1024x1024", + "scale": "1x", + "idiom": "ios-marketing" + }, + { + "role": "notificationCenter", + "size": "24x24", + "subtype": "38mm", + "scale": "2x", + "idiom": "watch" + }, + { + "role": "notificationCenter", + "size": "27.5x27.5", + "subtype": "42mm", + "scale": "2x", + "idiom": "watch" + }, + { + "role": "companionSettings", + "size": "29x29", + "scale": "2x", + "idiom": "watch" + }, + { + "role": "companionSettings", + "size": "29x29", + "scale": "3x", + "idiom": "watch" + }, + { + "role": "appLauncher", + "size": "40x40", + "subtype": "38mm", + "scale": "2x", + "idiom": "watch" + }, + { + "role": "longLook", + "size": "44x44", + "subtype": "42mm", + "scale": "2x", + "idiom": "watch" + }, + { + "role": "quickLook", + "size": "86x86", + "subtype": "38mm", + "scale": "2x", + "idiom": "watch" + }, + { + "role": "quickLook", + "size": "98x98", + "subtype": "42mm", + "scale": "2x", + "idiom": "watch" + }, + { + "size": "16x16", + "scale": "1x", + "idiom": "mac" + }, + { + "size": "16x16", + "scale": "2x", + "idiom": "mac" + }, + { + "size": "32x32", + "scale": "1x", + "idiom": "mac" + }, + { + "size": "32x32", + "scale": "2x", + "idiom": "mac" + }, + { + "size": "128x128", + "scale": "1x", + "idiom": "mac" + }, + { + "size": "128x128", + "scale": "2x", + "idiom": "mac" + }, + { + "size": "256x256", + "scale": "1x", + "idiom": "mac" + }, + { + "size": "256x256", + "scale": "2x", + "idiom": "mac" + }, + { + "size": "512x512", + "scale": "1x", + "idiom": "mac" + }, + { + "size": "512x512", + "scale": "2x", + "idiom": "mac" + } + ], + "info": { + "version": 1, + "author": "xcode" + } +} \ No newline at end of file diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/Contents.json b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/Contents.json new file mode 100644 index 000000000..4caf392f9 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/settings.imageset/Contents.json b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/settings.imageset/Contents.json new file mode 100644 index 000000000..20665a374 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/settings.imageset/Contents.json @@ -0,0 +1,85 @@ +{ + "images": [ + { + "idiom": "universal" + }, + { + "filename": "settings.png", + "scale": "1x", + "idiom": "universal" + }, + { + "filename": "settings@2x.png", + "scale": "2x", + "idiom": "universal" + }, + { + "filename": "settings@3x.png", + "scale": "3x", + "idiom": "universal" + }, + { + "idiom": "iphone" + }, + { + "scale": "1x", + "idiom": "iphone" + }, + { + "scale": "2x", + "idiom": "iphone" + }, + { + "subtype": "retina4", + "scale": "2x", + "idiom": "iphone" + }, + { + "scale": "3x", + "idiom": "iphone" + }, + { + "idiom": "ipad" + }, + { + "scale": "1x", + "idiom": "ipad" + }, + { + "scale": "2x", + "idiom": "ipad" + }, + { + "idiom": "watch" + }, + { + "scale": "2x", + "idiom": "watch" + }, + { + "screenWidth": "{130,145}", + "scale": "2x", + "idiom": "watch" + }, + { + "screenWidth": "{146,165}", + "scale": "2x", + "idiom": "watch" + }, + { + "idiom": "mac" + }, + { + "scale": "1x", + "idiom": "mac" + }, + { + "scale": "2x", + "idiom": "mac" + } + ], + "info": { + "version": 1, + "author": "xcode" + } +} \ No newline at end of file diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/settings.imageset/settings.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/settings.imageset/settings.png new file mode 100644 index 000000000..9c0146df9 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/settings.imageset/settings.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/settings.imageset/settings@2x.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/settings.imageset/settings@2x.png new file mode 100644 index 000000000..2f229155c Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/settings.imageset/settings@2x.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/settings.imageset/settings@3x.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/settings.imageset/settings@3x.png new file mode 100644 index 000000000..02f6a86b6 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Assets.xcassets/settings.imageset/settings@3x.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Controllers/SettingsViewController.cs b/samples/MLKit/MLKitVision/MLKitVisionSample/Controllers/SettingsViewController.cs new file mode 100644 index 000000000..5a47654d1 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Controllers/SettingsViewController.cs @@ -0,0 +1,128 @@ +using System; + +using UIKit; +using Foundation; +using System.Linq; + +namespace MLKitVisionSample { + public partial class SettingsViewController : UIViewController, IUITableViewDataSource, IUITableViewDelegate { + #region Class Variables + + readonly VisionType [] types; + readonly TextRecognitionScript [] scripts; + + NSUserDefaults standardUserDefaults; + + VisionType selectedType; + TextRecognitionScript selectedScript; + + #endregion + + #region Constructors + + public SettingsViewController (IntPtr handle) : base (handle) + { + types = Enum.GetValues (typeof (VisionType)).Cast ().ToArray (); + scripts = Enum.GetValues (typeof (TextRecognitionScript)).Cast ().ToArray (); + } + + #endregion + + #region Controller Life Cycle + + public override void ViewDidLoad () + { + base.ViewDidLoad (); + // Perform any additional setup after loading the view, typically from a nib. + + standardUserDefaults = NSUserDefaults.StandardUserDefaults; + + selectedType = (VisionType) (int) standardUserDefaults.IntForKey (nameof (VisionType)); + selectedScript = (TextRecognitionScript) (int) standardUserDefaults.IntForKey (nameof (TextRecognitionScript)); + + SettingsTable.ReloadSections (NSIndexSet.FromNSRange (new NSRange (0, 2)), UITableViewRowAnimation.Automatic); + } + + #endregion + + #region User Interactions + + partial void BtnSave_Clicked (NSObject sender) + { + NSUserDefaults.StandardUserDefaults.SetInt ((int) selectedType, nameof (VisionType)); + NSUserDefaults.StandardUserDefaults.SetInt ((int) selectedScript, nameof (TextRecognitionScript)); + + PerformSegue (Constants.PrepareForUnwind, sender); + } + + #endregion + + #region UITableView Data Source + + [Export ("numberOfSectionsInTableView:")] + public nint NumberOfSections (UITableView tableView) => 2; + + public nint RowsInSection (UITableView tableView, nint section) + { + return (int) section switch { + 0 => types.Length, + 1 => scripts.Length, + _ => 0 + }; + } + + [Export ("tableView:titleForHeaderInSection:")] + public string TitleForHeader (UITableView tableView, nint section) + { + return (int) section switch { + 0 => nameof (VisionType).GetTitle (), + 1 => nameof (TextRecognitionScript).GetTitle (), + _ => string.Empty + }; + } + + public UITableViewCell GetCell (UITableView tableView, NSIndexPath indexPath) + { + var cell = tableView.DequeueReusableCell (Constants.CellKey); + + if (indexPath.Section == 0) { + cell.TextLabel.Text = types [indexPath.Row].ToString ().GetTitle (); + cell.Accessory = (int) selectedType == indexPath.Row ? UITableViewCellAccessory.Checkmark : UITableViewCellAccessory.None; + } else if (indexPath.Section == 1) { + cell.TextLabel.Text = scripts [indexPath.Row].ToString ().GetTitle (); + cell.Accessory = (int) selectedScript == indexPath.Row ? UITableViewCellAccessory.Checkmark : UITableViewCellAccessory.None; + } else { + cell.TextLabel.Text = string.Empty; + cell.Accessory = UITableViewCellAccessory.None; + } + + return cell; + } + + #endregion + + #region UITableView Delegate + + [Export ("tableView:didSelectRowAtIndexPath:")] + public void RowSelected (UITableView tableView, NSIndexPath indexPath) + { + var visibleCells = tableView.VisibleCells + .Where (i => tableView.IndexPathForCell (i).Section == indexPath.Section) + .ToList (); + + foreach (var visibleCell in visibleCells) + visibleCell.Accessory = UITableViewCellAccessory.None; + + tableView.CellAt (indexPath).Accessory = UITableViewCellAccessory.Checkmark; + + if (indexPath.Section == 0) { + selectedType = types [indexPath.Row]; + } else if (indexPath.Section == 1) { + selectedScript = scripts [indexPath.Row]; + } + } + + #endregion + } +} + diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Controllers/SettingsViewController.designer.cs b/samples/MLKit/MLKitVision/MLKitVisionSample/Controllers/SettingsViewController.designer.cs new file mode 100644 index 000000000..1d052ca75 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Controllers/SettingsViewController.designer.cs @@ -0,0 +1,36 @@ +// WARNING +// +// This file has been generated automatically by Visual Studio to store outlets and +// actions made in the UI designer. If it is removed, they will be lost. +// Manual changes to this file may not be handled correctly. +// +using Foundation; +using System.CodeDom.Compiler; + +namespace MLKitVisionSample { + [Register ("SettingsViewController")] + partial class SettingsViewController { + [Outlet] + UIKit.UITableView SettingsTable { get; set; } + + [Outlet] + UIKit.UISegmentedControl SgmApi { get; set; } + + + [Action ("BtnSave_Clicked:")] + partial void BtnSave_Clicked (Foundation.NSObject sender); + + void ReleaseDesignerOutlets () + { + if (SettingsTable != null) { + SettingsTable.Dispose (); + SettingsTable = null; + } + + if (SgmApi != null) { + SgmApi.Dispose (); + SgmApi = null; + } + } + } +} diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Controllers/ViewController.cs b/samples/MLKit/MLKitVision/MLKitVisionSample/Controllers/ViewController.cs new file mode 100644 index 000000000..310a43770 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Controllers/ViewController.cs @@ -0,0 +1,522 @@ +using System; +using System.Collections.Generic; +using System.Text; + +using AVFoundation; +using Foundation; +using CoreGraphics; +using UIKit; + +using MLKit.Core; +using MLKit.BarcodeScanning; +using MLKit.FaceDetection; +using MLKit.TextRecognition; +using MLKit.DigitalInkRecognition; +using MLKit.ImageLabeling; +using MLKit.Vision; +using MLKit.ObjectDetection; + +namespace MLKitVisionSample { + public partial class ViewController : UIViewController, IUIImagePickerControllerDelegate { + + #region Class Variables + + VisionType currentVisionType; + TextRecognitionScript currentTxtRecogScript; + + #endregion + + #region Constructors + + protected ViewController (IntPtr handle) : base (handle) + { + // Note: this .ctor should not contain any initialization logic. + } + + #endregion + + #region Controller Life Cycle + + public override void ViewDidLoad () + { + base.ViewDidLoad (); + // Perform any additional setup after loading the view, typically from a nib. + + InitializeComponents (); + AnaylizeImage (); + } + + #endregion + + #region User Interactions + + partial void BtnCamera_Clicked (NSObject sender) + { + CheckCameraPermission (); + } + + #endregion + + #region Segue + + [Action ("prepareForUnwind:")] + public void PrepareForUnwind (UIStoryboardSegue segue) + { + InitializeComponents (); + AnaylizeImage (); + } + + #endregion + + #region Private Functionality + + void InitializeComponents () + { + GetSelectedUserData (); + SetModelImage (); + TxtData.Text = string.Empty; + } + + void GetSelectedUserData () + { + currentVisionType = (VisionType) (int) NSUserDefaults.StandardUserDefaults.IntForKey (nameof (VisionType)); + currentTxtRecogScript = (TextRecognitionScript) (int) NSUserDefaults.StandardUserDefaults.IntForKey (nameof (TextRecognitionScript)); + } + + void SetModelImage () + { + ImgSample.Image = UIImage.FromFile ($"{currentVisionType}.png"); + } + + void CheckCameraPermission () + { + string message; + var status = AVCaptureDevice.GetAuthorizationStatus (AVAuthorizationMediaType.Video); + + switch (status) { + case AVAuthorizationStatus.NotDetermined: + message = "Let's take a photo to be tested by the MLKit API!"; + AppDelegate.ShowMessage ("Camera Access", message, NavigationController, "Let's do this!", AskForCameraPermission); + break; + case AVAuthorizationStatus.Restricted: + case AVAuthorizationStatus.Denied: + message = "Open App Settings and grant for camera access to take a photo and test the MLKit API"; + AppDelegate.ShowMessage ("Camera Access Denied", message, NavigationController, "Open App Settings", OpenAppSettings); + break; + case AVAuthorizationStatus.Authorized: + OpenCamera (); + break; + default: + break; + } + } + + void AskForCameraPermission () + { + AVCaptureDevice.RequestAccessForMediaType (AVAuthorizationMediaType.Video, (accessGranted) => InvokeOnMainThread (CheckCameraPermission)); + } + + void OpenCamera () + { + var imagePickerController = new UIImagePickerController { + Delegate = this, + AllowsEditing = false, + SourceType = UIImagePickerControllerSourceType.Camera + }; + + PresentViewController (imagePickerController, true, null); + } + + void OpenAppSettings () + { + var sharedApplication = UIApplication.SharedApplication; + var url = new NSUrl (UIApplication.OpenSettingsUrlString); + + if (sharedApplication.CanOpenUrl (url)) + if (UIDevice.CurrentDevice.CheckSystemVersion (10, 0)) + sharedApplication.OpenUrl (url, new NSDictionary (), null); + else + sharedApplication.OpenUrl (url); + } + + void AnaylizeImage () + { + switch (currentVisionType) { + case VisionType.TextRecognition: + UseTextRecognitionModel (); + break; + case VisionType.FaceDetection: + UseFaceDetectionModel (); + break; + case VisionType.BarcodeScanning: + UseBarcodeScanningModel (); + break; + case VisionType.DigitalInkRecognition: + UseDigitalInkRecognitionModel (); + break; + case VisionType.ImageLabeling: + UseImageLabeling (); + break; + case VisionType.ObjectDetectionAndTracking: + UseObjectDetectionAndTracking (); + break; + default: + TxtData.Text = "Model not supported"; + break; + } + } + + void UseTextRecognitionModel () + { + System.Diagnostics.Debug.WriteLine ($"##### {currentTxtRecogScript}"); + + CommonTextRecognizerOptions options = currentTxtRecogScript switch { + TextRecognitionScript.Latin => new LatinTextRecognizerOptions (), + TextRecognitionScript.Chinese => new ChineseTextRecognizerOptions (), + TextRecognitionScript.Devanagari => new DevanagariTextRecognizerOptions (), + TextRecognitionScript.Japanese => new JapaneseTextRecognizerOptions (), + TextRecognitionScript.Korean => new KoreanTextRecognizerOptions (), + _ => throw new NotImplementedException () + }; + + var textRecognizer = TextRecognizer.TextRecognizerWithOptions (options); + var image = new MLImage (ImgSample.Image); + + textRecognizer.ProcessImage (image, (text, err) => { + TxtData.Text = err?.Description ?? text?.Text; + }); + } + + void UseFaceDetectionModel () + { + var options = new FaceDetectorOptions (); + options.PerformanceMode = FacePerformanceMode.Accurate; + options.LandmarkMode = FaceLandmarkMode.All; + options.ClassificationMode = FaceClassificationMode.All; + var faceDetector = FaceDetector.FaceDetectorWithOptions (options); + + var image = new MLImage (ImgSample.Image); + + faceDetector.ProcessImage (image, HandleFaceDetectorCallback); + + void HandleFaceDetectorCallback (Face [] faces, NSError error) + { + if (error != null) { + TxtData.Text = error.Description; + return; + } + + if (faces == null || faces.Length == 0) { + TxtData.Text = "No faces were found."; + return; + } + + var imageSize = ImgSample.Image.Size; + + UIGraphics.BeginImageContextWithOptions (imageSize, false, 0); + var context = UIGraphics.GetCurrentContext (); + context.SetStrokeColor (UIColor.Red.CGColor); + context.SetLineWidth (10); + + ImgSample.Image.Draw (CGPoint.Empty); + + foreach (var face in faces) { + context.AddRect (face.Frame); + context.DrawPath (CGPathDrawingMode.Stroke); + } + + var newImage = UIGraphics.GetImageFromCurrentImageContext (); + UIGraphics.EndImageContext (); + + ImgSample.Image = newImage; + + } + } + + void UseBarcodeScanningModel () + { + var options = new BarcodeScannerOptions (BarcodeFormat.All); + var barcodeScanner = BarcodeScanner.BarcodeScannerWithOptions (options); + + var image = new MLImage (ImgSample.Image); + + barcodeScanner.ProcessImage (image, HandleBarcodeScannerCallback); + + void HandleBarcodeScannerCallback (Barcode [] barcodes, NSError error) + { + if (error != null) { + TxtData.Text = error.Description; + return; + } + + if (barcodes == null || barcodes.Length == 0) { + TxtData.Text = "No barcodes were found."; + return; + } + + var stringBuilder = new StringBuilder (); + + foreach (var barcode in barcodes) { + stringBuilder.AppendLine ($"Raw Value: {barcode.RawValue}"); + stringBuilder.AppendLine ($"Display Value: {barcode.DisplayValue}"); + stringBuilder.AppendLine ($"Format: {barcode.Format}"); + stringBuilder.AppendLine ($"Value Type: {barcode.ValueType}"); + stringBuilder.AppendLine (); + } + + TxtData.Text = stringBuilder.ToString (); + } + } + + void UseDigitalInkRecognitionModel () + { + strokes.Clear (); + + if (inkRecognizer == null) { + var lang = "en-US"; + var identifier = DigitalInkRecognitionModelIdentifier.ModelIdentifierForLanguageTag (lang); + var model = new DigitalInkRecognitionModel (identifier); + var modelManager = ModelManager.DefaultInstance; + var conditions = new ModelDownloadConditions (true, true); + // This works on device, but downloads seems to fail on simulators + modelManager.DownloadModel (model, conditions); + + var options = new DigitalInkRecognizerOptions (model); + inkRecognizer = DigitalInkRecognizer.DigitalInkRecognizerWithOptions (options); + } + } + + void UseImageLabeling () + { + var options = new ImageLabelerOptions (); + options.ConfidenceThreshold = 0.7; + var labeler = ImageLabeler.ImageLabelerWithOptions (options); + + var image = new MLImage (ImgSample.Image); + + labeler.ProcessImage (image, (labels, error) => { + if (error != null) { + TxtData.Text = error.Description; + return; + } + + if (labels == null || labels.Length == 0) { + TxtData.Text = "No labels were found."; + return; + } + + var stringBuilder = new StringBuilder (); + + for (var i = 0; i < labels.Length; i++) { + stringBuilder.AppendLine ($"Label: {i}"); + stringBuilder.AppendLine ($"Text: {labels [i].Text}"); + stringBuilder.AppendLine ($"Confidence: {labels [i].Confidence}"); + stringBuilder.AppendLine ($"Index: {labels [i].Index}"); + stringBuilder.AppendLine (); + } + + TxtData.Text = stringBuilder.ToString (); + }); + } + + void UseObjectDetectionAndTracking () + { + var options = new ObjectDetectorOptions (); + options.Mode = DetectorMode.SingleImage; + options.ShouldEnableClassification = true; + options.ShouldEnableMultipleObjects = true; + var objectDetector = ObjectDetector.ObjectDetectorWithOptions (options); + + var image = new MLImage (ImgSample.Image); + + objectDetector.ProcessImage (image, (objects, error) => { + if (error != null) { + TxtData.Text = error.Description; + return; + } + + if (objects == null || objects.Length == 0) { + TxtData.Text = "No objects were found."; + return; + } + + var imageSize = ImgSample.Image.Size; + + UIGraphics.BeginImageContextWithOptions (imageSize, false, 0); + var context = UIGraphics.GetCurrentContext (); + context.SetStrokeColor (UIColor.Red.CGColor); + context.SetLineWidth (10); + + ImgSample.Image.Draw (CGPoint.Empty); + + var stringBuilder = new StringBuilder (); + + for (var i = 0; i < objects.Length; i++) { + stringBuilder.AppendLine ($"Object: {i}"); + stringBuilder.AppendLine ($"Tracking ID: {objects [i].TrackingId?.Int32Value ?? 0}"); + + foreach (var lbl in objects [i].Labels) { + stringBuilder.AppendLine ($" - Text: {lbl.Text}"); + stringBuilder.AppendLine ($" - Confidence: {lbl.Confidence}"); + stringBuilder.AppendLine ($" - Index: {lbl.Index}"); + } + + stringBuilder.AppendLine (); + + context.AddRect (objects [i].Frame); + context.DrawPath (CGPathDrawingMode.Stroke); + } + + var newImage = UIGraphics.GetImageFromCurrentImageContext (); + UIGraphics.EndImageContext (); + + ImgSample.Image = newImage; + + TxtData.Text = stringBuilder.ToString (); + }); + } + + #endregion + + #region Digital Ink + const int msPerTimeInterval = 1000; + + readonly List strokes = new List (); + readonly List points = new List (); + + DigitalInkRecognizer inkRecognizer; + CGPoint lastPoint = CGPoint.Empty; + + void DrawLine (CGPoint fromPoint, CGPoint toPoint) + { + UIGraphics.BeginImageContextWithOptions (ImgSample.Frame.Size, false, 0); + var context = UIGraphics.GetCurrentContext (); + + context.MoveTo (fromPoint.X, fromPoint.Y); + context.AddLineToPoint (toPoint.X, toPoint.Y); + context.SetLineCap (CGLineCap.Round); + context.SetBlendMode (CGBlendMode.Normal); + context.SetLineWidth (10); + context.SetStrokeColor (UIColor.Red.CGColor); + + ImgSample.Image.Draw (new CGRect (0, 0, ImgSample.Frame.Size.Width, ImgSample.Frame.Size.Height)); + + context.StrokePath (); + + var newImage = UIGraphics.GetImageFromCurrentImageContext (); + UIGraphics.EndImageContext (); + + ImgSample.Image = newImage; + } + + public override void TouchesBegan (NSSet touches, UIEvent evt) + { + base.TouchesBegan (touches, evt); + + if (currentVisionType != VisionType.DigitalInkRecognition) + return; + + var touch = touches.AnyObject as UITouch; + if (touch == null) + return; + + lastPoint = touch.LocationInView (ImgSample); + var t = touch.Timestamp; + + points.Add (new StrokePoint ((float) lastPoint.X, (float) lastPoint.Y, (int) (t * msPerTimeInterval))); + + DrawLine (lastPoint, lastPoint); + } + + public override void TouchesMoved (NSSet touches, UIEvent evt) + { + base.TouchesMoved (touches, evt); + + if (currentVisionType != VisionType.DigitalInkRecognition) + return; + + var touch = touches.AnyObject as UITouch; + if (touch == null) + return; + + var currentPoint = touch.LocationInView (ImgSample); + var t = touch.Timestamp; + + points.Add (new StrokePoint ((float) currentPoint.X, (float) currentPoint.Y, (int) (t * msPerTimeInterval))); + + DrawLine (lastPoint, currentPoint); + lastPoint = currentPoint; + } + + public override void TouchesEnded (NSSet touches, UIEvent evt) + { + base.TouchesEnded (touches, evt); + + if (currentVisionType != VisionType.DigitalInkRecognition) + return; + + var touch = touches.AnyObject as UITouch; + if (touch == null) + return; + + var currentPoint = touch.LocationInView (ImgSample); + var t = touch.Timestamp; + + points.Add (new StrokePoint ((float) currentPoint.X, (float) currentPoint.Y, (int) (t * msPerTimeInterval))); + + DrawLine (lastPoint, currentPoint); + lastPoint = currentPoint; + + strokes.Add (new Stroke (points.ToArray ())); + points.Clear (); + + DoRecognition (); + } + + void DoRecognition () + { + var ink = new Ink (strokes.ToArray ()); + inkRecognizer.RecognizeInk (ink, (result, error) => { + if (error != null) { + TxtData.Text = error.Description; + return; + } + + var stringBuilder = new StringBuilder (); + + for (var i = 0; i < result.Candidates.Length; i++) { + stringBuilder.AppendLine ($"Candiate: {i}"); + stringBuilder.AppendLine ($"Text: {result.Candidates [i].Text}"); + stringBuilder.AppendLine ($"Score: {result.Candidates [i].Score?.FloatValue.ToString () ?? "null"}"); + stringBuilder.AppendLine (); + } + + TxtData.Text = stringBuilder.ToString (); + }); + } + + #endregion + + #region UIImage Picker Controller Delegate + + [Export ("imagePickerController:didFinishPickingMediaWithInfo:")] + public void FinishedPickingMedia (UIImagePickerController picker, NSDictionary info) + { + var photo = info [UIImagePickerController.OriginalImage] as UIImage; + ImgSample.Image = photo; + + picker.DismissViewController (true, null); + + TxtData.Text = string.Empty; + AnaylizeImage (); + } + + [Export ("imagePickerControllerDidCancel:")] + public void Canceled (UIImagePickerController picker) + { + picker.DismissViewController (true, null); + } + + #endregion + } +} diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Controllers/ViewController.designer.cs b/samples/MLKit/MLKitVision/MLKitVisionSample/Controllers/ViewController.designer.cs new file mode 100644 index 000000000..3bfd3ed1c --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Controllers/ViewController.designer.cs @@ -0,0 +1,37 @@ +// WARNING +// +// This file has been generated automatically by Visual Studio to store outlets and +// actions made in the UI designer. If it is removed, they will be lost. +// Manual changes to this file may not be handled correctly. +// +using Foundation; +using System.CodeDom.Compiler; + +namespace MLKitVisionSample +{ + [Register ("ViewController")] + partial class ViewController + { + [Outlet] + UIKit.UIImageView ImgSample { get; set; } + + [Outlet] + UIKit.UITextView TxtData { get; set; } + + [Action ("BtnCamera_Clicked:")] + partial void BtnCamera_Clicked (Foundation.NSObject sender); + + void ReleaseDesignerOutlets () + { + if (ImgSample != null) { + ImgSample.Dispose (); + ImgSample = null; + } + + if (TxtData != null) { + TxtData.Dispose (); + TxtData = null; + } + } + } +} diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Entitlements.plist b/samples/MLKit/MLKitVision/MLKitVisionSample/Entitlements.plist new file mode 100644 index 000000000..9ae599370 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Entitlements.plist @@ -0,0 +1,6 @@ + + + + + + diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/GoogleService-Info.plist b/samples/MLKit/MLKitVision/MLKitVisionSample/GoogleService-Info.plist new file mode 100644 index 000000000..17734b474 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/GoogleService-Info.plist @@ -0,0 +1,36 @@ + + + + + CLIENT_ID + 542613023302-2nh4s02aqgq0kntqhdu3khh05tgvoi27.apps.googleusercontent.com + REVERSED_CLIENT_ID + com.googleusercontent.apps.542613023302-2nh4s02aqgq0kntqhdu3khh05tgvoi27 + API_KEY + + GCM_SENDER_ID + 542613023302 + PLIST_VERSION + 1 + BUNDLE_ID + com.xamarin.firebase.ios.MLKitVisionSample + PROJECT_ID + xamarinfirebase-67094 + STORAGE_BUCKET + xamarinfirebase-67094.appspot.com + IS_ADS_ENABLED + + IS_ANALYTICS_ENABLED + + IS_APPINVITE_ENABLED + + IS_GCM_ENABLED + + IS_SIGNIN_ENABLED + + GOOGLE_APP_ID + 1:542613023302:ios:47b77955dfc8d2eacbf847 + DATABASE_URL + https://xamarinfirebase-67094.firebaseio.com + + \ No newline at end of file diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Info.plist b/samples/MLKit/MLKitVision/MLKitVisionSample/Info.plist new file mode 100644 index 000000000..0fd00ac19 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Info.plist @@ -0,0 +1,50 @@ + + + + + CFBundleName + MLKitSample + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1.0 + LSRequiresIPhoneOS + + MinimumOSVersion + 12.0 + UIDeviceFamily + + 1 + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + XSAppIconAssets + Assets.xcassets/AppIcon.appiconset + NSCameraUsageDescription + Let's gonna try MLKit man! + NSPhotoLibraryUsageDescription + Let's save this! + NSPhotoLibraryAddUsageDescription + :et's save this... again? + UIStatusBarStyle + UIStatusBarStyleLightContent + CFBundleIdentifier + com.xamarin.firebase.ios.MLKitVisionSample + Custom Property + + CFBundleDisplayName + MLKitSample + + diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/LaunchScreen.storyboard b/samples/MLKit/MLKitVision/MLKitVisionSample/LaunchScreen.storyboard new file mode 100644 index 000000000..7981a14b7 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/LaunchScreen.storyboard @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/MLKitVisionSample.csproj b/samples/MLKit/MLKitVision/MLKitVisionSample/MLKitVisionSample.csproj new file mode 100644 index 000000000..3254e1dc2 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/MLKitVisionSample.csproj @@ -0,0 +1,215 @@ + + + + + Debug + iPhoneSimulator + {8C118A0A-18D5-4E01-A83D-11DBD98DAF2F} + {FEACFBD2-3405-455C-9665-78FE426C6842};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + Exe + MLKitVisionSample + MLKitVisionSample + Resources + latest + + + true + full + false + bin\iPhoneSimulator\Debug + DEBUG;ENABLE_TEST_CLOUD; + prompt + 4 + false + iPhone Developer + true + false + true + None + x86_64 + NSUrlSessionHandler + Default + x86 + + + true + bin\iPhone\Release + prompt + 4 + false + iPhone Developer + true + Entitlements.plist + SdkOnly + ARM64 + NSUrlSessionHandler + Default + x86 + false + + + true + bin\iPhoneSimulator\Release + prompt + 4 + false + iPhone Developer + None + x86_64 + NSUrlSessionHandler + Default + x86 + + + true + full + false + bin\iPhone\Debug + DEBUG;ENABLE_TEST_CLOUD; + prompt + 4 + false + iPhone Developer + true + true + false + true + true + Entitlements.plist + None + ARM64 + NSUrlSessionHandler + Default + x86 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ViewController.cs + + + + SettingsViewController.cs + + + + + + + + + + + + + + + + + + TextRecognitionLatin + + + TextRecognition + + + TextRecognitionKorean + + + TextRecognitionJapanese + + + TextRecognitionDevanagari + + + TextRecognitionChinese + + + BarcodeScanning + + + FaceDetection + + + {720DD721-A108-488A-83CA-8DACF2D6D506} + Core + + + {9335A59B-3B54-4ED5-8201-B68CFD05CAFB} + Core + + + DigitalInkRecognition + + + {AB6D62E6-8B42-401A-9E9E-E963EA0AE176} + Vision + + + {847E4CEC-590D-4209-954B-0DBCB727DF64} + ObjectDetection + + + {AE0A53F7-D079-4363-8B96-6A5C86DA5FA6} + ImageLabeling + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Main.cs b/samples/MLKit/MLKitVision/MLKitVisionSample/Main.cs new file mode 100644 index 000000000..ace6eaadb --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Main.cs @@ -0,0 +1,13 @@ +using UIKit; + +namespace MLKitVisionSample { + public class Application { + // This is the main entry point of the application. + static void Main (string [] args) + { + // if you want to use a different Application Delegate class from "AppDelegate" + // you can specify it here. + UIApplication.Main (args, null, "AppDelegate"); + } + } +} diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Main.storyboard b/samples/MLKit/MLKitVision/MLKitVisionSample/Main.storyboard new file mode 100644 index 000000000..f509ccba1 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Main.storyboard @@ -0,0 +1,197 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Lorem ipsum dolor sit er elit lamet, consectetaur cillium adipisicing pecu, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Nam liber te conscient to factor tum poen legum odioque civiuda. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Models/Constants.cs b/samples/MLKit/MLKitVision/MLKitVisionSample/Models/Constants.cs new file mode 100644 index 000000000..67b78d33e --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Models/Constants.cs @@ -0,0 +1,10 @@ +using System; + +using Foundation; + +namespace MLKitVisionSample { + public static class Constants { + public static NSString PrepareForUnwind { get; } = new NSString ("PrepareForUnwind"); + public static NSString CellKey { get; } = new NSString ("ResourceTableViewCell"); + } +} diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Models/TextRecognitionScript.cs b/samples/MLKit/MLKitVision/MLKitVisionSample/Models/TextRecognitionScript.cs new file mode 100644 index 000000000..00b5d09cf --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Models/TextRecognitionScript.cs @@ -0,0 +1,11 @@ +using System; +using ObjCRuntime; +namespace MLKitVisionSample { + public enum TextRecognitionScript { + Latin, + Chinese, + Devanagari, + Japanese, + Korean + } +} diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Models/VisionType.cs b/samples/MLKit/MLKitVision/MLKitVisionSample/Models/VisionType.cs new file mode 100644 index 000000000..b9a5c9f49 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/Models/VisionType.cs @@ -0,0 +1,14 @@ +using System; +using ObjCRuntime; +namespace MLKitVisionSample { + public enum VisionType { + TextRecognition, + FaceDetection, + PoseDetection, + SelfieSegmentation, + BarcodeScanning, + ImageLabeling, + ObjectDetectionAndTracking, + DigitalInkRecognition + } +} diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/BarcodeScanning.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/BarcodeScanning.png new file mode 100644 index 000000000..7dd97d551 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/BarcodeScanning.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/DigitalInkRecognition.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/DigitalInkRecognition.png new file mode 100644 index 000000000..c54b658b4 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/DigitalInkRecognition.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/FaceDetection.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/FaceDetection.png new file mode 100644 index 000000000..2e0442b84 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/FaceDetection.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/ImageLabeling.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/ImageLabeling.png new file mode 100644 index 000000000..b52cf88ef Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/ImageLabeling.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/ObjectDetectionAndTracking.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/ObjectDetectionAndTracking.png new file mode 100644 index 000000000..d34d980a1 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/ObjectDetectionAndTracking.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/TextRecognition.png b/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/TextRecognition.png new file mode 100644 index 000000000..aaeaa97c5 Binary files /dev/null and b/samples/MLKit/MLKitVision/MLKitVisionSample/Resources/TextRecognition.png differ diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/StringExtensions.cs b/samples/MLKit/MLKitVision/MLKitVisionSample/StringExtensions.cs new file mode 100644 index 000000000..8b9bce3d3 --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/StringExtensions.cs @@ -0,0 +1,23 @@ +using System.Text; +using UIKit; + +namespace MLKitVisionSample { + public static class StringExtensions { + public static string GetTitle (this string value) + { + if (string.IsNullOrWhiteSpace (value)) + return value; + + var sb = new StringBuilder (); + foreach (var c in value) { + if (sb.Length > 0 && char.IsUpper (c)) { + sb.Append (' '); + } + + sb.Append (c); + } + + return sb.ToString (); + } + } +} diff --git a/samples/MLKit/MLKitVision/MLKitVisionSample/packages.config b/samples/MLKit/MLKitVision/MLKitVisionSample/packages.config new file mode 100644 index 000000000..60c59b79d --- /dev/null +++ b/samples/MLKit/MLKitVision/MLKitVisionSample/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/source/Firebase/ABTesting/ABTesting.csproj b/source/Firebase/ABTesting/ABTesting.csproj index 85a81d5ee..933ec5eb1 100644 --- a/source/Firebase/ABTesting/ABTesting.csproj +++ b/source/Firebase/ABTesting/ABTesting.csproj @@ -6,7 +6,7 @@ Firebase.ABTesting Firebase.ABTesting 1.0.0.0 - 4.2.0 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=2004275 License.md true - 4.2.0 + 8.10.0 @@ -67,7 +67,7 @@ - + diff --git a/source/Firebase/ABTesting/ApiDefinition.cs b/source/Firebase/ABTesting/ApiDefinition.cs index f0d288cbd..d144e7e22 100644 --- a/source/Firebase/ABTesting/ApiDefinition.cs +++ b/source/Firebase/ABTesting/ApiDefinition.cs @@ -1,5 +1,6 @@ using Foundation; using ObjCRuntime; +using System; namespace Firebase.ABTesting { // @interface FIRExperimentController : NSObject @@ -11,13 +12,21 @@ interface ExperimentController { [Export ("sharedInstance")] ExperimentController SharedInstance { get; } - // -(void)updateExperimentsWithServiceOrigin:(NSString * _Nonnull)origin events:(FIRLifecycleEvents * _Nonnull)events policy:(NSObject * _Nonnull)policy lastStartTime:(NSTimeInterval)lastStartTime payloads:(NSArray * _Nonnull)payloads; - [Export ("updateExperimentsWithServiceOrigin:events:policy:lastStartTime:payloads:")] - void UpdateExperiments (string origin, LifecycleEvents events, NSObject policy, double lastStartTime, NSData [] payloads); + // -(void)updateExperimentsWithServiceOrigin:(NSString * _Nonnull)origin events:(FIRLifecycleEvents * _Nonnull)events policy:(ABTExperimentPayloadExperimentOverflowPolicy)policy lastStartTime:(NSTimeInterval)lastStartTime payloads:(NSArray * _Nonnull)payloads completionHandler:(void (^ _Nullable)(NSError * _Nullable))completionHandler; + [Export ("updateExperimentsWithServiceOrigin:events:policy:lastStartTime:payloads:completionHandler:")] + void UpdateExperiments (string origin, LifecycleEvents events, NSObject policy, double lastStartTime, NSData [] payloads, [NullAllowed] Action completionHandler); // -(NSTimeInterval)latestExperimentStartTimestampBetweenTimestamp:(NSTimeInterval)timestamp andPayloads:(NSArray * _Nonnull)payloads; [Export ("latestExperimentStartTimestampBetweenTimestamp:andPayloads:")] double GetLatestExperimentStartTimestampBetweenTimestamp (double timestamp, NSData [] payloads); + + // -(void)validateRunningExperimentsForServiceOrigin:(NSString * _Nonnull)origin runningExperimentPayloads:(NSArray * _Nonnull)payloads; + [Export ("validateRunningExperimentsForServiceOrigin:runningExperimentPayloads:")] + void ValidateRunningExperiments (string origin, NSObject [] payloads); + + // -(void)activateExperiment:(ABTExperimentPayload * _Nonnull)experimentPayload forServiceOrigin:(NSString * _Nonnull)origin; + [Export ("activateExperiment:forServiceOrigin:")] + void ActivateExperiment (NSObject experimentPayload, string origin); } [Static] diff --git a/source/Firebase/AdMob/AdMob.csproj b/source/Firebase/AdMob/AdMob.csproj index e368c72c9..4596cf9dd 100644 --- a/source/Firebase/AdMob/AdMob.csproj +++ b/source/Firebase/AdMob/AdMob.csproj @@ -6,7 +6,7 @@ Firebase.AdMob Firebase.AdMob 1.0.0.0 - 7.66.0 + 8.13.0 Resources true false @@ -24,7 +24,7 @@ https://go.microsoft.com/fwlink/?linkid=865546 License.md true - 7.66.0 + 8.13.0 @@ -54,7 +54,7 @@ - + diff --git a/source/Firebase/Analytics/Analytics.csproj b/source/Firebase/Analytics/Analytics.csproj index 5a2548bf7..3370eddd5 100644 --- a/source/Firebase/Analytics/Analytics.csproj +++ b/source/Firebase/Analytics/Analytics.csproj @@ -6,9 +6,10 @@ Firebase.Analytics Firebase.Analytics 1.0.0.0 - 6.9.0 + 8.10.0 Resources true + true @@ -23,7 +24,7 @@ https://go.microsoft.com/fwlink/?linkid=865559 License.md true - 6.9.0 + 8.10.0 @@ -46,16 +47,13 @@ - - - - + - + diff --git a/source/Firebase/Analytics/Analytics.targets b/source/Firebase/Analytics/Analytics.targets index 6df02fbda..ea08da4a9 100644 --- a/source/Firebase/Analytics/Analytics.targets +++ b/source/Firebase/Analytics/Analytics.targets @@ -1,34 +1,29 @@ - + <_FirebaseAnalyticsAssemblyName>Firebase.Analytics, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - <_FirebaseAnalyticsItemsFolder>FAnlytcs-6.9.0 - <_FirebaseAnalyticsSDKBaseFolder>$(XamarinBuildDownloadDir)$(_FirebaseAnalyticsItemsFolder)\Frameworks\ + <_FirebaseAnalyticsItemsFolder>FAnlytcs-8.9.1 + <_FirebaseAnalyticsSDKBaseFolder>$(XamarinBuildDownloadDir)$(_FirebaseAnalyticsItemsFolder)\FirebaseAnalytics-8.9.1\Frameworks\ - https://dl.google.com/firebase/ios/analytics/560b7928a9322b07/FirebaseAnalytics-6.9.0.tar.gz + https://dl.google.com/firebase/ios/analytics/66ce3623aa8037ff/FirebaseAnalytics-8.9.1.tar.gz Tgz - - + + Framework True True -ObjC -lc++ -lsqlite3 -lz - AddressBook AdSupport CoreGraphics StoreKit SystemConfiguration - - - Framework - True - True + StoreKit - + \ No newline at end of file diff --git a/source/Firebase/Analytics/ApiDefinition.cs b/source/Firebase/Analytics/ApiDefinition.cs index 18e029152..2d371c394 100644 --- a/source/Firebase/Analytics/ApiDefinition.cs +++ b/source/Firebase/Analytics/ApiDefinition.cs @@ -30,11 +30,6 @@ interface Analytics [Export ("setUserID:")] void SetUserId ([NullAllowed] string userId); - // + (void)setScreenName:(nullable NSString *)screenName screenClass:(nullable NSString *)screenClassOverride; - [Static] - [Export ("setScreenName:screenClass:")] - void SetScreenNameAndClass ([NullAllowed] string screenName, [NullAllowed] string screenClassOverride); - // +(void)setAnalyticsCollectionEnabled:(BOOL)analyticsCollectionEnabled; [Static] [Export ("setAnalyticsCollectionEnabled:")] @@ -45,7 +40,7 @@ interface Analytics [Export ("setSessionTimeoutInterval:")] void SetSessionTimeoutInterval (double sessionTimeoutInterval); - // + (NSString *)appInstanceID; + // + (nullable NSString *)appInstanceID; [Static] [Export ("appInstanceID")] string AppInstanceId { get; } @@ -55,6 +50,15 @@ interface Analytics [Export ("resetAnalyticsData")] void ResetAnalyticsData (); + // +(void)setDefaultEventParameters:(NSDictionary * _Nullable)parameters; + [Static] + [Export ("setDefaultEventParameters:")] + void SetDefaultEventParameters ([NullAllowed] NSDictionary nsParameters); + + [Static] + [Wrap ("SetDefaultEventParameters (parameters == null ? null : parameters.Keys.Count == 0 ? new NSDictionary () : NSDictionary.FromObjectsAndKeys (System.Linq.Enumerable.ToArray (parameters.Values), System.Linq.Enumerable.ToArray (parameters.Keys), parameters.Keys.Count))")] + void SetDefaultEventParameters ([NullAllowed] Dictionary parameters); + /// /// This method comes from a category (FIRAnalytics+AppDelegate.h) /// @@ -73,5 +77,15 @@ interface Analytics [Static] [Export ("handleUserActivity:")] void HandleUserActivity (NSObject userActivity); + + /// + /// This method comes from a category (FIRAnalytics+Constent.h) + /// + + // + (void)setConsent:(NSDictionary *)consentSettings; + [Static] + [Internal] + [Export ("setConsent:")] + void _SetConsent (NSDictionary consentSettings); } } diff --git a/source/Firebase/Analytics/Enums.cs b/source/Firebase/Analytics/Enums.cs index 4c8a99e2a..608593bd3 100644 --- a/source/Firebase/Analytics/Enums.cs +++ b/source/Firebase/Analytics/Enums.cs @@ -1,6 +1,28 @@ using System; +using System.Collections.Generic; + +using Foundation; using ObjCRuntime; namespace Firebase.Analytics { + public enum ConsentType { + // extern FIRConsentType const FIRConsentTypeAdStorage; + [Field ("FIRConsentTypeAdStorage", "__Internal")] + AdStorage, + + // extern FIRConsentType const FIRConsentTypeAnalyticsStorage; + [Field ("FIRConsentTypeAnalyticsStorage", "__Internal")] + AnalyticsStorage, + } + + public enum ConsentStatus { + // extern FIRConsentStatus const FIRConsentStatusDenied; + [Field ("FIRConsentStatusDenied", "__Internal")] + Denied, + + // extern FIRConsentStatus const FIRConsentStatusGranted; + [Field ("FIRConsentStatusGranted", "__Internal")] + Granted, + } } diff --git a/source/Firebase/Analytics/Extension.cs b/source/Firebase/Analytics/Extension.cs index aa1d1311d..fe6447543 100644 --- a/source/Firebase/Analytics/Extension.cs +++ b/source/Firebase/Analytics/Extension.cs @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; using Foundation; namespace Firebase.Analytics @@ -8,6 +9,7 @@ public static class EventNamesConstants public static NSString AddPaymentInfo { get; } = new NSString ("add_payment_info"); public static NSString AddToCart { get; } = new NSString ("add_to_cart"); public static NSString AddToWishlist { get; } = new NSString ("add_to_wishlist"); + public static NSString AdImpression { get; } = new NSString ("ad_impression"); public static NSString AppOpen { get; } = new NSString ("app_open"); public static NSString BeginCheckout { get; } = new NSString ("begin_checkout"); public static NSString CampaignDetails { get; } = new NSString ("campaign_details"); @@ -24,6 +26,7 @@ public static class EventNamesConstants public static NSString PresentOffer { get; } = new NSString ("present_offer"); public static NSString PurchaseRefund { get; } = new NSString ("purchase_refund"); public static NSString RemoveFromCart { get; } = new NSString ("remove_from_cart"); + public static NSString ScreenView { get; } = new NSString ("screen_view"); public static NSString Search { get; } = new NSString ("search"); public static NSString SelectContent { get; } = new NSString ("select_content"); public static NSString SetCheckoutOption { get; } = new NSString ("set_checkout_option"); @@ -48,7 +51,11 @@ public static class EventNamesConstants public static class ParameterNamesConstants { public static NSString AchievementId { get; } = new NSString ("achievement_id"); + public static NSString AdFormat { get; } = new NSString ("ad_format"); public static NSString AdNetworkClickId { get; } = new NSString ("aclid"); + public static NSString AdPlatform { get; } = new NSString ("ad_platform"); + public static NSString AdSource { get; } = new NSString ("ad_source"); + public static NSString AdUnitName { get; } = new NSString ("ad_unit_name"); public static NSString Affiliation { get; } = new NSString ("affiliation"); public static NSString Campaign { get; } = new NSString ("campaign"); public static NSString Character { get; } = new NSString ("character"); @@ -83,6 +90,8 @@ public static class ParameterNamesConstants public static NSString Price { get; } = new NSString ("price"); public static NSString Quantity { get; } = new NSString ("quantity"); public static NSString Score { get; } = new NSString ("score"); + public static NSString ScreenClass { get; } = new NSString ("screen_class"); + public static NSString ScreenName { get; } = new NSString ("score_name"); public static NSString SearchTerm { get; } = new NSString ("search_term"); public static NSString Shipping { get; } = new NSString ("shipping"); [Obsolete ("Use Method property instead.")] @@ -119,5 +128,20 @@ public static class UserPropertyNamesConstants public static NSString SignUpMethod { get; } = new NSString ("sign_up_method"); public static NSString AllowAdPersonalizationSignals { get; } = new NSString ("allow_personalized_ads"); } + + public partial class Analytics { + public static void SetConsent (Dictionary consentSettings) + { + var keys = new List (); + var values = new List (); + + foreach (var kv in consentSettings) { + keys.Add (global::Firebase.Analytics.ConsentTypeExtensions.GetConstant (kv.Key)); + values.Add (global::Firebase.Analytics.ConsentStatusExtensions.GetConstant (kv.Value)); + } + + _SetConsent (new NSDictionary (keys.ToArray (), values.ToArray ())); + } + } } diff --git a/source/Firebase/AppCheck/ApiDefinition.cs b/source/Firebase/AppCheck/ApiDefinition.cs new file mode 100644 index 000000000..ede32575d --- /dev/null +++ b/source/Firebase/AppCheck/ApiDefinition.cs @@ -0,0 +1,135 @@ +using System; +using Firebase.Core; +using Foundation; + +namespace Firebase.AppCheck { + // typedef void (^)(FIRAppCheckToken *_Nullable token, NSError *_Nullable error) + delegate void TokenCompletionHandler (AppCheckToken token, NSError error); + + // @interface FIRAppCheck : NSObject + [DisableDefaultCtor] + [BaseType (typeof (NSObject), Name = "FIRAppCheck")] + interface AppCheck { + // extern NS_SWIFT_NAME(AppCheckTokenDidChange) const NSNotificationName FIRAppCheckAppCheckTokenDidChangeNotification __attribute__((swift_name("AppCheckTokenDidChange"))); + [Field ("FIRAppCheckAppCheckTokenDidChangeNotification", "__Internal")] + NSString TokenDidChangeNotification { get; } + + // extern NS_SWIFT_NAME(AppCheckTokenNotificationKey) NSString *const kFIRAppCheckTokenNotificationKey __attribute__((swift_name("AppCheckTokenNotificationKey"))); + [Field ("kFIRAppCheckTokenNotificationKey", "__Internal")] + NSString TokenNotificationKey { get; } + + // extern NS_SWIFT_NAME(AppCheckAppNameNotificationKey) NSString *const kFIRAppCheckAppNameNotificationKey __attribute__((swift_name("AppCheckAppNameNotificationKey"))); + [Field ("kFIRAppCheckAppNameNotificationKey", "__Internal")] + NSString AppNameNotificationKey { get; } + + // +(instancetype _Nonnull)appCheck __attribute__((swift_name("appCheck()"))); + [Static] + [Export ("appCheck")] + AppCheck SharedInstance { get; } + + // +(instancetype _Nullable)appCheckWithApp:(FIRApp * _Nonnull)firebaseApp __attribute__((swift_name("appCheck(app:)"))); + [Static] + [Export ("appCheckWithApp:")] + [return: NullAllowed] + AppCheck Create (App firebaseApp); + + // -(void)tokenForcingRefresh:(BOOL)forcingRefresh completion:(void (^ _Nonnull)(FIRAppCheckToken * _Nullable, NSError * _Nullable))handler __attribute__((swift_name("token(forcingRefresh:completion:)"))); + [Export ("tokenForcingRefresh:completion:")] + void TokenForcingRefresh (bool forcingRefresh, TokenCompletionHandler handler); + + // +(void)setAppCheckProviderFactory:(id _Nullable)factory; + [Static] + [Export ("setAppCheckProviderFactory:")] + void SetAppCheckProviderFactory ([NullAllowed] AppCheckProviderFactory factory); + + // @property (assign, nonatomic) BOOL isTokenAutoRefreshEnabled; + [Export ("isTokenAutoRefreshEnabled")] + bool IsTokenAutoRefreshEnabled { get; set; } + } + + // @protocol FIRAppCheckProvider + [Protocol] + [BaseType (typeof (NSObject), Name = "FIRAppCheckProvider")] + interface AppCheckProvider { + // @required -(void)getTokenWithCompletion:(void (^ _Nonnull)(FIRAppCheckToken * _Nullable, NSError * _Nullable))handler __attribute__((swift_name("getToken(completion:)"))); + [Abstract] + [Export ("getTokenWithCompletion:")] + void GetTokenWithCompletion (TokenCompletionHandler handler); + } + + // @protocol FIRAppCheckProviderFactory + [Protocol] + [BaseType (typeof (NSObject), Name = "FIRAppCheckProviderFactory")] + interface AppCheckProviderFactory { + // @required -(id _Nullable)createProviderWithApp:(FIRApp * _Nonnull)app; + [Abstract] + [Export ("createProviderWithApp:")] + [return: NullAllowed] + AppCheckProvider CreateProviderWithApp (App app); + } + + // @interface FIRAppCheckToken : NSObject + [DisableDefaultCtor] + [BaseType (typeof (NSObject), Name = "FIRAppCheckToken")] + interface AppCheckToken { + // @property (readonly, nonatomic) NSString * _Nonnull token; + [Export ("token")] + string Token { get; } + + // @property (readonly, nonatomic) NSDate * _Nonnull expirationDate; + [Export ("expirationDate")] + NSDate ExpirationDate { get; } + + // -(instancetype _Nonnull)initWithToken:(NSString * _Nonnull)token expirationDate:(NSDate * _Nonnull)expirationDate; + [Export ("initWithToken:expirationDate:")] + IntPtr Constructor (string token, NSDate expirationDate); + } + + // @interface FIRAppCheckDebugProvider : NSObject + [DisableDefaultCtor] + [BaseType (typeof (NSObject), Name = "FIRAppCheckDebugProvider")] + interface AppCheckDebugProvider : AppCheckProvider { + // -(instancetype _Nullable)initWithApp:(FIRApp * _Nonnull)app; + [Export ("initWithApp:")] + IntPtr Constructor (App app); + + // -(NSString * _Nonnull)localDebugToken; + [Export ("localDebugToken")] + string LocalDebugToken { get; } + + // -(NSString * _Nonnull)currentDebugToken; + [Export ("currentDebugToken")] + string CurrentDebugToken { get; } + } + + // @interface FIRAppCheckDebugProviderFactory : NSObject + [BaseType (typeof (NSObject), Name = "FIRAppCheckDebugProviderFactory")] + interface AppCheckDebugProviderFactory : AppCheckProviderFactory { + } + + // @interface FIRDeviceCheckProvider : NSObject + //[TV (11, 0), NoWatch, Mac (10, 15), iOS (11, 0)] + [DisableDefaultCtor] + [BaseType (typeof (NSObject), Name = "FIRDeviceCheckProvider")] + interface DeviceCheckProvider : AppCheckProvider { + // -(instancetype _Nullable)initWithApp:(FIRApp * _Nonnull)app; + [Export ("initWithApp:")] + IntPtr Constructor (App app); + } + + // @interface FIRAppAttestProvider : NSObject + //[NoTV, NoWatch, NoMac, iOS (14, 0)] + [DisableDefaultCtor] + [BaseType (typeof (NSObject), Name = "FIRAppAttestProvider")] + interface AppAttestProvider : AppCheckProvider { + // -(instancetype _Nullable)initWithApp:(FIRApp * _Nonnull)app; + [Export ("initWithApp:")] + IntPtr Constructor (App app); + } + + // @interface FIRDeviceCheckProviderFactory : NSObject + //[TV (11, 0), NoWatch, Mac (10, 15), iOS (11, 0)] + [BaseType (typeof (NSObject), Name = "FIRDeviceCheckProviderFactory")] + interface DeviceCheckProviderFactory : AppCheckProviderFactory { + } +} diff --git a/source/Firebase/AppCheck/AppCheck.csproj b/source/Firebase/AppCheck/AppCheck.csproj new file mode 100644 index 000000000..5cb9f866d --- /dev/null +++ b/source/Firebase/AppCheck/AppCheck.csproj @@ -0,0 +1,76 @@ + + + + Xamarin.iOS10 + true + Firebase.AppCheck + Firebase.AppCheck + 1.0.0.0 + 8.10.0 + Resources + true + + + + Xamarin.Firebase.iOS.AppCheck + Firebase APIs App Check iOS Library + C# bindings for Firebase APIs App Check iOS Library + C# bindings for Firebase APIs App Check iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseiosappcheck_128x128.png + https://go.microsoft.com/fwlink/?linkid=865559 + License.md + true + 8.10.0 + + + + + + + + + + + + + FirebaseAppCheck.framework + + + + + + + + Framework + True + True + -ObjC + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/Firebase/AppCheck/Enums.cs b/source/Firebase/AppCheck/Enums.cs new file mode 100644 index 000000000..47511e0e4 --- /dev/null +++ b/source/Firebase/AppCheck/Enums.cs @@ -0,0 +1,15 @@ +using System; +using ObjCRuntime; + +namespace Firebase.AppCheck +{ + [Native] + public enum ErrorCode : long + { + Unknown = 0, + ServerUnreachable = 1, + InvalidConfiguration = 2, + Keychain = 3, + Unsupported = 4 + } +} diff --git a/source/Firebase/AppCheck/License.md b/source/Firebase/AppCheck/License.md new file mode 100644 index 000000000..bbed91285 --- /dev/null +++ b/source/Firebase/AppCheck/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [Firebase App Check for iOS](https://firebase.google.com/docs/analytics/ios/start), which is subject to the [Terms of Service for Firebase Services](https://firebase.google.com/terms/). + +### Xamarin Component for Firebase App Distribution for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/Firebase/AppCheck/Loader.cs b/source/Firebase/AppCheck/Loader.cs new file mode 100644 index 000000000..649a40880 --- /dev/null +++ b/source/Firebase/AppCheck/Loader.cs @@ -0,0 +1,25 @@ +using System; + +namespace Firebase.AppCheck +{ + public class Loader + { + static Loader () + { + Firebase.Core.Loader.ForceLoad (); + } + + public static void ForceLoad () { } + } +} + +namespace ApiDefinition +{ + partial class AppCheck + { + static AppCheck () + { + Firebase.AppCheck.Loader.ForceLoad (); + } + } +} diff --git a/source/Firebase/AppDistribution/ApiDefinition.cs b/source/Firebase/AppDistribution/ApiDefinition.cs new file mode 100644 index 000000000..77ec735aa --- /dev/null +++ b/source/Firebase/AppDistribution/ApiDefinition.cs @@ -0,0 +1,75 @@ +using System; +using System.Collections.Generic; + +using Foundation; +using ObjCRuntime; + +namespace Firebase.AppDistribution +{ + // (void (^)(NSError *_Nullable error))completion + delegate void ErrorHandler ([NullAllowed] NSError error); + + // (void (^)(FIRAppDistributionRelease *_Nullable release, NSError *_Nullable error))completion + delegate void AppDistributionReleaseHandler ([NullAllowed] AppDistributionRelease release, [NullAllowed] NSError error); + + // @interface FIRAppDistribution : NSObject + [DisableDefaultCtor] + [BaseType (typeof (NSObject), Name = "FIRAppDistribution")] + interface AppDistribution + { + // NSString *const FIRAppDistributionErrorDomain + [Field ("FIRAppDistributionErrorDomain", "__Internal")] + NSString ErrorDomain { get; } + + // NSString *const FIRAppDistributionErrorDetailsKey + [Field ("FIRAppDistributionErrorDetailsKey", "__Internal")] + NSString ErrorDetailsKey { get; } + + // + (instancetype)appDistribution + [Static] + [Export("appDistribution")] + AppDistribution SharedInstance { get; } + + // @property(nonatomic, readonly) BOOL isTesterSignedIn; + [Export ("isTesterSignedIn")] + bool IsTesterSignedIn { get; } + + // - (void)signInTesterWithCompletion: (void (^)(NSError *_Nullable error))completion + [Export ("signInTesterWithCompletion:")] + void SigInTester (ErrorHandler completion); + + // - (void)checkForUpdateWithCompletion: (void (^)(FIRAppDistributionRelease *_Nullable release, NSError *_Nullable error))completion; + [Export ("checkForUpdateWithCompletion:")] + void SigInTester (AppDistributionReleaseHandler completion); + + // - (void)signOutTester; + [Export ("signOutTester:")] + void SignOutTester (); + } + + // @interface FIRAppDistributionRelease : NSObject + [DisableDefaultCtor] + [BaseType (typeof (NSObject), Name = "FIRAppDistributionRelease")] + interface Release + { + // @property(nonatomic, copy, readonly) NSString *displayVersion; + [Export ("displayVersion")] + string DisplayVersion { get; } + + // @property(nonatomic, copy, readonly) NSString *buildVersion; + [Export ("buildVersion")] + string BuildVersion { get; } + + // @property(nonatomic, copy, readonly) NSString *releaseNotes; + [Export ("releaseNotes")] + string ReleaseNotes { get; } + + // @property(nonatomic, strong, readonly) NSURL *downloadURL; + [Export ("displayVersion")] + NSURL DownloadUrl { get; } + + // @property(nonatomic, readonly) BOOL isExpired; + [Export ("isExpired")] + bool IsExpired { get; } + } +} diff --git a/source/Firebase/AppDistribution/AppDistribution.csproj b/source/Firebase/AppDistribution/AppDistribution.csproj new file mode 100644 index 000000000..7c4b0fa3e --- /dev/null +++ b/source/Firebase/AppDistribution/AppDistribution.csproj @@ -0,0 +1,77 @@ + + + + Xamarin.iOS10 + true + Firebase.AppDistribution + Firebase.AppDistribution + 1.0.0.0 + 8.10.0 + Resources + true + + + + Xamarin.Firebase.iOS.AppDistribution + Firebase APIs App Distribution iOS Library + C# bindings for Firebase APIs App Distribution iOS Library + C# bindings for Firebase APIs App Distribution iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseiosappdistribution_128x128.png + https://go.microsoft.com/fwlink/?linkid=865559 + License.md + true + 8.10.0 + + + + + + + + + + + + + FirebaseAppDistribution.framework + + + + + + + + Framework + True + True + -ObjC + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/Firebase/AppDistribution/Enums.cs b/source/Firebase/AppDistribution/Enums.cs new file mode 100644 index 000000000..2a40b9db4 --- /dev/null +++ b/source/Firebase/AppDistribution/Enums.cs @@ -0,0 +1,13 @@ +using System; +using ObjCRuntime; + +namespace Firebase.AppDistribution +{ + [Native] + public enum Error : uint { + Unknown = 0, + AuthenticationFailure = 1, + AuthenticationCancelled = 2, + NetworkFailure = 3, + } +} diff --git a/source/Firebase/AppDistribution/License.md b/source/Firebase/AppDistribution/License.md new file mode 100644 index 000000000..9d547703f --- /dev/null +++ b/source/Firebase/AppDistribution/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [Firebase App Distribution for iOS](https://firebase.google.com/docs/analytics/ios/start), which is subject to the [Terms of Service for Firebase Services](https://firebase.google.com/terms/). + +### Xamarin Component for Firebase App Distribution for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/Firebase/AppDistribution/Loader.cs b/source/Firebase/AppDistribution/Loader.cs new file mode 100644 index 000000000..3739ff45b --- /dev/null +++ b/source/Firebase/AppDistribution/Loader.cs @@ -0,0 +1,26 @@ +using System; + +namespace Firebase.AppDistribution +{ + public class Loader + { + static Loader () + { + Firebase.Installations.Loader.ForceLoad(); + Firebase.Core.Loader.ForceLoad (); + } + + public static void ForceLoad () { } + } +} + +namespace ApiDefinition +{ + partial class AppDistribution + { + static AppDistribution () + { + Firebase.AppDistribution.Loader.ForceLoad (); + } + } +} diff --git a/source/Firebase/Auth/ApiDefinition.cs b/source/Firebase/Auth/ApiDefinition.cs index 8a62be6d1..bda25ea9d 100644 --- a/source/Firebase/Auth/ApiDefinition.cs +++ b/source/Firebase/Auth/ApiDefinition.cs @@ -122,11 +122,6 @@ interface ActionCodeInfo [Export ("operation")] ActionCodeOperation Operation { get; } - // -(NSString * _Nonnull)dataForKey:(FIRActionDataKey)key; - [Obsolete ("Deprecated. Please directly use Email or PreviousEmail properties instead.")] - [Export ("dataForKey:")] - string DataForKey (ActionDataKey key); - // @property (readonly, copy, nonatomic) NSString * _Nullable email; [NullAllowed] [Export ("email")] @@ -182,15 +177,6 @@ interface ActionCodeUrl [BaseType (typeof (NSObject), Name = "FIRAuth")] interface Auth { - // extern const double FirebaseAuthVersionNum; - [Field ("FirebaseAuthVersionNum", "__Internal")] - double CurrentVersionNumber { get; } - - // extern const char *const FirebaseAuthVersionStr; - [Internal] - [Field ("FirebaseAuthVersionStr", "__Internal")] - IntPtr _CurrentVersion { get; } - // extern NSString *const FIRAuthErrorDomain; [Field ("FIRAuthErrorDomain", "__Internal")] NSString ErrorDomain { get; } @@ -253,6 +239,10 @@ interface Auth [Export ("userAccessGroup")] string UserAccessGroup { get; } + // @property (nonatomic) BOOL shareAuthStateAcrossDevices; + [Export ("shareAuthStateAcrossDevices")] + bool ShareAuthStateAcrossDevices { get; set; } + [NullAllowed] [Export ("APNSToken", ArgumentSemantic.Strong)] NSData ApnsToken { get; set; } @@ -262,12 +252,6 @@ interface Auth [Export ("updateCurrentUser:completion:")] void UpdateCurrentUser (User user, [NullAllowed] UserUpdateHandler completion); - // -(void)fetchProvidersForEmail:(NSString * _Nonnull)email completion:(FIRProviderQueryCallback _Nullable)completion; - [Obsolete ("Use the FetchSignInMethods method instead.")] - [Async] - [Export ("fetchProvidersForEmail:completion:")] - void FetchProviders (string email, [NullAllowed] ProviderQueryHandler completion); - // -(void)fetchSignInMethodsForEmail:(NSString * _Nonnull)email completion:(FIRSignInMethodQueryCallback _Nullable)completion; [Async] [Export ("fetchSignInMethodsForEmail:completion:")] @@ -288,12 +272,6 @@ interface Auth [Export ("signInWithProvider:UIDelegate:completion:")] void SignInWithProvider (IFederatedAuthProvider provider, [NullAllowed] IAuthUIDelegate uiDelegate, [NullAllowed] AuthDataResultHandler completion); - // - (void)signInAndRetrieveDataWithCredential:(FIRAuthCredential *)credential completion:(nullable FIRAuthDataResultCallback) completion; - [Obsolete ("Please, use SignInWithCredential method instead.")] - [Async] - [Export ("signInAndRetrieveDataWithCredential:completion:")] - void SignInAndRetrieveDataWithCredential (AuthCredential credential, [NullAllowed] AuthDataResultHandler completion); - // - (void) signInWithCredential:(FIRAuthCredential*) credential completion:(nullable FIRAuthDataResultCallback) completion; [Async] [Export ("signInWithCredential:completion:")] @@ -377,6 +355,10 @@ interface Auth [Export ("useAppLanguage")] void UseAppLanguage (); + // - (void)useEmulatorWithHost:(NSString *)host port:(NSInteger)port; + [Export ("useEmulatorWithHost:port:")] + void UseEmulatorWithHost (string host, nint port); + // - (BOOL)canHandleURL:(nonnull NSURL *)URL; [Export ("canHandleURL:")] bool CanHandleUrl (NSUrl url); @@ -799,11 +781,6 @@ interface PhoneAuthProvider [Export ("providerWithAuth:")] PhoneAuthProvider Create (Auth auth); - [Obsolete ("Use Create static method instead. This will be removed in future versions.")] - [Static] - [Wrap ("Create (auth)")] - PhoneAuthProvider From (Auth auth); - // - (void)verifyPhoneNumber:(NSString *)phoneNumber UIDelegate:(nullable id)UIDelegate completion:(nullable FIRVerificationResultCallback) completion; [Async] [Export ("verifyPhoneNumber:UIDelegate:completion:")] @@ -940,12 +917,6 @@ interface User : UserInfo [Export ("reauthenticateWithCredential:completion:")] void Reauthenticate (AuthCredential credential, [NullAllowed] UserProfileChangeHandler completion); - // -(void)reauthenticateAndRetrieveDataWithCredential:(FIRAuthCredential * _Nonnull)credential completion:(FIRAuthDataResultCallback _Nullable)completion; - [Obsolete ("Please, use Reauthenticate method instead.")] - [Async] - [Export ("reauthenticateAndRetrieveDataWithCredential:completion:")] - void ReauthenticateAndRetrieveData (AuthCredential credential, [NullAllowed] AuthDataResultHandler completion); - // -(void)reauthenticateWithProvider:(id _Nonnull)provider UIDelegate:(id _Nullable)UIDelegate completion:(FIRAuthDataResultCallback _Nullable)completion __attribute__((swift_name("reauthenticate(with:uiDelegate:completion:)"))) __attribute__((availability(ios, introduced=8.0))); [iOS (8,0)] [Async] @@ -972,12 +943,6 @@ interface User : UserInfo [Export ("getIDTokenForcingRefresh:completion:")] void GetIdToken (bool forceRefresh, [NullAllowed] AuthTokenHandler completion); - // -(void)linkAndRetrieveDataWithCredential:(FIRAuthCredential * _Nonnull)credential completion:(FIRAuthDataResultCallback _Nullable)completion; - [Obsolete ("Please, use Link method instead.")] - [Async] - [Export ("linkAndRetrieveDataWithCredential:completion:")] - void LinkAndRetrieveData (AuthCredential credential, [NullAllowed] AuthDataResultHandler completion); - // -(void)linkWithCredential:(FIRAuthCredential * _Nonnull)credential completion:(FIRAuthDataResultCallback _Nullable)completion; [Async] [Export ("linkWithCredential:completion:")] diff --git a/source/Firebase/Auth/Auth.csproj b/source/Firebase/Auth/Auth.csproj index d9d45470a..16566513e 100644 --- a/source/Firebase/Auth/Auth.csproj +++ b/source/Firebase/Auth/Auth.csproj @@ -6,7 +6,7 @@ Firebase.Auth Firebase.Auth 1.0.0.0 - 6.9.2 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=865530 License.md true - 6.9.2 + 8.10.0 @@ -67,7 +67,7 @@ - + diff --git a/source/Firebase/Auth/Enums.cs b/source/Firebase/Auth/Enums.cs index fea06d69a..bf6f39ec3 100644 --- a/source/Firebase/Auth/Enums.cs +++ b/source/Firebase/Auth/Enums.cs @@ -11,14 +11,6 @@ public enum AuthApnsTokenType : long Production } - [Obsolete ("Deprecated. Please directly use Email or PreviousEmail properties instead.")] - [Native] - public enum ActionDataKey : long - { - EmailKey = 0, - FromEmailKey = 1 - } - [Native] public enum ActionCodeOperation : long { diff --git a/source/Firebase/CloudFirestore/ApiDefinition.cs b/source/Firebase/CloudFirestore/ApiDefinition.cs index 2f33c63ac..efba8227e 100644 --- a/source/Firebase/CloudFirestore/ApiDefinition.cs +++ b/source/Firebase/CloudFirestore/ApiDefinition.cs @@ -340,6 +340,8 @@ interface FieldValue // void (^)(id _Nullable result, NSError *_Nullable error) delegate void TransactionCompletionHandler ([NullAllowed] NSObject result, [NullAllowed] NSError error); + // (nullable void (^)(FIRLoadBundleTaskProgress *_Nullable progress, NSError *_Nullable error) + delegate void LoadBundleCompletionHandler ([NullAllowed] LoadBundleTaskProgress progress, [NullAllowed] NSError error); // @interface FIRFirestore : NSObject [DisableDefaultCtor] @@ -393,6 +395,10 @@ interface Firestore [Export ("enableLogging:")] void EnableLogging (bool logging); + // - (void) useEmulatorWithHost:(NSString*) host port:(NSInteger) port; + [Export ("useEmulatorWithHost:port:")] + void UseEmulatorWithHost (string host, uint port); + // -(void)enableNetworkWithCompletion:(void (^ _Nullable)(NSError * _Nullable))completion; [Async] [Export ("enableNetworkWithCompletion:")] @@ -422,6 +428,68 @@ interface Firestore [Async] [Export ("terminateWithCompletion:")] void Terminate ([NullAllowed] Action completion); + + // - (FIRLoadBundleTask *)loadBundle:(NSData *)bundleData; + [Export ("loadBundle:")] + LoadBundleTask LoadBundle (NSData bundleData); + + // - (FIRLoadBundleTask *)loadBundle:(NSData *)bundleData completion:(nullable void (^)(FIRLoadBundleTaskProgress *_Nullable progress, NSError *_Nullable error))completion; + [Export ("loadBundle:completion:")] + LoadBundleTask LoadBundle (NSData bundleData, [NullAllowed] LoadBundleCompletionHandler completion); + + // - (FIRLoadBundleTask *)loadBundleStream:(NSInputStream *)bundleStream; + [Export ("loadBundleStream:")] + LoadBundleTask LoadBundleStream (NSInputStream bundleStream); + + // - (FIRLoadBundleTask *)loadBundleStream:(NSInputStream *)bundleStream completion: (nullable void (^)(FIRLoadBundleTaskProgress *_Nullable progress, NSError *_Nullable error))completion + [Export ("loadBundleStream:completion:")] + LoadBundleTask LoadBundleStream (NSInputStream bundleStream, [NullAllowed] LoadBundleCompletionHandler completion); + + // - (void)getQueryNamed:(NSString *)name completion:(void (^)(FIRQuery *_Nullable query))completion + [Export ("getQueryNamed:completion:")] + void GetQueryNamed (NSInputStream bundleStream, Action completion); + } + + // @interface FIRTimestamp : NSObject + [DisableDefaultCtor] + [BaseType (typeof (NSObject), Name = "FIRLoadBundleTaskProgress")] + interface LoadBundleTaskProgress { + // @property(readonly, nonatomic) NSInteger documentsLoaded; + [Export ("documentsLoaded")] + nint DocumentsLoaded { get; } + + // @property(readonly, nonatomic) NSInteger totalDocuments; + [Export ("totalDocuments")] + nint TotalDocuments { get; } + + // @property(readonly, nonatomic) NSInteger bytesLoaded; + [Export ("bytesLoaded")] + nint BytesLoaded { get; } + + // @property(readonly, nonatomic) NSInteger totalBytes; + [Export ("totalBytes")] + nint TotalBytes { get; } + + //@property(readonly, nonatomic) FIRLoadBundleTaskState state; + [Export ("state")] + LoadBundleTaskState State { get; } + } + + // @interface FIRTimestamp : NSObject + [DisableDefaultCtor] + [BaseType (typeof (NSObject), Name = "FIRLoadBundleTask")] + interface LoadBundleTask { + // - (FIRLoadBundleObserverHandle):(void (^)(FIRLoadBundleTaskProgress *progress))observer + [Export ("addObserver:")] + nint AddObserver (Action observer); + + // - (void)removeObserverWithHandle:(FIRLoadBundleObserverHandle)handle + [Export ("removeObserverWithHandle:")] + void RemoveObserver (nint handle); + + // - (void)removeAllObservers; + [Export ("removeAllObservers")] + void RemoveAllObservers (); } // @interface FIRFirestoreSettings : NSObject @@ -448,11 +516,6 @@ interface FirestoreSettings : INSCopying [Export ("persistenceEnabled")] bool PersistenceEnabled { [Bind ("isPersistenceEnabled")] get; set; } - // @property (getter = areTimestampsInSnapshotsEnabled, nonatomic) BOOL timestampsInSnapshotsEnabled; - [Obsolete ("This setting now defaults to true and will be removed in a future release.")] - [Export ("timestampsInSnapshotsEnabled")] - bool TimestampsInSnapshotsEnabled { [Bind ("areTimestampsInSnapshotsEnabled")] get; set; } - // @property (assign, nonatomic) int64_t cacheSizeBytes; [Export ("cacheSizeBytes")] long CacheSizeBytes { get; set; } diff --git a/source/Firebase/CloudFirestore/CloudFirestore.csproj b/source/Firebase/CloudFirestore/CloudFirestore.csproj index c6fa5ca21..246fe4d4d 100644 --- a/source/Firebase/CloudFirestore/CloudFirestore.csproj +++ b/source/Firebase/CloudFirestore/CloudFirestore.csproj @@ -6,7 +6,7 @@ Firebase.CloudFirestore Firebase.CloudFirestore 1.0.0.0 - 1.19.0 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=2030883 License.md true - 1.19.0 + 8.10.0 @@ -101,7 +101,7 @@ - + diff --git a/source/Firebase/CloudFirestore/Enums.cs b/source/Firebase/CloudFirestore/Enums.cs index 9e462e160..7ad57c438 100644 --- a/source/Firebase/CloudFirestore/Enums.cs +++ b/source/Firebase/CloudFirestore/Enums.cs @@ -48,4 +48,12 @@ public enum FirestoreSource : ulong Server, Cache } + + [Native] + public enum LoadBundleTaskState : long + { + Error, + InProgress, + Success + } } diff --git a/source/Firebase/CloudFunctions/ApiDefinition.cs b/source/Firebase/CloudFunctions/ApiDefinition.cs index 495aae47f..a8a0976f6 100644 --- a/source/Firebase/CloudFunctions/ApiDefinition.cs +++ b/source/Firebase/CloudFunctions/ApiDefinition.cs @@ -23,23 +23,41 @@ interface CloudFunctions [Export("functionsForApp:")] CloudFunctions From(App app); - //+ (FIRFunctions *) functionsForRegion:(NSString*) region; + // + (instancetype)functionsForApp:(FIRApp *)app customDomain:(NSString *)customDomain + [Static] + [Export("functionsForApp:customDomain:")] + CloudFunctions FromCustomDomain(App app, string customDomain); + + //+ (FIRFunctions *)functionsForCustomDomain:(NSString*) customDomain [Static] - [Export("functionsForRegion:")] - CloudFunctions From(string region); + [Export ("functionsForCustomDomain:")] + CloudFunctions FromCustomDomain (string customDomain); //+ (FIRFunctions *)functionsForApp:(FIRApp *)app region:(NSString*) region [Static] [Export("functionsForApp:region:")] - CloudFunctions From(App app, string region); + CloudFunctions FromRegion(App app, string region); + + //+ (FIRFunctions *) functionsForRegion:(NSString*) region; + [Static] + [Export ("functionsForRegion:")] + CloudFunctions FromRegion (string region); //- (FIRHTTPSCallable *)HTTPSCallableWithName:(NSString *)name; [Export("HTTPSCallableWithName:")] HttpsCallable HttpsCallable(string name); + // @property(nonatomic, readonly, nullable) NSString *emulatorOrigin; + [Export("emulatorOrigin")] + string EmulatorOrigin { get; } + //- (void)useFunctionsEmulatorOrigin:(NSString *)origin [Export("useFunctionsEmulatorOrigin:")] void UseFunctionsEmulatorOrigin(string origin); + + //- (void)useEmulatorWithHost:(NSString *)host port:(NSInteger) port; + [Export ("useEmulatorWithHost:port:")] + void UseEmulatorOriginWithHost (string host, uint port); } // void (^)(FIRHTTPSCallableResult *_Nullable result, NSError *_Nullable error); diff --git a/source/Firebase/CloudFunctions/CloudFunctions.csproj b/source/Firebase/CloudFunctions/CloudFunctions.csproj index 6d8e6a3a0..a3c629c66 100644 --- a/source/Firebase/CloudFunctions/CloudFunctions.csproj +++ b/source/Firebase/CloudFunctions/CloudFunctions.csproj @@ -6,7 +6,7 @@ Firebase.CloudFunctions Firebase.CloudFunctions 1.0.0.0 - 2.9.0 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=2125916 License.md true - 2.9.0 + 8.10.0 @@ -66,7 +66,7 @@ - + diff --git a/source/Firebase/CloudMessaging/ApiDefinition.cs b/source/Firebase/CloudMessaging/ApiDefinition.cs index 4aa86ab8d..0fd944695 100644 --- a/source/Firebase/CloudMessaging/ApiDefinition.cs +++ b/source/Firebase/CloudMessaging/ApiDefinition.cs @@ -16,6 +16,8 @@ namespace Firebase.CloudMessaging // typedef void (^FIRMessagingTopicOperationCompletion)(NSError *_Nullable error); delegate void MessagingTopicOperationCompletionHandler ([NullAllowed] NSError error); + delegate void DeleteDataCompletionHandler ([NullAllowed] NSError error); + // @interface FIRMessagingMessageInfo : NSObject [BaseType (typeof (NSObject), Name = "FIRMessagingMessageInfo")] interface MessageInfo @@ -25,20 +27,6 @@ interface MessageInfo MessageStatus Status { get; } } - // @interface FIRMessagingRemoteMessage : NSObject - [DisableDefaultCtor] - [BaseType (typeof (NSObject), Name = "FIRMessagingRemoteMessage")] - interface RemoteMessage - { - // @property (readonly, copy, nonatomic) NSString * _Nonnull messageID; - [Export ("messageID")] - string MessageId { get; } - - // @property(nonatomic, readonly, strong, nonnull) NSDictionary *appData; - [Export ("appData", ArgumentSemantic.Strong)] - NSDictionary AppData { get; } - } - interface IMessagingDelegate { } @@ -52,11 +40,6 @@ interface MessagingDelegate // @optional -(void)messaging:(FIRMessaging * _Nonnull)messaging didReceiveRegistrationToken:(NSString * _Nonnull)fcmToken; [Export ("messaging:didReceiveRegistrationToken:")] void DidReceiveRegistrationToken (Messaging messaging, string fcmToken); - - // - (void)messaging:(nonnull FIRMessaging *)messaging didReceiveMessage:(nonnull FIRMessagingRemoteMessage *)remoteMessage FIR_SWIFT_NAME(messaging(_:didReceive:) - [Obsolete ("FCM direct channel is deprecated, please use APNs for downstream message handling.")] - [Export ("messaging:didReceiveMessage:")] - void DidReceiveMessage (Messaging messaging, RemoteMessage remoteMessage); } // @interface FIRMessaging : NSObject @@ -64,51 +47,11 @@ interface MessagingDelegate [BaseType (typeof (NSObject), Name = "FIRMessaging")] interface Messaging { - // extern NSString *const _Nonnull FIRMessagingSendSuccessNotification; - [Obsolete] - [Notification] - [Field ("FIRMessagingSendSuccessNotification", "__Internal")] - NSString SendSuccessNotification { get; } - - // extern NSString *const _Nonnull FIRMessagingSendErrorNotification; - [Obsolete] - [Notification] - [Field ("FIRMessagingSendErrorNotification", "__Internal")] - NSString SendErrorNotification { get; } - - // extern NSString *const _Nonnull FIRMessagingMessagesDeletedNotification; - [Obsolete] - [Notification] - [Field ("FIRMessagingMessagesDeletedNotification", "__Internal")] - NSString MessagesDeletedNotification { get; } - - // extern NSString *const _Nonnull FIRMessagingConnectionStateChangedNotification; - [Obsolete] - [Notification] - [Field ("FIRMessagingConnectionStateChangedNotification", "__Internal")] - NSString ConnectionStateChangedNotification { get; } - - // extern NSString *const _Nonnull FIRMessagingRegistrationTokenRefreshedNotification; - [Obsolete] - [Notification] - [Field ("FIRMessagingRegistrationTokenRefreshedNotification", "__Internal")] - NSString RegistrationTokenRefreshedNotification { get; } - // @property(nonatomic, weak, nullable) id delegate; [NullAllowed] [Export ("delegate", ArgumentSemantic.Weak)] IMessagingDelegate Delegate { get; set; } - // @property(nonatomic) BOOL shouldEstablishDirectChannel; - [Obsolete ("FCM direct channel is deprecated, please use APNs channel for downstream message delivery.")] - [Export ("shouldEstablishDirectChannel")] - bool ShouldEstablishDirectChannel { get; set; } - - // @property(nonatomic, readonly) BOOL isDirectChannelEstablished; - [Obsolete ("FCM direct channel is deprecated, please use APNs channel for downstream message delivery.")] - [Export ("isDirectChannelEstablished")] - bool IsDirectChannelEstablished { get; } - // +(instancetype _Nonnull)messaging; [Static] [Export ("messaging")] @@ -138,6 +81,16 @@ interface Messaging [Export ("FCMToken")] string FcmToken { get; } + // -(void)tokenWithCompletion:(void (^ _Nonnull)(NSString * _Nullable, NSError * _Nullable))completion; + [Export ("tokenWithCompletion:")] + [Async] + void FetchToken (MessagingDeleteFcmTokenCompletionHandler completion); + + // -(void)deleteTokenWithCompletion:(void (^ _Nonnull)(NSError * _Nullable))completion; + [Export ("deleteTokenWithCompletion:")] + [Async] + void DeleteToken (MessagingDeleteFcmTokenCompletionHandler completion); + // - (void)retrieveFCMTokenForSenderID:(nonnull NSString *)senderID completion:(nonnull FIRMessagingFCMTokenFetchCompletion) completion FIR_SWIFT_NAME(retrieveFCMToken(forSenderID:completion:)); [Async] [Export ("retrieveFCMTokenForSenderID:completion:")] @@ -166,18 +119,13 @@ interface Messaging [Export ("unsubscribeFromTopic:completion:")] void Unsubscribe (string topic, MessagingTopicOperationCompletionHandler completion); - // -(void)sendMessage:(NSDictionary * _Nonnull)message to:(NSString * _Nonnull)receiver withMessageID:(NSString * _Nonnull)messageID timeToLive:(int64_t)ttl; - [Obsolete ("Upstream messaging through direct channel is deprecated. For realtime updates, use Cloud Firestore, Realtime Database, or other services.")] - [Export ("sendMessage:to:withMessageID:timeToLive:")] - void SendMessage (NSDictionary nsMessage, string receiver, string messageId, long ttl); - - [Obsolete ("Upstream messaging through direct channel is deprecated. For realtime updates, use Cloud Firestore, Realtime Database, or other services.")] - [Wrap ("SendMessage (message == null ? null : NSDictionary.FromObjectsAndKeys (System.Linq.Enumerable.ToArray (message.Values), System.Linq.Enumerable.ToArray (message.Keys), message.Keys.Count), receiver, messageId, ttl)")] - void SendMessage (Dictionary message, string receiver, string messageId, long ttl); - // -(FIRMessagingMessageInfo * _Nonnull)appDidReceiveMessage:(NSDictionary * _Nonnull)message; [Export ("appDidReceiveMessage:")] MessageInfo AppDidReceiveMessage (NSDictionary message); + + // - (void)deleteDataWithCompletion:(void (^)(NSError *__nullable error))completion; + [Export ("deleteDataWithCompletion:")] + void DeleteData (DeleteDataCompletionHandler completion); } // @interface FIRMessagingExtensionHelper : NSObject @@ -187,5 +135,9 @@ interface MessagingExtensionHelper { // -(void)populateNotificationContent:(UNMutableNotificationContent * _Nonnull)content withContentHandler:(void (^ _Nonnull)(UNNotificationContent * _Nonnull))contentHandler; [Export ("populateNotificationContent:withContentHandler:")] void PopulateNotificationContent (UNMutableNotificationContent content, Action contentHandler); + + // - (void)exportDeliveryMetricsToBigQueryWithMessageInfo:(NSDictionary *)info; + [Export ("exportDeliveryMetricsToBigQueryWithMessageInfo:")] + void ExportDeliveryMetricsToBigQueryWithMessageInfo (NSDictionary info); } } diff --git a/source/Firebase/CloudMessaging/CloudMessaging.csproj b/source/Firebase/CloudMessaging/CloudMessaging.csproj index 5c1029ec1..7bf5319db 100644 --- a/source/Firebase/CloudMessaging/CloudMessaging.csproj +++ b/source/Firebase/CloudMessaging/CloudMessaging.csproj @@ -6,7 +6,7 @@ Firebase.CloudMessaging Firebase.CloudMessaging 1.0.0.0 - 4.7.1 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=865576 License.md true - 4.7.1 + 8.10.0 @@ -68,13 +68,12 @@ - + - diff --git a/source/Firebase/CloudMessaging/Loader.cs b/source/Firebase/CloudMessaging/Loader.cs index 8717f69f9..e4a0c52f9 100644 --- a/source/Firebase/CloudMessaging/Loader.cs +++ b/source/Firebase/CloudMessaging/Loader.cs @@ -8,7 +8,6 @@ static Loader () { Firebase.Core.Loader.ForceLoad (); Firebase.Installations.Loader.ForceLoad(); - Firebase.InstanceID.Loader.ForceLoad (); } public static void ForceLoad () { } diff --git a/source/Firebase/Core/Core.csproj b/source/Firebase/Core/Core.csproj index 55dc4756f..d2ab2c404 100644 --- a/source/Firebase/Core/Core.csproj +++ b/source/Firebase/Core/Core.csproj @@ -6,7 +6,7 @@ Firebase.Core Firebase.Core 1.0.0.0 - 6.10.4 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=2007321 License.md true - 6.10.4 + 8.10.0 @@ -124,6 +124,11 @@ -ObjC -lz Security SystemConfiguration + + Framework + True + True + Framework True @@ -155,7 +160,7 @@ - + diff --git a/source/Firebase/Core/Core.targets b/source/Firebase/Core/Core.targets index 4d0dda3cd..68cf9946f 100644 --- a/source/Firebase/Core/Core.targets +++ b/source/Firebase/Core/Core.targets @@ -3,26 +3,36 @@ <_FirebaseCoreAssemblyName>Firebase.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - <_GoogleAppMeasurementItemsFolder>GAppM-6.9.0 - <_GoogleAppMeasurementSDKBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleAppMeasurementItemsFolder)\Frameworks\ + <_GoogleAppMeasurementItemsFolder>GAppM-8.9.1 + <_GoogleAppMeasurementSDKBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleAppMeasurementItemsFolder)\GoogleAppMeasurement-8.9.1\Frameworks\ - https://dl.google.com/firebase/ios/analytics/002e6bbf37cc906f/GoogleAppMeasurement-6.9.0.tar.gz + https://dl.google.com/firebase/ios/analytics/59128155f949f77d/GoogleAppMeasurement-8.9.1.tar.gz Tgz - - - + + + Framework True True -ObjC -lc++ -lsqlite3 -lz - Security StoreKit SystemConfiguration UIKit + StoreKit + + + + + + Framework + True + True + -ObjC -lc++ -lsqlite3 -lz + StoreKit diff --git a/source/Firebase/Core/Extension.cs b/source/Firebase/Core/Extension.cs index 1ea219cde..164a3c5d2 100644 --- a/source/Firebase/Core/Extension.cs +++ b/source/Firebase/Core/Extension.cs @@ -1,19 +1,23 @@ using System; -using ObjCRuntime; using System.Runtime.InteropServices; +using Foundation; + namespace Firebase.Core { public partial class App { - static string currentVersion; - public static string CurrentVersion { + // extern NSString * _Nonnull FIRFirebaseVersion () __attribute__((swift_name("FirebaseVersion()"))); + [DllImport ("__Internal", EntryPoint = "FIRFirebaseVersion")] + extern internal static IntPtr _FIRFirebaseVersion (); + + static string firebaseVersion; + public static string FirebaseVersion { get { - if (currentVersion == null) { - IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); - IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "FirebaseCoreVersionString"); - currentVersion = Marshal.PtrToStringAnsi (ptr); - Dlfcn.dlclose (RTLD_MAIN_ONLY); + if (firebaseVersion == null) { + + IntPtr verStrPtr = _FIRFirebaseVersion (); + firebaseVersion = NSString.FromHandle (verStrPtr); } - return currentVersion; + return firebaseVersion; } } } diff --git a/source/Firebase/Crashlytics/ApiDefinition.cs b/source/Firebase/Crashlytics/ApiDefinition.cs index 80d029c07..7ea3b9c2f 100644 --- a/source/Firebase/Crashlytics/ApiDefinition.cs +++ b/source/Firebase/Crashlytics/ApiDefinition.cs @@ -6,20 +6,14 @@ using UIKit; namespace Firebase.Crashlytics { + delegate void HasUnsentReportsHandler (bool hasUnsentReports); + delegate void CheckAndUpdateUnsentReportsHandler ([NullAllowed] CrashlyticsReport report); + // @interface FIRCrashlytics : NSObject [DisableDefaultCtor] [BaseType (typeof(NSObject), Name = "FIRCrashlytics")] interface Crashlytics { - // extern double FirebaseCrashlyticsVersionNumber; - [Field ("FirebaseCrashlyticsVersionNumber", "__Internal")] - double CurrentVersionNumber { get; } - - // extern const unsigned char [] FirebaseCrashlyticsVersionString; - [Internal] - [Field ("FirebaseCrashlyticsVersionString", "__Internal")] - IntPtr _CurrentVersion { get; } - // +(instancetype _Nonnull)crashlytics __attribute__((swift_name("crashlytics()"))); [Static] [Export ("crashlytics")] @@ -33,6 +27,10 @@ interface Crashlytics [Export ("setCustomValue:forKey:")] void SetCustomValue (NSObject value, string key); + // -(void)setCustomKeysAndValues:(NSDictionary * _Nonnull)keysAndValues; + [Export ("setCustomKeysAndValues:")] + void SetCustomKeysAndValues (NSDictionary keysAndValues); + // -(void)setUserID:(NSString * _Nonnull)userID; [Export ("setUserID:")] void SetUserId (string userId); @@ -60,7 +58,11 @@ interface Crashlytics // -(void)checkForUnsentReportsWithCompletion:(void (^ _Nonnull)(BOOL))completion __attribute__((swift_name("checkForUnsentReports(completion:)"))); [Async] [Export ("checkForUnsentReportsWithCompletion:")] - void CheckForUnsentReports (Action completion); + void CheckForUnsentReports (HasUnsentReportsHandler completion); + + // -(void)checkAndUpdateUnsentReportsWithCompletion:(void (^ _Nonnull)(FIRCrashlyticsReport * _Nullable))completion __attribute__((swift_name("checkAndUpdateUnsentReports(completion:)"))); + [Export ("checkAndUpdateUnsentReportsWithCompletion:")] + void CheckAndUpdateUnsentReportsWithCompletion (CheckAndUpdateUnsentReportsHandler completionHandler); // -(void)sendUnsentReports; [Export ("sendUnsentReports")] @@ -108,4 +110,37 @@ interface StackFrame [Export ("stackFrameWithSymbol:file:line:")] StackFrame Create (string symbol, string file, nint line); } + + // @interface FIRCrashlyticsReport : NSObject + [DisableDefaultCtor] + [BaseType (typeof (NSObject), Name = "FIRCrashlyticsReport")] + interface CrashlyticsReport { + // @property (readonly, nonatomic) NSString * _Nonnull reportID; + [Export ("reportID")] + string ReportID { get; } + + // @property (readonly, nonatomic) NSDate * _Nonnull dateCreated; + [Export ("dateCreated")] + NSDate DateCreated { get; } + + // @property (readonly, nonatomic) BOOL hasCrash; + [Export ("hasCrash")] + bool HasCrash { get; } + + // -(void)log:(NSString * _Nonnull)msg; + [Export ("log:")] + void Log (string msg); + + // -(void)setCustomValue:(id _Nonnull)value forKey:(NSString * _Nonnull)key; + [Export ("setCustomValue:forKey:")] + void SetCustomValue (NSObject value, string key); + + // -(void)setCustomKeysAndValues:(NSDictionary * _Nonnull)keysAndValues; + [Export ("setCustomKeysAndValues:")] + void SetCustomKeysAndValues (NSDictionary keysAndValues); + + // -(void)setUserID:(NSString * _Nonnull)userID; + [Export ("setUserID:")] + void SetUserID (string userID); + } } diff --git a/source/Firebase/Crashlytics/Crashlytics.csproj b/source/Firebase/Crashlytics/Crashlytics.csproj index 62d13b7ac..dc7c01ad6 100644 --- a/source/Firebase/Crashlytics/Crashlytics.csproj +++ b/source/Firebase/Crashlytics/Crashlytics.csproj @@ -6,7 +6,7 @@ Firebase.Crashlytics Firebase.Crashlytics 1.0.0.0 - 4.6.2 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=873305 License.md true - 4.6.2 + 8.10.0 @@ -71,7 +71,7 @@ - + diff --git a/source/Firebase/Crashlytics/Crashlytics.targets b/source/Firebase/Crashlytics/Crashlytics.targets index 387ca9155..e499af4f1 100644 --- a/source/Firebase/Crashlytics/Crashlytics.targets +++ b/source/Firebase/Crashlytics/Crashlytics.targets @@ -2,7 +2,7 @@ <_FirebaseCrashlyticsAssemblyName>Firebase.Crashlytics, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - <_FirebaseCrashlyticsItemsFolder>FCrshlytcs-4.6.2 + <_FirebaseCrashlyticsItemsFolder>FCrshlytcs-8.9.1 <_FirebaseCrashlyticsSDKBaseFolder>$(XamarinBuildDownloadDir)$(_FirebaseCrashlyticsItemsFolder)\ <_FirebaseScriptName>upload-symbols.sh @@ -22,7 +22,7 @@ - https://raw.githubusercontent.com/firebase/firebase-ios-sdk/c93d07529993352b6286ec71e58114a8ac8bd949/Crashlytics/upload-symbols + https://raw.githubusercontent.com/firebase/firebase-ios-sdk/61a1f5be795abc92bb3cf57b9ac1e854bac64196/Crashlytics/upload-symbols $(_FirebaseCrashlyticsSDKBaseFolder)$(_FirebaseScriptName) Uncompressed diff --git a/source/Firebase/Crashlytics/Extensions.cs b/source/Firebase/Crashlytics/Extensions.cs index 7a1d052bf..a152f11fe 100644 --- a/source/Firebase/Crashlytics/Extensions.cs +++ b/source/Firebase/Crashlytics/Extensions.cs @@ -7,21 +7,7 @@ using ObjCRuntime; namespace Firebase.Crashlytics { - public partial class Crashlytics { - static string currentVersion; - public static string CurrentVersion { - get { - if (currentVersion == null) { - IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); - IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "FirebaseCrashlyticsVersionString"); - currentVersion = Marshal.PtrToStringAnsi (ptr); - Dlfcn.dlclose (RTLD_MAIN_ONLY); - } - - return currentVersion; - } - } - + public partial class Crashlytics { public void LogCallerInformation (string message, string className = "", [CallerFilePath] string filePath = "", [CallerMemberName] string memberName = "", [CallerLineNumber] int lineNumber = 0) { var logBuilder = new StringBuilder (); diff --git a/source/Firebase/Database/ApiDefinition.cs b/source/Firebase/Database/ApiDefinition.cs index 02627ba5f..c4e0c3499 100644 --- a/source/Firebase/Database/ApiDefinition.cs +++ b/source/Firebase/Database/ApiDefinition.cs @@ -82,6 +82,10 @@ interface Database [Static] [Export ("sdkVersion")] string SdkVersion { get; } + + // - (void) useEmulatorWithHost:(NSString*) host port:(NSInteger) port; + [Export ("useEmulatorWithHost:port:")] + void UseEmulatorWithHost (string host, uint port); } delegate void DatabaseQueryUpdateHandler (DataSnapshot snapshot); @@ -168,6 +172,16 @@ interface DatabaseQuery [Export ("queryStartingAtValue:childKey:")] DatabaseQuery GetQueryStartingAtValue ([NullAllowed] NSObject startValue, [NullAllowed] string childKey); + // - (FIRDatabaseQuery *)queryStartingAfterValue:(nullable id)startAfterValue; + [New] + [Export ("queryStartingAfterValue:")] + DatabaseQuery GetQueryStartingAfterValue ([NullAllowed] NSObject startAfterValue); + + // - (FIRDatabaseQuery *)queryStartingAfterValue:(nullable id)startAfterValue childKey:(nullable NSString *)childKey; + [New] + [Export ("queryStartingAfterValue:childKey:")] + DatabaseQuery GetQueryStartingAfterValue ([NullAllowed] NSObject startAfterValue, [NullAllowed] string childKey); + // -(FIRDatabaseQuery * _Nonnull)queryEndingAtValue:(id _Nullable)endValue; [Export ("queryEndingAtValue:")] DatabaseQuery GetQueryEndingAtValue ([NullAllowed] NSObject endValue); @@ -176,6 +190,16 @@ interface DatabaseQuery [Export ("queryEndingAtValue:childKey:")] DatabaseQuery GetQueryEndingAtValue ([NullAllowed] NSObject endValue, [NullAllowed] string childKey); + // - (FIRDatabaseQuery *)queryEndingBeforeValue:(nullable id)endValue; + [New] + [Export ("queryEndingBeforeValue:")] + DatabaseQuery GetQueryEndingBeforeValue ([NullAllowed] NSObject endValue); + + // - (FIRDatabaseQuery *)queryEndingBeforeValue:(nullable id)endValue childKey:(nullable NSString *)childKey; + [New] + [Export ("queryEndingBeforeValue:childKey:")] + DatabaseQuery GetQueryEndingBeforeValue ([NullAllowed] NSObject endValue, [NullAllowed] string childKey); + // -(FIRDatabaseQuery * _Nonnull)queryEqualToValue:(id _Nullable)value; [Export ("queryEqualToValue:")] DatabaseQuery GetQueryEqualToValue ([NullAllowed] NSObject value); @@ -192,6 +216,7 @@ interface DatabaseQuery delegate void DatabaseReferenceCompletionHandler ([NullAllowed] NSError error, DatabaseReference reference); delegate TransactionResult DatabaseReferenceTransactionHandler (MutableData currentData); delegate void DatabaseReferenceTransactionCompletionHandler ([NullAllowed] NSError error, bool commited, [NullAllowed] DataSnapshot snapshot); + delegate void DataSnapshotCompletionHandler ([NullAllowed] NSError error, [NullAllowed] DataSnapshot snapshot); // @interface FIRDatabaseReference : FIRDatabaseQuery [BaseType (typeof (DatabaseQuery), Name = "FIRDatabaseReference")] @@ -269,6 +294,11 @@ interface DatabaseReference [Export ("observeEventType:andPreviousSiblingKeyWithBlock:withCancelBlock:")] nuint ObserveEvent (DataEventType eventType, DatabaseQueryPreviousSiblingKeyUpdateHandler completionHandler, [NullAllowed] DatabaseQueryCancelHandler cancelHandler); + // - (void)getDataWithCompletionBlock: (void (^_Nonnull)(NSError* __nullable error, FIRDataSnapshot *snapshot))block; + [New] + [Export ("getDataWithCompletionBlock:")] + void GetData (DataSnapshotCompletionHandler completionHandler); + // -(void)observeSingleEventOfType:(FIRDataEventType)eventType withBlock:(void (^ _Nonnull)(FIRDataSnapshot * _Nonnull))block; [New] [Export ("observeSingleEventOfType:withBlock:")] @@ -339,6 +369,16 @@ interface DatabaseReference [Export ("queryStartingAtValue:childKey:")] DatabaseQuery GetQueryStartingAtValue ([NullAllowed] NSObject startValue, [NullAllowed] string childKey); + // - (FIRDatabaseQuery *)queryStartingAfterValue:(nullable id)startAfterValue; + [New] + [Export ("queryStartingAfterValue:")] + DatabaseQuery GetQueryStartingAfterValue ([NullAllowed] NSObject startAfterValue); + + // - (FIRDatabaseQuery *)queryStartingAfterValue:(nullable id)startAfterValue childKey:(nullable NSString *)childKey; + [New] + [Export ("queryStartingAfterValue:childKey:")] + DatabaseQuery GetQueryStartingAfterValue ([NullAllowed] NSObject startAfterValue, [NullAllowed] string childKey); + // -(FIRDatabaseQuery * _Nonnull)queryEndingAtValue:(id _Nullable)endValue; [New] [Export ("queryEndingAtValue:")] diff --git a/source/Firebase/Database/Database.csproj b/source/Firebase/Database/Database.csproj index 09942582f..f34651374 100644 --- a/source/Firebase/Database/Database.csproj +++ b/source/Firebase/Database/Database.csproj @@ -6,7 +6,7 @@ Firebase.Database Firebase.Database 1.0.0.0 - 6.6.0 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=865568 License.md true - 6.6.0 + 8.10.0 @@ -67,7 +67,7 @@ - + diff --git a/source/Firebase/DynamicLinks/ApiDefinition.cs b/source/Firebase/DynamicLinks/ApiDefinition.cs index 41d172113..d27b7a5f9 100644 --- a/source/Firebase/DynamicLinks/ApiDefinition.cs +++ b/source/Firebase/DynamicLinks/ApiDefinition.cs @@ -283,12 +283,6 @@ interface DynamicLinkComponents [Export ("componentsWithLink:domainURIPrefix:")] DynamicLinkComponents Create (NSUrl link, string domainUriPrefix); - [Obsolete("Use the Create static method instead. This will be removed in future versions.")] - [Static] - [return: NullAllowed] - [Wrap ("Create (link, domainUriPrefix)")] - DynamicLinkComponents FromLink (NSUrl link, string domainUriPrefix); - // -(instancetype _Nonnull)initWithLink:(NSURL * _Nonnull)link domain:(NSString * _Nonnull)domain; [Export ("initWithLink:domainURIPrefix:")] IntPtr Constructor (NSUrl link, string domainUriPrefix); @@ -319,6 +313,10 @@ interface DynamicLink [Export ("matchType", ArgumentSemantic.Assign)] DynamicLinkMatchType MatchType { get; } + // @property (readonly, copy, readonly) NSDictionary *utmParametersDictionary; + [Export ("utmParametersDictionary", ArgumentSemantic.Copy)] + NSDictionary UtmParametersDictionary { get; } + // @property(nonatomic, copy, readonly, nullable) NSString *minimumAppVersion; [NullAllowed] [Export ("minimumAppVersion")] @@ -354,9 +352,14 @@ interface DynamicLinks [Export ("dynamicLinkFromCustomSchemeURL:")] DynamicLink FromCustomSchemeUrl (NSUrl url); + // - (void)dynamicLinkFromUniversalLinkURL:(NSURL *)url completion:(FIRDynamicLinkUniversalLinkHandler)completion + [Export ("dynamicLinkFromUniversalLinkURL:completion:")] + void FromUniversalLinkUrl (NSUrl url, DynamicLinkUniversalLinkHandler completion); + // -(FIRDynamicLink * _Nullable)dynamicLinkFromUniversalLinkURL:(NSURL * _Nonnull)url; [return: NullAllowed] [Export ("dynamicLinkFromUniversalLinkURL:")] + [Obsolete("Use 'FromUniversalLinkUrl (NSUrl url, DynamicLinkUniversalLinkHandler completion)' instead")] DynamicLink FromUniversalLinkUrl (NSUrl url); // -(BOOL)handleUniversalLink:(NSURL * _Nonnull)url completion:(FIRDynamicLinkUniversalLinkHandler _Nonnull)completion; diff --git a/source/Firebase/DynamicLinks/DynamicLinks.csproj b/source/Firebase/DynamicLinks/DynamicLinks.csproj index 6bf11612b..85a4ba304 100644 --- a/source/Firebase/DynamicLinks/DynamicLinks.csproj +++ b/source/Firebase/DynamicLinks/DynamicLinks.csproj @@ -6,7 +6,7 @@ Firebase.DynamicLinks Firebase.DynamicLinks 1.0.0.0 - 4.3.1 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=865537 License.md true - 4.3.1 + 8.10.0 @@ -68,7 +68,7 @@ - + diff --git a/source/Firebase/InAppMessaging/ApiDefinition.cs b/source/Firebase/InAppMessaging/ApiDefinition.cs index d60a01d7a..e73538dbd 100644 --- a/source/Firebase/InAppMessaging/ApiDefinition.cs +++ b/source/Firebase/InAppMessaging/ApiDefinition.cs @@ -12,15 +12,6 @@ namespace Firebase.InAppMessaging [BaseType (typeof(NSObject), Name = "FIRInAppMessaging")] interface InAppMessaging { - // extern double FirebaseInAppMessagingVersionNumber; - [Field ("FirebaseInAppMessagingVersionNumber", "__Internal")] - double CurrentVersionNumber { get; } - - // extern const unsigned char [] FirebaseInAppMessagingVersionString; - [Internal] - [Field ("FirebaseInAppMessagingVersionString", "__Internal")] - IntPtr _CurrentVersion { get; } - // +(FIRInAppMessaging * _Nonnull)inAppMessaging __attribute__((swift_name("inAppMessaging()"))); [Static] [Export ("inAppMessaging")] @@ -64,10 +55,6 @@ interface InAppMessagingActionButton // @property (readonly, copy, nonatomic) UIColor * _Nonnull buttonBackgroundColor; [Export ("buttonBackgroundColor", ArgumentSemantic.Copy)] UIColor ButtonBackgroundColor { get; } - - // -(instancetype _Nonnull)initWithButtonText:(NSString * _Nonnull)btnText buttonTextColor:(UIColor * _Nonnull)textColor backgroundColor:(UIColor * _Nonnull)bkgColor __attribute__((deprecated(""))); - [Export ("initWithButtonText:buttonTextColor:backgroundColor:")] - IntPtr Constructor (string btnText, UIColor textColor, UIColor bkgColor); } // @interface FIRInAppMessagingImageData : NSObject @@ -105,10 +92,6 @@ interface InAppMessagingCampaignInfo // @property (readonly, nonatomic) BOOL renderAsTestMessage; [Export("renderAsTestMessage")] bool RenderAsTestMessage { get; } - - // -(instancetype _Nonnull)initWithMessageID:(NSString * _Nonnull)messageID campaignName:(NSString * _Nonnull)campaignName renderAsTestMessage:(BOOL)renderAsTestMessage __attribute__((deprecated(""))); - [Export("initWithMessageID:campaignName:renderAsTestMessage:")] - IntPtr Constructor(string messageId, string campaignName, bool renderAsTestMessage); } // @interface FIRInAppMessagingAction : NSObject @@ -152,10 +135,6 @@ interface InAppMessagingDisplayMessage [NullAllowed] [Export ("appData")] NSDictionary AppData { get; } - - // -(instancetype _Nonnull)initWithMessageID:(NSString * _Nonnull)messageID campaignName:(NSString * _Nonnull)campaignName renderAsTestMessage:(BOOL)renderAsTestMessage messageType:(FIRInAppMessagingDisplayMessageType)messageType triggerType:(FIRInAppMessagingDisplayTriggerType)triggerType __attribute__((deprecated(""))); - [Export ("initWithMessageID:campaignName:renderAsTestMessage:messageType:triggerType:")] - IntPtr Constructor (string messageId, string campaignName, bool renderAsTestMessage, InAppMessagingDisplayMessageType messageType, InAppMessagingDisplayTriggerType triggerType); } // @interface FIRInAppMessagingCardDisplay : FIRInAppMessagingDisplayMessage @@ -237,17 +216,13 @@ interface InAppMessagingModalDisplay [Export ("actionURL")] NSUrl ActionUrl { get; } - // @property (copy, nonatomic) UIColor * _Nonnull displayBackgroundColor; + // @property(nonatomic, copy, nonnull, readonly) UIColor *displayBackgroundColor; [Export ("displayBackgroundColor", ArgumentSemantic.Copy)] - UIColor DisplayBackgroundColor { get; set; } + UIColor DisplayBackgroundColor { get; } - // @property (copy, nonatomic) UIColor * _Nonnull textColor; + // @property(nonatomic, copy, nonnull, readonly) UIColor *textColor; [Export ("textColor", ArgumentSemantic.Copy)] - UIColor TextColor { get; set; } - - // -(instancetype _Nonnull)initWithMessageID:(NSString * _Nonnull)messageID campaignName:(NSString * _Nonnull)campaignName renderAsTestMessage:(BOOL)renderAsTestMessage triggerType:(FIRInAppMessagingDisplayTriggerType)triggerType titleText:(NSString * _Nonnull)title bodyText:(NSString * _Nonnull)bodyText textColor:(UIColor * _Nonnull)textColor backgroundColor:(UIColor * _Nonnull)backgroundColor imageData:(FIRInAppMessagingImageData * _Nullable)imageData actionButton:(FIRInAppMessagingActionButton * _Nullable)actionButton actionURL:(NSURL * _Nullable)actionURL __attribute__((deprecated(""))); - [Export ("initWithMessageID:campaignName:renderAsTestMessage:triggerType:titleText:bodyText:textColor:backgroundColor:imageData:actionButton:actionURL:")] - IntPtr Constructor (string messageId, string campaignName, bool renderAsTestMessage, InAppMessagingDisplayTriggerType triggerType, string title, string bodyText, UIColor textColor, UIColor backgroundColor, [NullAllowed] InAppMessagingImageData imageData, [NullAllowed] InAppMessagingActionButton actionButton, [NullAllowed] NSUrl actionUrl); + UIColor TextColor { get; } } // @interface FIRInAppMessagingBannerDisplay : FIRInAppMessagingDisplayMessage @@ -273,18 +248,14 @@ interface InAppMessagingBannerDisplay [Export ("displayBackgroundColor", ArgumentSemantic.Copy)] UIColor DisplayBackgroundColor { get; } - // @property (copy, nonatomic) UIColor * _Nonnull textColor; + // @property (nonatomic, copy, nonnull, readonly) UIColor * _Nonnull textColor; [Export ("textColor", ArgumentSemantic.Copy)] - UIColor TextColor { get; set; } + UIColor TextColor { get; } // @property (readonly, nonatomic) NSURL * _Nullable actionURL; [NullAllowed] [Export ("actionURL")] NSUrl ActionUrl { get; } - - // -(instancetype _Nonnull)initWithMessageID:(NSString * _Nonnull)messageID campaignName:(NSString * _Nonnull)campaignName renderAsTestMessage:(BOOL)renderAsTestMessage triggerType:(FIRInAppMessagingDisplayTriggerType)triggerType titleText:(NSString * _Nonnull)title bodyText:(NSString * _Nonnull)bodyText textColor:(UIColor * _Nonnull)textColor backgroundColor:(UIColor * _Nonnull)backgroundColor imageData:(FIRInAppMessagingImageData * _Nullable)imageData actionURL:(NSURL * _Nullable)actionURL __attribute__((deprecated(""))); - [Export ("initWithMessageID:campaignName:renderAsTestMessage:triggerType:titleText:bodyText:textColor:backgroundColor:imageData:actionURL:")] - IntPtr Constructor (string messageId, string campaignName, bool renderAsTestMessage, InAppMessagingDisplayTriggerType triggerType, string title, string bodyText, UIColor textColor, UIColor backgroundColor, [NullAllowed] InAppMessagingImageData imageData, [NullAllowed] NSUrl actionUrl); } // @interface FIRInAppMessagingImageOnlyDisplay : FIRInAppMessagingDisplayMessage @@ -300,10 +271,6 @@ interface InAppMessagingImageOnlyDisplay [NullAllowed] [Export ("actionURL")] NSUrl ActionUrl { get; } - - // -(instancetype _Nonnull)initWithMessageID:(NSString * _Nonnull)messageID campaignName:(NSString * _Nonnull)campaignName renderAsTestMessage:(BOOL)renderAsTestMessage triggerType:(FIRInAppMessagingDisplayTriggerType)triggerType imageData:(FIRInAppMessagingImageData * _Nullable)imageData actionURL:(NSURL * _Nullable)actionURL __attribute__((deprecated(""))); - [Export ("initWithMessageID:campaignName:renderAsTestMessage:triggerType:imageData:actionURL:")] - IntPtr Constructor (string messageId, string campaignName, bool renderAsTestMessage, InAppMessagingDisplayTriggerType triggerType, [NullAllowed] InAppMessagingImageData imageData, [NullAllowed] NSUrl actionUrl); } interface IInAppMessagingDisplayDelegate { } @@ -318,10 +285,6 @@ interface InAppMessagingDisplayDelegate [Export ("messageDismissed:dismissType:")] void MessageDismissed (InAppMessagingDisplayMessage inAppMessage, InAppMessagingDismissType dismissType); - // @optional -(void)messageClicked:(FIRInAppMessagingDisplayMessage * _Nonnull)inAppMessage __attribute__((deprecated(""))); - [Export ("messageClicked:")] - void MessageClicked (InAppMessagingDisplayMessage inAppMessage); - // @optional -(void)messageClicked:(FIRInAppMessagingDisplayMessage * _Nonnull)inAppMessage withAction:(FIRInAppMessagingAction * _Nonnull)action; [Export ("messageClicked:withAction:")] void MessageClicked (InAppMessagingDisplayMessage inAppMessage, InAppMessagingAction action); diff --git a/source/Firebase/InAppMessaging/Extensions.cs b/source/Firebase/InAppMessaging/Extensions.cs deleted file mode 100644 index f9a137860..000000000 --- a/source/Firebase/InAppMessaging/Extensions.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; -using System.Runtime.InteropServices; - -using ObjCRuntime; - -namespace Firebase.InAppMessaging { - public partial class InAppMessaging { - static string currentVersion; - public static string CurrentVersion { - get { - if (currentVersion == null) { - IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); - IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "FirebaseInAppMessagingVersionString"); - currentVersion = Marshal.PtrToStringAnsi (ptr); - Dlfcn.dlclose (RTLD_MAIN_ONLY); - } - - return currentVersion; - } - } - } -} diff --git a/source/Firebase/InAppMessaging/InAppMessaging.csproj b/source/Firebase/InAppMessaging/InAppMessaging.csproj index adf2687c1..514456824 100644 --- a/source/Firebase/InAppMessaging/InAppMessaging.csproj +++ b/source/Firebase/InAppMessaging/InAppMessaging.csproj @@ -6,7 +6,7 @@ Firebase.InAppMessaging Firebase.InAppMessaging 1.0.0.0 - 0.24.0 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=2125628 License.md true - 0.24.0 + 8.10.0 @@ -66,7 +66,7 @@ - + @@ -75,10 +75,5 @@ - - - - - diff --git a/source/Firebase/Installations/ApiDefinition.cs b/source/Firebase/Installations/ApiDefinition.cs index 59c817157..d17bb0fe9 100644 --- a/source/Firebase/Installations/ApiDefinition.cs +++ b/source/Firebase/Installations/ApiDefinition.cs @@ -22,10 +22,6 @@ interface InstallationIdChangedEventArgs [BaseType (typeof(NSObject), Name = "FIRInstallations")] interface Installations { - // extern const unsigned char [] FirebaseInstallationsVersionString; - [Field("FirebaseInstallationsVersionString", "__Internal")] - IntPtr _CurrentVersion { get; } - // extern const NSNotificationName _Nonnull FIRInstallationIDDidChangeNotification; [Notification (typeof (InstallationIdChangedEventArgs))] [Field ("FIRInstallationIDDidChangeNotification", "__Internal")] diff --git a/source/Firebase/Installations/Extensions.cs b/source/Firebase/Installations/Extensions.cs deleted file mode 100644 index 1501e2b38..000000000 --- a/source/Firebase/Installations/Extensions.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; -using System.Runtime.InteropServices; - -using ObjCRuntime; - -namespace Firebase.Installations { - public partial class Installations { - static string currentVersion; - public static string CurrentVersion { - get { - if (currentVersion == null) { - IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); - IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "FIRInstallationsVersionStr"); - currentVersion = Marshal.PtrToStringAnsi (ptr); - Dlfcn.dlclose (RTLD_MAIN_ONLY); - } - - return currentVersion; - } - } - } -} diff --git a/source/Firebase/Installations/Installations.csproj b/source/Firebase/Installations/Installations.csproj index e8ca5eae7..b47b30a60 100644 --- a/source/Firebase/Installations/Installations.csproj +++ b/source/Firebase/Installations/Installations.csproj @@ -6,7 +6,7 @@ Firebase.Installations Firebase.Installations 1.0.0.0 - 1.7.0 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=2125908 License.md true - 1.7.0 + 8.10.0 @@ -66,17 +66,12 @@ - + - - - - - diff --git a/source/Firebase/InstanceID/InstanceID.csproj b/source/Firebase/InstanceID/InstanceID.csproj index 29436f7e6..9a0da3de3 100644 --- a/source/Firebase/InstanceID/InstanceID.csproj +++ b/source/Firebase/InstanceID/InstanceID.csproj @@ -6,7 +6,7 @@ Firebase.InstanceID Firebase.InstanceID 1.0.0.0 - 4.8.0 + 7.11.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=865551 License.md true - 4.8.0 + 7.11.0 diff --git a/source/Firebase/PerformanceMonitoring/Loader.cs b/source/Firebase/PerformanceMonitoring/Loader.cs index 013732fde..3bc9f2236 100644 --- a/source/Firebase/PerformanceMonitoring/Loader.cs +++ b/source/Firebase/PerformanceMonitoring/Loader.cs @@ -8,7 +8,6 @@ static Loader () { Firebase.Core.Loader.ForceLoad (); Firebase.Installations.Loader.ForceLoad(); - Firebase.InstanceID.Loader.ForceLoad (); Firebase.ABTesting.Loader.ForceLoad (); Firebase.RemoteConfig.Loader.ForceLoad (); } diff --git a/source/Firebase/PerformanceMonitoring/PerformanceMonitoring.csproj b/source/Firebase/PerformanceMonitoring/PerformanceMonitoring.csproj index 2f636ec26..65034c457 100644 --- a/source/Firebase/PerformanceMonitoring/PerformanceMonitoring.csproj +++ b/source/Firebase/PerformanceMonitoring/PerformanceMonitoring.csproj @@ -6,7 +6,7 @@ Firebase.PerformanceMonitoring Firebase.PerformanceMonitoring 1.0.0.0 - 3.3.0 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=866312 License.md true - 3.3.0 + 8.10.0 @@ -35,12 +35,23 @@ - - + + FirebaseFunctions.framework + + + + Framework + True + True + -ObjC -lc++ + CoreTelephony QuartzCore SystemConfiguration + + + @@ -55,16 +66,15 @@ - + - - + diff --git a/source/Firebase/PerformanceMonitoring/PerformanceMonitoring.targets b/source/Firebase/PerformanceMonitoring/PerformanceMonitoring.targets deleted file mode 100644 index 306743656..000000000 --- a/source/Firebase/PerformanceMonitoring/PerformanceMonitoring.targets +++ /dev/null @@ -1,27 +0,0 @@ - - - - <_FirebasePerformanceMonitoringAssemblyName>Firebase.PerformanceMonitoring, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - <_FirebasePerformanceMonitoringItemsFolder>FPrfrmncM-3.3.0 - <_FirebasePerformanceMonitoringSDKBaseFolder>$(XamarinBuildDownloadDir)$(_FirebasePerformanceMonitoringItemsFolder)\FirebasePerformance-3.3.0\Frameworks\ - - - - https://dl.google.com/dl/cpdc/ec10178ac6b36ea6/FirebasePerformance-3.3.0.tar.gz - Tgz - - - - - - - - Framework - True - True - -ObjC -lc++ - CoreTelephony QuartzCore SystemConfiguration - - - - \ No newline at end of file diff --git a/source/Firebase/RemoteConfig/ApiDefinition.cs b/source/Firebase/RemoteConfig/ApiDefinition.cs index 5bbc69422..a82a121d8 100644 --- a/source/Firebase/RemoteConfig/ApiDefinition.cs +++ b/source/Firebase/RemoteConfig/ApiDefinition.cs @@ -11,15 +11,15 @@ namespace Firebase.RemoteConfig // typedef void (^FIRRemoteConfigFetchCompletion)(FIRRemoteConfigFetchStatus, NSError * _Nullable); delegate void RemoteConfigFetchCompletionHandler (RemoteConfigFetchStatus status, [NullAllowed] NSError error); - // typedef void (^FIRRemoteConfigActivateCompletion)(NSError * _Nullable); - delegate void RemoteConfigActivateCompletionHandler ([NullAllowed] NSError error); - // typedef void (^FIRRemoteConfigInitializationCompletion)(NSError * _Nullable); delegate void RemoteConfigInitializationCompletionHandler ([NullAllowed] NSError error); // typedef void (^FIRRemoteConfigFetchAndActivateCompletion)(FIRRemoteConfigFetchAndActivateStatus, NSError * _Nullable); delegate void RemoteConfigFetchAndActivateCompletionHandler (RemoteConfigFetchAndActivateStatus status, [NullAllowed] NSError error); + // typedef void (^_Nullable)(BOOL changed, NSError *_Nullable error); + delegate void RemoteConfigActivateCompletionHandler (bool changed, [NullAllowed] NSError error); + // @interface FIRRemoteConfigValue : NSObject [DisableDefaultCtor] [BaseType (typeof (NSObject), Name = "FIRRemoteConfigValue")] @@ -30,8 +30,7 @@ interface RemoteConfigValue : INSCopying [Export ("stringValue")] NSString NSStringValue { get; } - // @property (readonly, nonatomic) NSNumber * _Nullable numberValue; - [NullAllowed] + // @property(nonatomic, readonly, nonnull) NSNumber *numberValue; [Export ("numberValue")] NSNumber NumberValue { get; } @@ -64,16 +63,6 @@ interface RemoteConfigSettings // @property (assign, nonatomic) NSTimeInterval fetchTimeout; [Export ("fetchTimeout")] double FetchTimeout { get; set; } - - // @property (readonly, nonatomic) BOOL isDeveloperModeEnabled; - [Obsolete ("This no longer needs to be set during development.")] - [Export ("isDeveloperModeEnabled")] - bool IsDeveloperModeEnabled { get; } - - // -(FIRRemoteConfigSettings * _Nullable)initWithDeveloperModeEnabled:(BOOL)developerModeEnabled __attribute__((objc_designated_initializer)); - [Obsolete ("This no longer needs to be set during development.")] - [Export ("initWithDeveloperModeEnabled:")] - IntPtr Constructor (bool developerModeEnabled); } // @interface FIRRemoteConfig : NSObject @@ -93,10 +82,10 @@ interface RemoteConfig [Field ("FIRRemoteConfigErrorDomain", "__Internal")] NSString ErrorDomain { get; } - // @property (readonly, nonatomic, strong) NSDate * _Nullable lastFetchTime; + // @property(nonatomic, readonly, strong, nullable) NSDate *lastFetchTime; [NullAllowed] [Export ("lastFetchTime", ArgumentSemantic.Strong)] - NSDate LastFetchTime { get; set; } + NSDate LastFetchTime { get; } // @property (readonly, assign, nonatomic) FIRRemoteConfigFetchStatus lastFetchStatus; [Export ("lastFetchStatus", ArgumentSemantic.Assign)] @@ -136,52 +125,34 @@ interface RemoteConfig [Export ("fetchAndActivateWithCompletionHandler:")] void FetchAndActivate ([NullAllowed] RemoteConfigFetchAndActivateCompletionHandler completionHandler); - // -(void)activateWithCompletionHandler:(FIRRemoteConfigActivateCompletion _Nullable)completionHandler; + // - (void)activateWithCompletion:(void (^_Nullable)(BOOL changed, NSError *_Nullable error))completion; [Async] - [Export ("activateWithCompletionHandler:")] + [Export ("activateWithCompletion:")] void Activate ([NullAllowed] RemoteConfigActivateCompletionHandler completionHandler); - // -(BOOL)activateFetched; - [Obsolete ("Use the Activate method instead.")] - [Export ("activateFetched")] - bool ActivateFetched (); + [Wrap ("Activate (null)")] + void Activate (); + + // - (nonnull FIRRemoteConfigValue *)objectForKeyedSubscript:(nonnull NSString *)key; + [Export ("objectForKeyedSubscript:")] + RemoteConfigValue GetObjectForKeyedSubscript (NSString key); // -(FIRRemoteConfigValue * _Nonnull)configValueForKey:(NSString * _Nullable)key; [Export ("configValueForKey:")] RemoteConfigValue GetConfigValue ([NullAllowed] string key); - // -(FIRRemoteConfigValue * _Nonnull)configValueForKey:(NSString * _Nullable)key namespace:(NSString * _Nullable)aNamespace __attribute__((deprecated("Use -[FIRRemoteConfig configValueForKey:] instead."))); - [Obsolete ("Use the GetConfigValue (string) overload method instead.")] - [Export ("configValueForKey:namespace:")] - RemoteConfigValue GetConfigValue ([NullAllowed] string key, [NullAllowed] string aNamespace); - // -(FIRRemoteConfigValue * _Nonnull)configValueForKey:(NSString * _Nullable)key source:(FIRRemoteConfigSource)source; [Export ("configValueForKey:source:")] RemoteConfigValue GetConfigValue ([NullAllowed] string key, RemoteConfigSource source); - // -(FIRRemoteConfigValue * _Nonnull)configValueForKey:(NSString * _Nullable)key namespace:(NSString * _Nullable)aNamespace source:(FIRRemoteConfigSource)source __attribute__((deprecated("Use -[FIRRemoteConfig configValueForKey:source:] instead."))); - [Obsolete ("Use the GetConfigValue (string, RemoteConfigSource) overload method instead.")] - [Export ("configValueForKey:namespace:source:")] - RemoteConfigValue GetConfigValue ([NullAllowed] string key, [NullAllowed] string aNamespace, RemoteConfigSource source); - // -(NSArray * _Nonnull)allKeysFromSource:(FIRRemoteConfigSource)source; [Export ("allKeysFromSource:")] string [] GetAllKeys (RemoteConfigSource source); - // -(NSArray * _Nonnull)allKeysFromSource:(FIRRemoteConfigSource)source namespace:(NSString * _Nullable)aNamespace __attribute__((deprecated("Use -[FIRRemoteConfig allKeysFromSource:] instead."))); - [Obsolete ("Use the GetAllKeys (RemoteConfigSource) overload method instead.")] - [Export ("allKeysFromSource:namespace:")] - string [] GetAllKeys (RemoteConfigSource source, [NullAllowed] string aNamespace); - // -(NSSet * _Nonnull)keysWithPrefix:(NSString * _Nullable)prefix; [Export ("keysWithPrefix:")] NSSet GetKeys ([NullAllowed] string prefix); - // -(NSSet * _Nonnull)keysWithPrefix:(NSString * _Nullable)prefix namespace:(NSString * _Nullable)aNamespace; - [Obsolete ("Use the GetKeys (string) overload method instead.")] - [Export ("keysWithPrefix:namespace:")] - NSSet GetKeys ([NullAllowed] string prefix, [NullAllowed] string aNamespace); - // -(void)setDefaults:(NSDictionary * _Nullable)defaults; [Export ("setDefaults:")] void SetDefaults ([NullAllowed] NSDictionary nsDefaults); @@ -189,33 +160,13 @@ interface RemoteConfig [Wrap ("SetDefaults (defaults == null ? null : NSDictionary.FromObjectsAndKeys (System.Linq.Enumerable.ToArray (defaults.Values), System.Linq.Enumerable.ToArray (defaults.Keys), defaults.Keys.Count))")] void SetDefaults (Dictionary defaults); - // -(void)setDefaults:(NSDictionary * _Nullable)defaultConfig namespace:(NSString * _Nullable)aNamespace; - [Obsolete ("Use the SetDefaults (NSDictionary) overload method instead.")] - [Export ("setDefaults:namespace:")] - void SetDefaults ([NullAllowed] NSDictionary nsDefaults, [NullAllowed] string aNamespace); - - [Obsolete ("Use the SetDefaults (Dictionary) overload method instead.")] - [Wrap ("SetDefaults (defaults == null ? null : NSDictionary.FromObjectsAndKeys (System.Linq.Enumerable.ToArray (defaults.Values), System.Linq.Enumerable.ToArray (defaults.Keys), defaults.Keys.Count), aNamespace)")] - void SetDefaults (Dictionary defaults, string aNamespace); - // -(void)setDefaultsFromPlistFileName:(NSString * _Nullable)fileName; [Export ("setDefaultsFromPlistFileName:")] void SetDefaults ([NullAllowed] string plistFileName); - // -(void)setDefaultsFromPlistFileName:(NSString * _Nullable)fileName namespace:(NSString * _Nullable)aNamespace; - [Obsolete ("Use the SetDefaults (string) overload method instead.")] - [Export ("setDefaultsFromPlistFileName:namespace:")] - void SetDefaults ([NullAllowed] string plistFileName, [NullAllowed] string aNamespace); - // -(FIRRemoteConfigValue * _Nullable)defaultValueForKey:(NSString * _Nullable)key; [return: NullAllowed] [Export ("defaultValueForKey:")] RemoteConfigValue GetDefaultValue ([NullAllowed] string key); - - // -(FIRRemoteConfigValue * _Nullable)defaultValueForKey:(NSString * _Nullable)key namespace:(NSString * _Nullable)aNamespace; - [Obsolete ("Use the GetDefaultValue (string) overload method instead.")] - [return: NullAllowed] - [Export ("defaultValueForKey:namespace:")] - RemoteConfigValue GetDefaultValue ([NullAllowed] string key, [NullAllowed] string aNamespace); } } diff --git a/source/Firebase/RemoteConfig/Loader.cs b/source/Firebase/RemoteConfig/Loader.cs index 220870c7f..64399a42a 100644 --- a/source/Firebase/RemoteConfig/Loader.cs +++ b/source/Firebase/RemoteConfig/Loader.cs @@ -7,7 +7,6 @@ static Loader () { Firebase.Core.Loader.ForceLoad (); Firebase.Installations.Loader.ForceLoad(); - Firebase.InstanceID.Loader.ForceLoad (); Firebase.ABTesting.Loader.ForceLoad (); } diff --git a/source/Firebase/RemoteConfig/RemoteConfig.csproj b/source/Firebase/RemoteConfig/RemoteConfig.csproj index 83398cf3b..50891e94d 100644 --- a/source/Firebase/RemoteConfig/RemoteConfig.csproj +++ b/source/Firebase/RemoteConfig/RemoteConfig.csproj @@ -6,7 +6,7 @@ Firebase.RemoteConfig Firebase.RemoteConfig 1.0.0.0 - 4.9.1 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=865532 License.md true - 4.9.1 + 8.10.0 @@ -67,13 +67,12 @@ - + - diff --git a/source/Firebase/Storage/ApiDefinition.cs b/source/Firebase/Storage/ApiDefinition.cs index 8575ea622..196d7894e 100644 --- a/source/Firebase/Storage/ApiDefinition.cs +++ b/source/Firebase/Storage/ApiDefinition.cs @@ -13,11 +13,6 @@ namespace Firebase.Storage [BaseType (typeof (NSObject), Name = "FIRStorage")] interface Storage { - // extern const unsigned char *const FirebaseStorageVersionString; - [Internal] - [Field ("FIRStorageVersionString", "__Internal")] - IntPtr _CurrentVersion { get; } - // extern NSString *const _Nonnull FIRStorageErrorDomain; [Field ("FIRStorageErrorDomain", "__Internal")] NSString ErrorDomain { get; } @@ -73,6 +68,10 @@ interface Storage // -(FIRStorageReference * _Nonnull)referenceWithPath:(NSString * _Nonnull)string; [Export ("referenceWithPath:")] StorageReference GetReferenceFromPath (string path); + + // - (void) useEmulatorWithHost:(NSString*) host port:(NSInteger) port; + [Export ("useEmulatorWithHost:port:")] + void UseEmulatorWithHost (string host, uint port); } // @interface FIRStorageDownloadTask : FIRStorageObservableTask diff --git a/source/Firebase/Storage/Extension.cs b/source/Firebase/Storage/Extension.cs index 495783a41..15b9b4c7a 100644 --- a/source/Firebase/Storage/Extension.cs +++ b/source/Firebase/Storage/Extension.cs @@ -8,23 +8,6 @@ namespace Firebase.Storage { - public partial class Storage - { - static string currentVersion; - public static string CurrentVersion { - get { - if (currentVersion == null) { - IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); - IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "FIRStorageVersionString"); - currentVersion = Marshal.PtrToStringAnsi (ptr); - Dlfcn.dlclose (RTLD_MAIN_ONLY); - } - - return currentVersion; - } - } - } - public partial class StorageMetadata { public StorageMetadata (Dictionary dictionary) : this (NSDictionary.FromObjectsAndKeys (dictionary.Values.ToArray (), dictionary.Keys.ToArray (), dictionary.Keys.Count)) diff --git a/source/Firebase/Storage/Storage.csproj b/source/Firebase/Storage/Storage.csproj index db89425f3..aa9c980fb 100644 --- a/source/Firebase/Storage/Storage.csproj +++ b/source/Firebase/Storage/Storage.csproj @@ -6,7 +6,7 @@ Firebase.Storage Firebase.Storage 1.0.0.0 - 3.9.1 + 8.10.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=865545 License.md true - 3.9.1 + 8.10.0 @@ -67,7 +67,7 @@ - + diff --git a/source/Google/Analytics/Analytics.csproj b/source/Google/Analytics/Analytics.csproj index eaa437e49..15319feb3 100644 --- a/source/Google/Analytics/Analytics.csproj +++ b/source/Google/Analytics/Analytics.csproj @@ -6,7 +6,7 @@ Google.Analytics Google.Analytics 1.0.0.0 - 3.17.0.6 + 3.20.0.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=865535 License.md true - 3.17.0.6 + 3.20.0.0 @@ -55,7 +55,7 @@ - + diff --git a/source/Google/Analytics/Analytics.targets b/source/Google/Analytics/Analytics.targets index 56de967a3..1f4aaad7a 100644 --- a/source/Google/Analytics/Analytics.targets +++ b/source/Google/Analytics/Analytics.targets @@ -1,18 +1,17 @@ - + - <_GoogleAnalyticsAssemblyName>Google.Analytics, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - <_GoogleAnalyticsItemsFolder>GAnlytcs-3.17 - <_GoogleAnalyticsSDKBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleAnalyticsItemsFolder)\Libraries\ + <_GoogleAnalyticsItemsFolder>GAnlytcs-3.20 + <_GoogleAnalyticsSDKBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleAnalyticsItemsFolder)\ + <_GoogleAnalyticsFrameworksBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleAnalyticsItemsFolder)\GoogleAnalytics-3.20.0\Frameworks\ - - https://www.gstatic.com/cpdc/5cd71dd2f756bb01/GoogleAnalytics-3.17.0.tar.gz + https://dl.google.com/firebase/ios/analytics/6c1e3b250fd4941d/GoogleAnalytics-3.20.0.tar.gz Tgz - + Static True True @@ -21,4 +20,4 @@ CoreData SystemConfiguration - + \ No newline at end of file diff --git a/source/Google/Cast/ApiDefinition.cs b/source/Google/Cast/ApiDefinition.cs index a9e778c8e..871c73532 100644 --- a/source/Google/Cast/ApiDefinition.cs +++ b/source/Google/Cast/ApiDefinition.cs @@ -19,7 +19,7 @@ interface Common { [Field ("kGCKInvalidRequestID", "__Internal")] nint InvalidRequestId { get; } } - + // @interface GCKAdBreakClipVastAdsRequest : NSObject [Obsolete ("Use the VASTAdsRequest class instead.")] [BaseType (typeof (NSObject), Name = "GCKAdBreakClipVastAdsRequest")] @@ -185,6 +185,10 @@ interface AdBreakInfoBuilder { [Export ("embedded")] bool Embedded { get; set; } + // @property(nonatomic, assign, readonly) BOOL expanded; + [Export ("expanded")] + bool Expanded { get; set; } + // -(instancetype _Nonnull)initWithAdBreakInfo:(GCKAdBreakInfo * _Nonnull)adBreakInfo; [Export ("initWithAdBreakInfo:")] IntPtr Constructor (AdBreakInfo adBreakInfo); @@ -223,6 +227,10 @@ interface AdBreakInfo : INSCopying, INSSecureCoding { [Export ("embedded")] bool Embedded { get; } + // @property(nonatomic, assign, readonly) BOOL expanded; + [Export ("expanded")] + bool Expanded { get; set; } + // -(instancetype _Nonnull)initWithPlaybackPosition:(NSTimeInterval)playbackPosition; [Obsolete ("Use the AdBreakInfoBuilder class to initialize AdBreakInfos")] [Export ("initWithPlaybackPosition:")] @@ -241,7 +249,7 @@ interface AdBreakStatus : INSCopying { double CurrentAdBreakClipTime { get; } // @property (readonly, assign, nonatomic) NSTimeInterval whenSkippable; - [Export("whenSkippable")] + [Export ("whenSkippable")] double WhenSkippable { get; } // @property (readonly, copy, nonatomic) NSString * _Nonnull adBreakID; @@ -392,6 +400,10 @@ interface CastContext { [Export ("unregisterDeviceProviderForCategory:")] void UnregisterDeviceProviderForCategory (string category); + // - (void)setLaunchCredentialsData:(GCKCredentialsData *_Nullable)credentialsData; + [Export ("setLaunchCredentialsData:")] + void SetLaunchCredentialsData ([NullAllowed] CredentialsData credentialsData); + //////////////////////////////////// /// From Category CastContext_UI /// //////////////////////////////////// @@ -509,6 +521,10 @@ interface CastOptions : INSCopying, INSSecureCoding { // @property (assign, readwrite, nonatomic) BOOL stopReceiverApplicationWhenEndingSession; [Export ("stopReceiverApplicationWhenEndingSession")] bool StopReceiverApplicationWhenEndingSession { get; set; } + + // @property(nonatomic, assign) BOOL startDiscoveryAfterFirstTapOnCastButton; + [Export ("startDiscoveryAfterFirstTapOnCastButton")] + bool StartDiscoveryAfterFirstTapOnCastButton { get; set; } } // @interface GCKCastSession : GCKSession @@ -665,6 +681,28 @@ interface Color : INSCopying, INSSecureCoding { Color GetWhite (); } + [DisableDefaultCtor] + [BaseType (typeof (NSObject), Name = "GCKCredentialsData")] + interface CredentialsData { + // - (instancetype)initWithCredentials:(NSString *_Nullable)credentials; + [Export ("initWithCredentials:")] + IntPtr Constructor ([NullAllowed] string credentials); + + // - (instancetype)initWithCredentials:(NSString *_Nullable)credentials credentialsType:(NSString *_Nullable)credentialsType NS_DESIGNATED_INITIALIZER; + [Export ("initWithCredentials:credentialsType:")] + IntPtr Constructor ([NullAllowed] string credentials, [NullAllowed] string credentialsType); + + // - (NSString *_Nullable)credentials; + [NullAllowed] + [Export ("credentials")] + string Credentials { get; } + + // - (NSString *_Nullable)credentialsType; + [NullAllowed] + [Export ("credentialsType")] + string CredentialsType { get; } + } + [DisableDefaultCtor] [BaseType (typeof (NSObject), Name = "GCKDevice")] interface Device : INSCopying, INSSecureCoding { @@ -730,10 +768,6 @@ interface Device : INSCopying, INSSecureCoding { [Export ("hasCapabilities:")] bool HasCapabilities (DeviceCapabilities deviceCapabilities); - [Obsolete ("Use HasCapabilities (DeviceCapabilities) overload method instead. This will be removed in future versions.")] - [Wrap ("HasCapabilities ((DeviceCapabilities)(long)deviceCapabilities)")] - bool HasCapabilities (nint deviceCapabilities); - [Export ("setAttribute:forKey:")] void SetAttribute (INSSecureCoding attribute, string key); @@ -1005,7 +1039,7 @@ interface Error { NSString CustomDataKey { get; } // extern NSString *const _Nonnull kGCKErrorDetailedCodeKey __attribute__((visibility("default"))); - [Field("kGCKErrorDetailedCodeKey", "__Internal")] + [Field ("kGCKErrorDetailedCodeKey", "__Internal")] NSString DetailedCodeKey { get; } // extern NSString *const _Nonnull kGCKErrorExtraInfoKey __attribute__((visibility("default"))); @@ -1013,7 +1047,7 @@ interface Error { NSString ExtraInfoKey { get; } // extern NSString *const _Nonnull kGCKErrorReasonKey __attribute__((visibility("default"))); - [Field("kGCKErrorReasonKey", "__Internal")] + [Field ("kGCKErrorReasonKey", "__Internal")] NSString ReasonKey { get; } [Field ("kGCKErrorDomain", "__Internal")] @@ -1080,6 +1114,36 @@ interface GenericChannelDelegate { void DidChangeWritableState (CastChannel channel, bool writable); } + // @interface GCKHLSSegment : NSObject + [BaseType (typeof (NSObject), Name = "GCKHLSSegment")] + interface HlsSegment { + // +(NSString * _Nullable)mapHLSSegmentFormatToString:(GCKHLSSegmentFormat)hlsSegmentFormat; + [Static] + [Export ("mapHLSSegmentFormatToString:")] + [return: NullAllowed] + string MapHlsSegmentFormatToString (HlsSegmentFormat hlsSegmentFormat); + + // +(GCKHLSSegmentFormat)mapHLSSegmentFormatStringToEnum:(NSString * _Nonnull)hlsSegmentFormatString; + [Static] + [Export ("mapHLSSegmentFormatStringToEnum:")] + HlsSegmentFormat MapHlsSegmentFormatStringToEnum (string hlsSegmentFormatString); + } + + // @interface GCKHLSVideoSegment : NSObject + [BaseType (typeof (NSObject), Name = "GCKHLSVideoSegment")] + interface HlsVideoSegment { + // +(NSString * _Nullable)mapHLSVideoSegmentFormatToString:(GCKHLSVideoSegmentFormat)hlsVideoSegmentFormat; + [Static] + [Export ("mapHLSVideoSegmentFormatToString:")] + [return: NullAllowed] + string MapHlsVideoSegmentFormatToString (HlsVideoSegmentFormat hlsVideoSegmentFormat); + + // +(GCKHLSVideoSegmentFormat)mapHLSVideoSegmentFormatStringToEnum:(NSString * _Nonnull)hlsVideoSegmentFormatString; + [Static] + [Export ("mapHLSVideoSegmentFormatStringToEnum:")] + HlsVideoSegmentFormat MapHlsVideoSegmentFormatStringToEnum (string hlsVideoSegmentFormatString); + } + [DisableDefaultCtor] [BaseType (typeof (NSObject), Name = "GCKImage")] interface Image : INSCopying, INSSecureCoding { @@ -1133,11 +1197,23 @@ interface LaunchOptions : INSCopying, INSSecureCoding { [Export ("relaunchIfRunning")] bool RelaunchIfRunning { get; set; } + // @property(nonatomic, assign) BOOL androidReceiverCompatible; + [Export ("androidReceiverCompatible")] + bool AndroidReceiverCompatible { get; set; } + [Export ("initWithRelaunchIfRunning:")] IntPtr Constructor (bool relaunchIfRunning); [Export ("initWithLanguageCode:relaunchIfRunning:")] IntPtr Constructor ([NullAllowed] string languageCode, bool relaunchIfRunning); + + // - (instancetype)initWithRelaunchIfRunning:(BOOL)relaunchIfRunning androidReceiverCompatible:(BOOL)androidReceiverCompatible; + [Export ("initWithRelaunchIfRunning:androidReceiverCompatible:")] + IntPtr Constructor (bool relaunchIfRunning, bool androidReceiverCompatible); + + // - (instancetype)initWithRelaunchIfRunning:(BOOL)relaunchIfRunning languageCode:(nullable NSString *)languageCode androidReceiverCompatible:(BOOL)androidReceiverCompatible; + [Export ("initWithRelaunchIfRunning:languageCode:androidReceiverCompatible:")] + IntPtr Constructor (bool relaunchIfRunning, [NullAllowed] string languageCode, bool androidReceiverCompatible); } [DisableDefaultCtor] @@ -1287,6 +1363,14 @@ interface MediaInformation : INSCopying, INSSecureCoding { [Export ("startAbsoluteTime")] double StartAbsoluteTime { get; } + // @property (readonly, nonatomic) GCKHLSSegmentFormat hlsSegmentFormat; + [Export ("hlsSegmentFormat")] + HlsSegmentFormat HlsSegmentFormat { get; } + + // @property (readonly, nonatomic) GCKHLSVideoSegmentFormat hlsVideoSegmentFormat; + [Export ("hlsVideoSegmentFormat")] + HlsVideoSegmentFormat HlsVideoSegmentFormat { get; } + [NullAllowed] [Export ("customData")] NSObject CustomData { get; } @@ -1368,6 +1452,14 @@ interface MediaInformationBuilder { [Export ("startAbsoluteTime")] double StartAbsoluteTime { get; set; } + // @property (readonly, nonatomic) GCKHLSSegmentFormat hlsSegmentFormat; + [Export ("hlsSegmentFormat")] + HlsSegmentFormat HlsSegmentFormat { get; } + + // @property (readonly, nonatomic) GCKHLSVideoSegmentFormat hlsVideoSegmentFormat; + [Export ("hlsVideoSegmentFormat")] + HlsVideoSegmentFormat HlsVideoSegmentFormat { get; } + // @property (readwrite, nonatomic, strong) id _Nullable customData; [NullAllowed] [Export ("customData", ArgumentSemantic.Strong)] @@ -1508,6 +1600,16 @@ interface MediaLoadRequestData : INSCopying, INSSecureCoding { [NullAllowed] [Export ("credentialsType")] string CredentialsType { get; } + + // @property(nonatomic, copy, readonly, nullable) NSString *atvCredentials; + [NullAllowed] + [Export ("atvCredentials")] + string AtvCredentials { get; } + + // @property(nonatomic, copy, readonly, nullable) NSString *atvCredentialsType; + [NullAllowed] + [Export ("atvCredentialsType")] + string AtvCredentialsType { get; } } // @interface GCKMediaLoadRequestDataBuilder : NSObject @@ -1557,6 +1659,16 @@ interface MediaLoadRequestDataBuilder { [Export ("credentialsType")] string CredentialsType { get; set; } + // @property(nonatomic, copy, readonly, nullable) NSString *atvCredentials; + [NullAllowed] + [Export ("atvCredentials")] + string AtvCredentials { get; } + + // @property(nonatomic, copy, readonly, nullable) NSString *atvCredentialsType; + [NullAllowed] + [Export ("atvCredentialsType")] + string AtvCredentialsType { get; } + // -(instancetype _Nonnull)initWithMediaLoadRequestData:(GCKMediaLoadRequestData * _Nonnull)requestData; [Export ("initWithMediaLoadRequestData:")] IntPtr Constructor (MediaLoadRequestData requestData); @@ -2146,11 +2258,13 @@ interface MediaRequestItem : INSCopying, INSSecureCoding { // +(NSString * _Nonnull)mapHLSSegmentFormatToString:(GCKHLSSegmentFormat)hlsSegmentFormat; [Static] [Export ("mapHLSSegmentFormatToString:")] + [Obsolete ("Use HlsSegment.MapHlsSegmentFormatToString")] string MapHlsSegmentFormatToString (HlsSegmentFormat hlsSegmentFormat); // +(GCKHLSSegmentFormat)mapHLSSegmentFormatStringToEnum:(NSString * _Nonnull)hlsSegmentFormatString; [Static] [Export ("mapHLSSegmentFormatStringToEnum:")] + [Obsolete ("Use HlsSegment.MapHlsSegmentFormatStringToEnum")] HlsSegmentFormat MapHlsSegmentFormatStringToEnum (string hlsSegmentFormatString); // -(instancetype _Nonnull)initWithURL:(NSURL * _Nonnull)url protocolType:(GCKStreamingProtocolType)protocolType initialTime:(NSTimeInterval)initialTime hlsSegmentFormat:(GCKHLSSegmentFormat)hlsSegmentFormat; @@ -2230,51 +2344,51 @@ interface MediaCommand { nint QueuePrevious { get; } // extern const NSInteger kGCKMediaCommandQueueShuffle __attribute__((visibility("default"))); - [Field("kGCKMediaCommandQueueShuffle", "__Internal")] + [Field ("kGCKMediaCommandQueueShuffle", "__Internal")] nint QueueShuffle { get; } // extern const NSInteger kGCKMediaCommandSkipAd __attribute__((visibility("default"))); - [Field("kGCKMediaCommandSkipAd", "__Internal")] + [Field ("kGCKMediaCommandSkipAd", "__Internal")] nint SkipAd { get; } // extern const NSInteger kGCKMediaCommandQueueRepeatAll __attribute__((visibility("default"))); - [Field("kGCKMediaCommandQueueRepeatAll", "__Internal")] + [Field ("kGCKMediaCommandQueueRepeatAll", "__Internal")] nint QueueRepeatAll { get; } // extern const NSInteger kGCKMediaCommandQueueRepeatOne __attribute__((visibility("default"))); - [Field("kGCKMediaCommandQueueRepeatOne", "__Internal")] + [Field ("kGCKMediaCommandQueueRepeatOne", "__Internal")] nint QueueRepeatOne { get; } // extern const NSInteger kGCKMediaCommandQueueRepeat __attribute__((visibility("default"))); - [Field("kGCKMediaCommandQueueRepeat", "__Internal")] + [Field ("kGCKMediaCommandQueueRepeat", "__Internal")] nint QueueRepeat { get; } // extern const NSInteger kGCKMediaCommandEditTracks __attribute__((visibility("default"))); - [Field("kGCKMediaCommandEditTracks", "__Internal")] + [Field ("kGCKMediaCommandEditTracks", "__Internal")] nint EditTracks { get; } // extern const NSInteger kGCKMediaCommandSetPlaybackRate __attribute__((visibility("default"))); - [Field("kGCKMediaCommandSetPlaybackRate", "__Internal")] + [Field ("kGCKMediaCommandSetPlaybackRate", "__Internal")] nint SetPlaybackRate { get; } // extern const NSInteger kGCKMediaCommandLike __attribute__((visibility("default"))); - [Field("kGCKMediaCommandLike", "__Internal")] + [Field ("kGCKMediaCommandLike", "__Internal")] nint Like { get; } // extern const NSInteger kGCKMediaCommandDislike __attribute__((visibility("default"))); - [Field("kGCKMediaCommandDislike", "__Internal")] + [Field ("kGCKMediaCommandDislike", "__Internal")] nint Dislike { get; } // extern const NSInteger kGCKMediaCommandFollow __attribute__((visibility("default"))); - [Field("kGCKMediaCommandFollow", "__Internal")] + [Field ("kGCKMediaCommandFollow", "__Internal")] nint Follow { get; } // extern const NSInteger kGCKMediaCommandUnfollow __attribute__((visibility("default"))); - [Field("kGCKMediaCommandUnfollow", "__Internal")] + [Field ("kGCKMediaCommandUnfollow", "__Internal")] nint Unfollow { get; } // extern const NSInteger kGCKMediaCommandStreamTransfer __attribute__((visibility("default"))); - [Field("kGCKMediaCommandStreamTransfer", "__Internal")] + [Field ("kGCKMediaCommandStreamTransfer", "__Internal")] nint StreamTransfer { get; } } @@ -3414,12 +3528,19 @@ interface GCKUIButton { } // @interface GCKUICastButton : UIButton - [BaseType (typeof (UIButton), Name = "GCKUICastButton")] + [BaseType (typeof (UIButton), + Name = "GCKUICastButton", + Delegates = new string [] { "Delegate" }, + Events = new Type [] { typeof (UICastButtonDelegate) })] interface UICastButton { - // @property (assign, readwrite, nonatomic) BOOL triggersDefaultCastDialog; + // @property (assign, nonatomic) BOOL triggersDefaultCastDialog __attribute__((deprecated("Use the GCKUICastButtonDelegate methods to respond to the actions on the cast button."))); [Export ("triggersDefaultCastDialog")] bool TriggersDefaultCastDialog { get; set; } + // @property (nonatomic, weak) id _Nullable delegate; + [NullAllowed, Export ("delegate", ArgumentSemantic.Weak)] + UICastButtonDelegate Delegate { get; set; } + // -(instancetype _Nonnull)initWithFrame:(CGRect)frame; [Export ("initWithFrame:")] IntPtr Constructor (CGRect frame); @@ -3428,11 +3549,29 @@ interface UICastButton { [Export ("setInactiveIcon:activeIcon:animationIcons:")] void SetInactiveIcon (UIImage inactiveIcon, UIImage activeIcon, UIImage [] animationIcons); - // - (void)setAccessibilityLabel:(NSString *)label forCastState:(GCKCastState) state; + // -(void)setAccessibilityLabel:(NSString * _Nonnull)label forCastState:(GCKCastState)state; [Export ("setAccessibilityLabel:forCastState:")] void SetAccessibilityLabel (string label, CastState state); } + interface IUICastButtonDelegate { + } + + // @protocol GCKUICastButtonDelegate + [Protocol, Model (AutoGeneratedName = true)] + [BaseType (typeof (NSObject), Name = "GCKUICastButtonDelegate")] + interface UICastButtonDelegate { + // @optional -(void)castButtonDidTapToPresentLocalNetworkAccessPermissionDialog:(GCKUICastButton * _Nonnull)castButton; + [Export ("castButtonDidTapToPresentLocalNetworkAccessPermissionDialog:")] + [EventArgs ("CastButtonDidTapToPresentLocalNetworkAccessPermissionDialog")] + void CastButtonDidTapToPresentLocalNetworkAccessPermissionDialog (UICastButton castButton); + + // @optional -(void)castButtonDidTap:(GCKUICastButton * _Nonnull)castButton toPresentDialogForCastState:(GCKCastState)castState; + [Export ("castButtonDidTap:toPresentDialogForCastState:")] + [EventArgs ("CastButtonDidTap")] + void CastButtonDidTap (UICastButton castButton, CastState castState); + } + // @interface GCKUICastContainerViewController : UIViewController [BaseType (typeof (UIViewController), Name = "GCKUICastContainerViewController")] interface UICastContainerViewController { diff --git a/source/Google/Cast/Cast.csproj b/source/Google/Cast/Cast.csproj index 4dd774a62..2c8cb79f5 100644 --- a/source/Google/Cast/Cast.csproj +++ b/source/Google/Cast/Cast.csproj @@ -6,7 +6,7 @@ Google.Cast Google.Cast 1.0.0.0 - 4.4.6.1 + 4.7.0.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=865570 License.md true - 4.4.6.1 + 4.7.0.0 @@ -58,7 +58,7 @@ - + diff --git a/source/Google/Cast/Cast.targets b/source/Google/Cast/Cast.targets index b28197af1..4108de439 100644 --- a/source/Google/Cast/Cast.targets +++ b/source/Google/Cast/Cast.targets @@ -2,20 +2,21 @@ <_GoogleCastAssemblyName>Google.Cast, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - <_GoogleCastVersion>4.4.6 + <_GoogleCastVersion>4.7.0 <_GoogleCastItemsFolder Condition="'$(GoogleCastBluetoothEnabled)'=='True'">GCst-$(_GoogleCastVersion) <_GoogleCastItemsFolder Condition="'$(GoogleCastBluetoothEnabled)'!='True'">GCstNB-$(_GoogleCastVersion) <_GoogleCastFrameworks Condition="'$(GoogleCastBluetoothEnabled)'=='True'">Accelerate AudioToolbox AVFoundation CFNetwork CoreBluetooth CoreData CoreGraphics CoreMedia CoreText Foundation MediaAccessibility MediaPlayer QuartzCore Security SystemConfiguration UIKit <_GoogleCastFrameworks Condition="'$(GoogleCastBluetoothEnabled)'!='True'">Accelerate AudioToolbox AVFoundation CFNetwork CoreData CoreGraphics CoreMedia CoreText Foundation MediaAccessibility MediaPlayer QuartzCore Security SystemConfiguration UIKit - <_GoogleCastUrl Condition="'$(GoogleCastBluetoothEnabled)'=='True'">https://dl.google.com/dl/chromecast/sdk/ios/GoogleCastSDK-ios-$(_GoogleCastVersion)_dynamic.zip - <_GoogleCastUrl Condition="'$(GoogleCastBluetoothEnabled)'!='True'">https://dl.google.com/dl/chromecast/sdk/ios/GoogleCastSDK-ios-no-bluetooth-$(_GoogleCastVersion)_dynamic.zip + <_GoogleCastUrl Condition="'$(GoogleCastBluetoothEnabled)'=='True'">https://dl.google.com/dl/chromecast/sdk/ios/GoogleCastSDK-ios-$(_GoogleCastVersion)_dynamic.zip + <_GoogleCastUrl Condition="'$(GoogleCastBluetoothEnabled)'!='True'">https://dl.google.com/dl/chromecast/sdk/ios/GoogleCastSDK-ios-no-bluetooth-$(_GoogleCastVersion)_dynamic.zip + <_GoogleCastBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleCastItemsFolder)\GoogleCastSDK-ios-$(_GoogleCastVersion)_dynamic\ $(_GoogleCastUrl) Zip - + False -lc++ $(_GoogleCastFrameworks) @@ -23,5 +24,954 @@ True True + + + + + GoogleCastCoreResources.bundle\af.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\ar.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\bg.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\bn.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\ca.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\CastFrameworkDB.momd\CastFrameworkDB.mom + + + GoogleCastCoreResources.bundle\CastFrameworkDB.momd\CastFrameworkDB01.mom + + + GoogleCastCoreResources.bundle\CastFrameworkDB.momd\CastFrameworkDB02.mom + + + GoogleCastCoreResources.bundle\CastFrameworkDB.momd\CastFrameworkDB03.mom + + + GoogleCastCoreResources.bundle\CastFrameworkDB.momd\CastFrameworkDB04.mom + + + GoogleCastCoreResources.bundle\CastFrameworkDB.momd\CastFrameworkDB05.mom + + + GoogleCastCoreResources.bundle\CastFrameworkDB.momd\CastFrameworkDB06.mom + + + GoogleCastCoreResources.bundle\CastFrameworkDB.momd\CastFrameworkDB07.mom + + + GoogleCastCoreResources.bundle\CastFrameworkDB.momd\CastFrameworkDB08.mom + + + GoogleCastCoreResources.bundle\CastFrameworkDB.momd\CastFrameworkDB09.mom + + + GoogleCastCoreResources.bundle\CastFrameworkDB.momd\CastFrameworkDB09.omo + + + GoogleCastCoreResources.bundle\CastFrameworkDB.momd\VersionInfo.plist + + + GoogleCastCoreResources.bundle\cs.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\da.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\de.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\el.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\en.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\en_GB.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\es.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\es_419.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\et.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\fa.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\fi.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\fil.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\fr.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\hi.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\hr.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\hu.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\hy.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\id.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\is.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\it.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\iw.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\ja.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\ka.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\km.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\ko.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\lo.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\lt.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\lv.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\mk.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\mn.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\mr.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\ms.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\my.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\ne.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\nl.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\no.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\pl.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\pt.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\pt_PT.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\ro.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\ru.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\si.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\sk.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\sl.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\sr.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\sv.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\sw.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\ta.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\th.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\tr.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\uk.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\vi.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\zh.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\zh_CN.lproj\CoreLocalizable.strings + + + GoogleCastCoreResources.bundle\zh_TW.lproj\CoreLocalizable.strings + + + + + GoogleCastUIResources.bundle\af.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\af.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\ar.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\ar.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\Info.plist + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\4HD-aa-FNo-view-1HP-BM-J3I.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\6is-ze-qoP-view-Vah-jq-ZgN.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\9V7-ce-5KJ-view-WQF-my-40r.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\a4H-bv-VbH-view-Xbz-9K-eDJ.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\C87-rF-Kff-view-Z93-bw-eCT.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\CastContainer.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\CastInstructions.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\DeviceConnectionNavigation.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\egs-hj-bEX-view-MTY-Nw-q8O.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\ExpandedMediaControlsViewController.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\GuestModePairingViewController.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\MediaTrackSelectionController.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\MediaTrackSelectionNavigation.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\MiniMediaControlsViewController.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\mzQ-08-M2L-view-QcC-yO-nhF.nib + + + GoogleCastUIResources.bundle\Base.lproj\CastComponents.storyboardc\Osx-kD-8NW-view-pIN-ie-DHT.nib + + + GoogleCastUIResources.bundle\bg.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\bg.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\bn.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\bn.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\ca.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\ca.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\cs.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\cs.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\da.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\da.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\de.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\de.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\el.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\el.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\en.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\en.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\en_GB.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\en_GB.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\es.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\es.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\es_419.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\es_419.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\et.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\et.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\fa.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\fa.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\fi.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\fi.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\fil.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\fil.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\fr.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\fr.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\hi.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\hi.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\hr.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\hr.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\hu.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\hu.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\hy.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\hy.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\Icons\audio_track_48pt.png + + + GoogleCastUIResources.bundle\Icons\audio_track_48pt@2x.png + + + GoogleCastUIResources.bundle\Icons\audio_track_48pt@3x.png + + + GoogleCastUIResources.bundle\Icons\cast_connected_24pt.png + + + GoogleCastUIResources.bundle\Icons\cast_connected_24pt@2x.png + + + GoogleCastUIResources.bundle\Icons\cast_connected_24pt@3x.png + + + GoogleCastUIResources.bundle\Icons\cast_disconnected_24pt.png + + + GoogleCastUIResources.bundle\Icons\cast_disconnected_24pt@2x.png + + + GoogleCastUIResources.bundle\Icons\cast_disconnected_24pt@3x.png + + + GoogleCastUIResources.bundle\Icons\cast_on0.png + + + GoogleCastUIResources.bundle\Icons\cast_on0@2x.png + + + GoogleCastUIResources.bundle\Icons\cast_on0@3x.png + + + GoogleCastUIResources.bundle\Icons\cast_on1.png + + + GoogleCastUIResources.bundle\Icons\cast_on1@2x.png + + + GoogleCastUIResources.bundle\Icons\cast_on1@3x.png + + + GoogleCastUIResources.bundle\Icons\cast_on2.png + + + GoogleCastUIResources.bundle\Icons\cast_on2@2x.png + + + GoogleCastUIResources.bundle\Icons\cast_on2@3x.png + + + GoogleCastUIResources.bundle\Icons\closed_caption_36pt.png + + + GoogleCastUIResources.bundle\Icons\closed_caption_36pt@2x.png + + + GoogleCastUIResources.bundle\Icons\closed_caption_36pt@3x.png + + + GoogleCastUIResources.bundle\Icons\closed_caption_48pt.png + + + GoogleCastUIResources.bundle\Icons\closed_caption_48pt@2x.png + + + GoogleCastUIResources.bundle\Icons\closed_caption_48pt@3x.png + + + GoogleCastUIResources.bundle\Icons\collapse_arrow_24pt.png + + + GoogleCastUIResources.bundle\Icons\collapse_arrow_24pt@2x.png + + + GoogleCastUIResources.bundle\Icons\collapse_arrow_24pt@3x.png + + + GoogleCastUIResources.bundle\Icons\forward_30_36pt.png + + + GoogleCastUIResources.bundle\Icons\forward_30_36pt@2x.png + + + GoogleCastUIResources.bundle\Icons\forward_30_36pt@3x.png + + + GoogleCastUIResources.bundle\Icons\forward_30_48pt.png + + + GoogleCastUIResources.bundle\Icons\forward_30_48pt@2x.png + + + GoogleCastUIResources.bundle\Icons\forward_30_48pt@3x.png + + + GoogleCastUIResources.bundle\Icons\hardware_speaker_24pt.png + + + GoogleCastUIResources.bundle\Icons\hardware_speaker_24pt@2x.png + + + GoogleCastUIResources.bundle\Icons\hardware_speaker_24pt@3x.png + + + GoogleCastUIResources.bundle\Icons\hardware_speaker_group_24pt.png + + + GoogleCastUIResources.bundle\Icons\hardware_speaker_group_24pt@2x.png + + + GoogleCastUIResources.bundle\Icons\hardware_speaker_group_24pt@3x.png + + + GoogleCastUIResources.bundle\Icons\hardware_tv_24pt.png + + + GoogleCastUIResources.bundle\Icons\hardware_tv_24pt@2x.png + + + GoogleCastUIResources.bundle\Icons\hardware_tv_24pt@3x.png + + + GoogleCastUIResources.bundle\Icons\ic_close_icon.png + + + GoogleCastUIResources.bundle\Icons\ic_close_icon@2x.png + + + GoogleCastUIResources.bundle\Icons\ic_close_icon@3x.png + + + GoogleCastUIResources.bundle\Icons\pause_48pt.png + + + GoogleCastUIResources.bundle\Icons\pause_48pt@2x.png + + + GoogleCastUIResources.bundle\Icons\pause_48pt@3x.png + + + GoogleCastUIResources.bundle\Icons\pause_circle_filled_64pt.png + + + GoogleCastUIResources.bundle\Icons\pause_circle_filled_64pt@2x.png + + + GoogleCastUIResources.bundle\Icons\pause_circle_filled_64pt@3x.png + + + GoogleCastUIResources.bundle\Icons\play_48pt.png + + + GoogleCastUIResources.bundle\Icons\play_48pt@2x.png + + + GoogleCastUIResources.bundle\Icons\play_48pt@3x.png + + + GoogleCastUIResources.bundle\Icons\play_circle_filled_64pt.png + + + GoogleCastUIResources.bundle\Icons\play_circle_filled_64pt@2x.png + + + GoogleCastUIResources.bundle\Icons\play_circle_filled_64pt@3x.png + + + GoogleCastUIResources.bundle\Icons\replay_30_36pt.png + + + GoogleCastUIResources.bundle\Icons\replay_30_36pt@2x.png + + + GoogleCastUIResources.bundle\Icons\replay_30_36pt@3x.png + + + GoogleCastUIResources.bundle\Icons\replay_30_48pt.png + + + GoogleCastUIResources.bundle\Icons\replay_30_48pt@2x.png + + + GoogleCastUIResources.bundle\Icons\replay_30_48pt@3x.png + + + GoogleCastUIResources.bundle\Icons\skip_next_36pt.png + + + GoogleCastUIResources.bundle\Icons\skip_next_36pt@2x.png + + + GoogleCastUIResources.bundle\Icons\skip_next_36pt@3x.png + + + GoogleCastUIResources.bundle\Icons\skip_next_48pt.png + + + GoogleCastUIResources.bundle\Icons\skip_next_48pt@2x.png + + + GoogleCastUIResources.bundle\Icons\skip_next_48pt@3x.png + + + GoogleCastUIResources.bundle\Icons\skip_previous_36pt.png + + + GoogleCastUIResources.bundle\Icons\skip_previous_36pt@2x.png + + + GoogleCastUIResources.bundle\Icons\skip_previous_36pt@3x.png + + + GoogleCastUIResources.bundle\Icons\skip_previous_48pt.png + + + GoogleCastUIResources.bundle\Icons\skip_previous_48pt@2x.png + + + GoogleCastUIResources.bundle\Icons\skip_previous_48pt@3x.png + + + GoogleCastUIResources.bundle\Icons\sliderthumb_focused_light.png + + + GoogleCastUIResources.bundle\Icons\sliderthumb_focused_light@2x.png + + + GoogleCastUIResources.bundle\Icons\sliderthumb_focused_light@3x.png + + + GoogleCastUIResources.bundle\Icons\sliderthumb_normal_light.png + + + GoogleCastUIResources.bundle\Icons\sliderthumb_normal_light@2x.png + + + GoogleCastUIResources.bundle\Icons\sliderthumb_normal_light@3x.png + + + GoogleCastUIResources.bundle\Icons\stop_36pt.png + + + GoogleCastUIResources.bundle\Icons\stop_36pt@2x.png + + + GoogleCastUIResources.bundle\Icons\stop_36pt@3x.png + + + GoogleCastUIResources.bundle\Icons\stop_48pt.png + + + GoogleCastUIResources.bundle\Icons\stop_48pt@2x.png + + + GoogleCastUIResources.bundle\Icons\stop_48pt@3x.png + + + GoogleCastUIResources.bundle\Icons\volume_mute_36pt.png + + + GoogleCastUIResources.bundle\Icons\volume_mute_36pt@2x.png + + + GoogleCastUIResources.bundle\Icons\volume_mute_36pt@3x.png + + + GoogleCastUIResources.bundle\Icons\volume_mute_48pt.png + + + GoogleCastUIResources.bundle\Icons\volume_mute_48pt@2x.png + + + GoogleCastUIResources.bundle\Icons\volume_mute_48pt@3x.png + + + GoogleCastUIResources.bundle\Icons\volume_off_36pt.png + + + GoogleCastUIResources.bundle\Icons\volume_off_36pt@2x.png + + + GoogleCastUIResources.bundle\Icons\volume_off_36pt@3x.png + + + GoogleCastUIResources.bundle\Icons\volume_off_48pt.png + + + GoogleCastUIResources.bundle\Icons\volume_off_48pt@2x.png + + + GoogleCastUIResources.bundle\Icons\volume_off_48pt@3x.png + + + GoogleCastUIResources.bundle\Icons\volume_up_36pt.png + + + GoogleCastUIResources.bundle\Icons\volume_up_36pt@2x.png + + + GoogleCastUIResources.bundle\Icons\volume_up_36pt@3x.png + + + GoogleCastUIResources.bundle\Icons\volume_up_48pt.png + + + GoogleCastUIResources.bundle\Icons\volume_up_48pt@2x.png + + + GoogleCastUIResources.bundle\Icons\volume_up_48pt@3x.png + + + GoogleCastUIResources.bundle\id.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\id.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\is.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\is.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\it.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\it.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\iw.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\iw.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\ja.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\ja.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\ka.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\ka.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\km.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\km.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\ko.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\ko.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\lo.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\lo.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\lt.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\lt.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\lv.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\lv.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\mk.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\mk.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\mn.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\mn.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\mr.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\mr.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\ms.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\ms.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\my.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\my.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\ne.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\ne.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\nl.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\nl.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\no.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\no.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\pl.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\pl.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\pt.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\pt.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\pt_PT.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\pt_PT.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\ro.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\ro.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\ru.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\ru.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\si.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\si.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\sk.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\sk.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\sl.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\sl.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\sr.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\sr.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\sv.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\sv.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\sw.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\sw.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\ta.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\ta.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\th.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\th.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\tr.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\tr.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\uk.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\uk.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\vi.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\vi.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\zh.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\zh.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\zh_CN.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\zh_CN.lproj\UILocalizable.strings + + + GoogleCastUIResources.bundle\zh_TW.lproj\CastComponents.strings + + + GoogleCastUIResources.bundle\zh_TW.lproj\UILocalizable.strings + + + diff --git a/source/Google/Cast/Enums.cs b/source/Google/Cast/Enums.cs index 6b6cc77c9..3ade1a86e 100644 --- a/source/Google/Cast/Enums.cs +++ b/source/Google/Cast/Enums.cs @@ -1,11 +1,9 @@ using System; using ObjCRuntime; -namespace Google.Cast -{ +namespace Google.Cast { [Native] - public enum ConnectionState : long - { + public enum ConnectionState : long { Disconnected = 0, Connecting = 1, Connected = 2, @@ -13,8 +11,7 @@ public enum ConnectionState : long } [Native] - public enum ConnectionSuspendReason : long - { + public enum ConnectionSuspendReason : long { Unknown = -1, None = 0, AppBackgrounded = 1, @@ -24,24 +21,21 @@ public enum ConnectionSuspendReason : long } [Native] - public enum ActiveInputStatus : long - { + public enum ActiveInputStatus : long { Unknown = -1, Inactive = 0, Active = 1 } [Native] - public enum StandbyStatus : long - { + public enum StandbyStatus : long { Unknown = -1, Inactive = 0, Active = 1, } [Native] - public enum CastState : ulong - { + public enum CastState : ulong { NoDevicesAvailable = 0, NotConnected = 1, Connecting = 2, @@ -49,8 +43,7 @@ public enum CastState : ulong } [Native] - public enum DeviceStatus : long - { + public enum DeviceStatus : long { Unknown = -1, Idle = 0, Busy = 1, @@ -65,6 +58,8 @@ public enum DeviceCapabilities : long { AudioIn = 1 << 3, MultizoneGroup = 1 << 5, DynamicGroup = 1 << 6, + MultiChannelGroup = 1 << 7, + MultiChannelMember = 1 << 8, MasterOrFixedVolume = 1 << 11, AttenuationOrFixedVolume = 1 << 12, DynamicGroupingSupported = 1 << 16 @@ -73,8 +68,7 @@ public enum DeviceCapabilities : long { [Obsolete ("Use DeviceCapabilities enum instead.")] [Flags] [Native] - public enum DeviceCapability : long - { + public enum DeviceCapability : long { VideoOut = 1 << 0, VideoIn = 1 << 1, AudioOut = 1 << 2, @@ -87,8 +81,7 @@ public enum DeviceCapability : long } [Native] - public enum DeviceType : long - { + public enum DeviceType : long { Generic = 0, Tv, Speaker, @@ -97,15 +90,13 @@ public enum DeviceType : long } [Native] - public enum DiscoveryState : long - { + public enum DiscoveryState : long { Stopped = 0, Running = 1 } [Native] - public enum ErrorCode : long - { + public enum ErrorCode : long { NoError = 0, NetworkError = 1, Timeout = 2, @@ -150,36 +141,36 @@ public enum ErrorCode : long DeviceCapabilityNotSupported = 46, CrlInvalid = 47, CrlCheckFailed = 48, - BroadcastMessageEncryptionFailed = 50, - BroadcastKeyExchangeInvalidResponse = 51, - BroadcastKeyExchangeInvalidInput = 52, - BroadcastKeyExchangeEmptyResponse = 53, - BroadcastKeyExchangeRequestTimeout = 54, - BroadcastKeyExchangeFailedToFindDevice = 55, - BroadcastKeyExchangeFailedToConnect = 56, - BroadcastMessageDropped = 57, - BroadcastSocketError = 58, - BroadcastFailedToGenerateEncryptionKey = 59, + BroadcastMessageEncryptionFailed = 50, + BroadcastKeyExchangeInvalidResponse = 51, + BroadcastKeyExchangeInvalidInput = 52, + BroadcastKeyExchangeEmptyResponse = 53, + BroadcastKeyExchangeRequestTimeout = 54, + BroadcastKeyExchangeFailedToFindDevice = 55, + BroadcastKeyExchangeFailedToConnect = 56, + BroadcastMessageDropped = 57, + BroadcastSocketError = 58, + BroadcastFailedToGenerateEncryptionKey = 59, GuestModeListenFailed = 60, - RemoteDisplayError = 80, - RemoteDisplayDeviceNotSupported = 81, - RemoteDisplayFeatureNotSupported = 82, - RemoteDisplayConfigurationRejectedByReceiver = 83, - RemoteDisplayOpenGLError = 84, - RemoteDisplayMetalError = 85, - RemoteDisplayAudioConversionError = 86, + RemoteDisplayError = 80, + RemoteDisplayDeviceNotSupported = 81, + RemoteDisplayFeatureNotSupported = 82, + RemoteDisplayConfigurationRejectedByReceiver = 83, + RemoteDisplayOpenGLError = 84, + RemoteDisplayMetalError = 85, + RemoteDisplayAudioConversionError = 86, AppDidEnterBackground = 91, Disconnected = 92, UnsupportedFeature = 93, Unknown = 99, DeviceAuthenticationMessageParseFailure = 100, DeviceAuthenticationMessageChallengeReceivedFailure = 101, - DeviceAuthenticationTimeoutFailure = 102 + DeviceAuthenticationTimeoutFailure = 102, + LaunchRequestCancelled = 103 } [Native] - public enum LoggerLevel : long - { + public enum LoggerLevel : long { None = 0, Verbose = 1, Debug = 2, @@ -190,16 +181,14 @@ public enum LoggerLevel : long } [Native] - public enum MediaResumeState : long - { + public enum MediaResumeState : long { Unchanged = 0, Play = 1, Pause = 2 } [Native] - public enum MediaRepeatMode : long - { + public enum MediaRepeatMode : long { Unchanged = 0, Off = 1, Single = 2, @@ -208,8 +197,7 @@ public enum MediaRepeatMode : long } [Native] - public enum MediaStreamType : long - { + public enum MediaStreamType : long { None = 0, Buffered = 1, Live = 2, @@ -217,8 +205,7 @@ public enum MediaStreamType : long } [Native] - public enum MediaMetadataType : long - { + public enum MediaMetadataType : long { Generic = 0, Movie = 1, TvShow = 2, @@ -249,8 +236,7 @@ public enum MediaQueueType : long { } [Native] - public enum StreamingProtocolType : long - { + public enum StreamingProtocolType : long { Unknown = 0, MpegDash = 1, Hls = 2, @@ -258,18 +244,26 @@ public enum StreamingProtocolType : long } [Native] - public enum HlsSegmentFormat : long - { + public enum HlsSegmentFormat : long { Undefined = 0, Aac = 1, Ac3 = 2, Mp3 = 3, - Ts = 4 + Ts = 4, + TsAac = 5, + EAc3 = 6, + Fmp4 = 7 } [Native] - public enum MediaPlayerState : long - { + public enum HlsVideoSegmentFormat : long { + Undefined = 0, + Mpeg2Ts = 1, + Fmp4 = 2 + } + + [Native] + public enum MediaPlayerState : long { Unknown = 0, Idle = 1, Playing = 2, @@ -279,8 +273,7 @@ public enum MediaPlayerState : long } [Native] - public enum MediaPlayerIdleReason : long - { + public enum MediaPlayerIdleReason : long { None = 0, Finished = 1, Cancelled = 2, @@ -289,8 +282,7 @@ public enum MediaPlayerIdleReason : long } [Native] - public enum MediaTextTrackStyleEdgeType : long - { + public enum MediaTextTrackStyleEdgeType : long { Unknown = -1, None = 0, Outline = 1, @@ -300,8 +292,7 @@ public enum MediaTextTrackStyleEdgeType : long } [Native] - public enum MediaTextTrackStyleWindowType : long - { + public enum MediaTextTrackStyleWindowType : long { Unknown = -1, None = 0, Normal = 1, @@ -309,8 +300,7 @@ public enum MediaTextTrackStyleWindowType : long } [Native] - public enum MediaTextTrackStyleFontGenericFamily : long - { + public enum MediaTextTrackStyleFontGenericFamily : long { Unknown = -1, None = 0, SansSerif = 1, @@ -323,8 +313,7 @@ public enum MediaTextTrackStyleFontGenericFamily : long } [Native] - public enum MediaTextTrackStyleFontStyle : long - { + public enum MediaTextTrackStyleFontStyle : long { Unknown = -1, Normal = 0, Bold = 1, @@ -333,8 +322,7 @@ public enum MediaTextTrackStyleFontStyle : long } [Native] - public enum MediaTrackType : long - { + public enum MediaTrackType : long { Unknown = 0, Text = 1, Audio = 2, @@ -342,8 +330,7 @@ public enum MediaTrackType : long } [Native] - public enum MediaTextTrackSubtype : long - { + public enum MediaTextTrackSubtype : long { Unknown = 0, Subtitles = 1, Captions = 3, @@ -353,8 +340,7 @@ public enum MediaTextTrackSubtype : long } [Native] - public enum NetworkAddressType : long - { + public enum NetworkAddressType : long { Unknown = 0, IPv4 = 1, IPv6 = 2, @@ -362,15 +348,13 @@ public enum NetworkAddressType : long } [Native] - public enum RequestAbortReason : long - { + public enum RequestAbortReason : long { Replaced = 1, Cancelled = 2 } [Native] - public enum SenderApplicationInfoPlatform : long - { + public enum SenderApplicationInfoPlatform : long { Android = 1, iOS = 2, Chrome = 3, @@ -378,16 +362,14 @@ public enum SenderApplicationInfoPlatform : long } [Native] - public enum SessionEndAction : long - { + public enum SessionEndAction : long { Leave = 1, Disconnect = 2, StopCasting = 3 } [Native] - public enum MediaMetadataImageType : long - { + public enum MediaMetadataImageType : long { Custom = 0, CastDialog = 1, MiniController = 2, @@ -395,8 +377,7 @@ public enum MediaMetadataImageType : long } [Native] - public enum UIMediaButtonType : long - { + public enum UIMediaButtonType : long { None, PlayPauseToggle, SkipNext, @@ -410,16 +391,14 @@ public enum UIMediaButtonType : long } [Native] - public enum UIPlayPauseState : long - { + public enum UIPlayPauseState : long { None = 0, Play = 1, Pause = 2 } [Native] - public enum VideoInfoHdrType : long - { + public enum VideoInfoHdrType : long { Unknown = -1, Sdr = 0, Dv = 1, diff --git a/source/Google/Maps/ApiDefinition.cs b/source/Google/Maps/ApiDefinition.cs index 58c437ed3..aae12312c 100644 --- a/source/Google/Maps/ApiDefinition.cs +++ b/source/Google/Maps/ApiDefinition.cs @@ -80,6 +80,9 @@ interface Constants [Field ("kGMSAccessibilityMyLocation", "__Internal")] NSString AccessibilityMyLocation { get; } + [Field ("kGMSAccessiblityOutOfQuota", "__Internal")] + NSString AccessiblityOutOfQuota { get; } + [Field ("kGMSEquatorProjectedMeter", "__Internal")] double EquatorProjectedMeter { get; } } @@ -430,7 +433,6 @@ interface IndoorLevel string ShortName { get; } } - [BaseType (typeof (Layer), Name = "GMSMapLayer")] interface MapLayer { @@ -664,6 +666,19 @@ interface MapView // - (BOOL)areEqualForRenderingPosition:(GMSCameraPosition *)position position:(GMSCameraPosition*)otherPosition; [Export ("areEqualForRenderingPosition:position:")] bool Equals (CameraPosition position, CameraPosition otherPosition); + + /// + /// From a category (GMSMapView+Premium.h) + /// + + // +(instancetype _Nonnull)mapWithFrame:(CGRect)frame mapID:(GMSMapID * _Nonnull)mapID camera:(GMSCameraPosition * _Nonnull)camera __attribute__((availability(swift, unavailable))); + [Static] + [Export ("mapWithFrame:mapID:camera:")] + MapView MapWithFrame (CGRect frame, MapId mapId, CameraPosition camera); + + // -(instancetype _Nonnull)initWithFrame:(CGRect)frame mapID:(GMSMapID * _Nonnull)mapID camera:(GMSCameraPosition * _Nonnull)camera; + [Export ("initWithFrame:mapID:camera:")] + IntPtr Constructor (CGRect frame, MapId mapId, CameraPosition camera); } [BaseType (typeof (MapView))] @@ -753,6 +768,14 @@ interface Marker [Static] [Export ("markerImageWithColor:")] UIImage MarkerImage ([NullAllowed] UIColor color); + + /// + /// From a category (GMSMarker+Premium.h) + /// + + // @property (nonatomic) GMSCollisionBehavior collisionBehavior; + [Export ("collisionBehavior", ArgumentSemantic.Assign)] + CollisionBehavior CollisionBehavior { get; set; } } [DisableDefaultCtor] @@ -840,10 +863,6 @@ interface Panorama [Export ("panoramaID")] string PanoramaId { get; } - [Obsolete ("Use PanoramaId property instead. This will be removed in future versions.")] - [Wrap ("PanoramaId")] - string PanoramaID { get; } - [Export ("links", ArgumentSemantic.Copy)] PanoramaLink [] Links { get; } } @@ -930,10 +949,6 @@ interface PanoramaLink [Export ("panoramaID", ArgumentSemantic.Copy)] string PanoramaId { get; set; } - - [Obsolete ("Use PanoramaId property instead. This will be removed in future versions.")] - [Wrap ("PanoramaId")] - string PanoramaID { get; set; } } delegate void PanoramaCallback ([NullAllowed] Panorama panorama, [NullAllowed] NSError error); @@ -1252,16 +1267,21 @@ interface MapServices [Export ("provideAPIKey:")] bool ProvideApiKey (string apiKey); - [Obsolete ("Use ProvideApiKey static method instead. This will be removed in future versions.")] - [Static] - [Wrap ("ProvideApiKey (APIKey)")] - bool ProvideAPIKey (string APIKey); - // +(BOOL)provideAPIOptions:(NSArray * _Nonnull)APIOptions; [Static] [Export ("provideAPIOptions:")] bool ProvideApiOptions (string [] apiOptions); + // + (void)setMetalRendererEnabled:(BOOL)enabled; + [Static] + [Export ("setMetalRendererEnabled:")] + bool SetMetalRendererEnabled (bool enabled); + + // + (void)setAbnormalTerminationReportingEnabled:(BOOL)enabled; + [Static] + [Export ("setAbnormalTerminationReportingEnabled:")] + bool AbnormalTerminationReportingEnabled (bool enabled); + [Static] [Export ("openSourceLicenseInfo")] string OpenSourceLicenseInfo { get; } @@ -1270,11 +1290,6 @@ interface MapServices [Export ("SDKVersion")] string SdkVersion { get; } - [Obsolete ("Use SdkVersion static property instead. This will be removed in future versions.")] - [Static] - [Wrap ("SdkVersion")] - string SDKVersion { get; } - // +(NSString * _Nonnull)SDKLongVersion; [Static] [Export ("SDKLongVersion")] @@ -1285,6 +1300,9 @@ interface MapServices [BaseType(typeof(NSObject), Name = "GMSStrokeStyle")] interface StrokeStyle { + // @property(nonatomic, strong, nullable) GMSStampStyle *stampStyle; + [Export ("stampStyle")] + StampStyle StampStyle { get; } [Static] [Export ("solidColor:")] @@ -1425,4 +1443,47 @@ interface UrlTileLayer [Export ("userAgent", ArgumentSemantic.Copy)] string UserAgent { get; set; } } + + + // @interface GMSStampStyle : NSObject + [DisableDefaultCtor] + [BaseType (typeof (NSObject), Name = "GMSStampStyle")] + interface StampStyle { + // @property (readonly, nonatomic) UIImage * _Nonnull stampImage; + [Export ("stampImage")] + UIImage StampImage { get; } + } + + // @interface GMSTextureStyle : GMSStampStyle + [BaseType (typeof (StampStyle), Name = "GMSTextureStyle")] + interface TextureStyle { + // +(instancetype _Nonnull)textureStyleWithImage:(UIImage * _Nonnull)image __attribute__((availability(swift, unavailable))); + [Static] + [Export ("textureStyleWithImage:")] + TextureStyle TextureStyleWithImage (UIImage image); + + // -(instancetype _Nonnull)initWithImage:(UIImage * _Nonnull)image __attribute__((objc_designated_initializer)); + [Export ("initWithImage:")] + [DesignatedInitializer] + IntPtr Constructor (UIImage image); + } + + #region Premium + + // @interface GMSMapID : NSObject + [DisableDefaultCtor] + [BaseType (typeof (NSObject), Name = "GMSMapID")] + interface MapId : INSCopying { + // -(instancetype _Nonnull)initWithIdentifier:(NSString * _Nonnull)identifier __attribute__((objc_designated_initializer)); + [Export ("initWithIdentifier:")] + [DesignatedInitializer] + IntPtr Constructor (string identifier); + + // +(instancetype _Nonnull)mapIDWithIdentifier:(NSString * _Nonnull)identifier __attribute__((availability(swift, unavailable))); + [Static] + [Export ("mapIDWithIdentifier:")] + MapId MapIdWithIdentifier (string identifier); + } + + #endregion } diff --git a/source/Google/Maps/Enums.cs b/source/Google/Maps/Enums.cs index e97fe1aa3..8856728e6 100644 --- a/source/Google/Maps/Enums.cs +++ b/source/Google/Maps/Enums.cs @@ -45,7 +45,8 @@ public enum MapViewPaddingAdjustmentBehavior : ulong public enum MarkerAnimation : ulong { None = 0, - Pop + Pop, + FadeIn } [Native] @@ -68,4 +69,11 @@ public enum LengthKind : ulong Rhumb, Projected } + + [Native] + public enum CollisionBehavior : long { + Required, + RequiredAndHidesOptional, + OptionalAndHidesLowerPriority + } } diff --git a/source/Google/Maps/Maps.csproj b/source/Google/Maps/Maps.csproj index cbc4f810b..1a0d7d9ee 100644 --- a/source/Google/Maps/Maps.csproj +++ b/source/Google/Maps/Maps.csproj @@ -6,7 +6,7 @@ Google.Maps Google.Maps 1.0.0.0 - 3.9.0.0 + 6.0.1.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=865548 License.md true - 3.9.0.0 + 6.0.1.0 @@ -57,7 +57,7 @@ - + diff --git a/source/Google/Maps/Maps.targets b/source/Google/Maps/Maps.targets index c4280235e..8693f0e72 100644 --- a/source/Google/Maps/Maps.targets +++ b/source/Google/Maps/Maps.targets @@ -2,14 +2,14 @@ <_GoogleMapsAssemblyName>Google.Maps, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - <_GoogleMapsItemsFolder>GMps-3.9.0 + <_GoogleMapsItemsFolder>GMps-6.0.1 <_GoogleMapsSDKBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleMapsItemsFolder)\Maps\Frameworks\ <_GoogleMapsBaseSDKBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleMapsItemsFolder)\Base\Frameworks\ - https://dl.google.com/dl/cpdc/04a8fa7edaeaadf5/GoogleMaps-3.9.0.tar.gz + https://dl.google.com/dl/cpdc/1c27a020313febc7/GoogleMaps-6.0.1.tar.gz Tgz @@ -17,7 +17,7 @@ True True -ObjC - Accelerate CoreImage CoreTelephony CoreText GLKit ImageIO OpenGLES QuartzCore Security + Accelerate CoreImage CoreText GLKit ImageIO Metal OpenGLES QuartzCore Framework @@ -30,63 +30,63 @@ True True -ObjC -lc++ -lz - CoreData CoreGraphics CoreLocation QuartzCore SystemConfiguration UIKit + CoreData CoreGraphics CoreLocation CoreTelephony QuartzCore SystemConfiguration UIKit - - GoogleMaps.bundle\Info.plist - GoogleMaps.bundle\bubble_left.png False - - GoogleMaps.bundle\bubble_left%402x.png + + GoogleMaps.bundle\bubble_left@2x.png False - - GoogleMaps.bundle\bubble_left%403x.png + + GoogleMaps.bundle\bubble_left@3x.png False GoogleMaps.bundle\bubble_right.png False - - GoogleMaps.bundle\bubble_right%402x.png + + GoogleMaps.bundle\bubble_right@2x.png False - - GoogleMaps.bundle\bubble_right%403x.png + + GoogleMaps.bundle\bubble_right@3x.png False GoogleMaps.bundle\default_marker.png False - - GoogleMaps.bundle\default_marker%402x.png + + GoogleMaps.bundle\default_marker@2x.png False - - GoogleMaps.bundle\default_marker%403x.png + + GoogleMaps.bundle\default_marker@3x.png False GoogleMaps.bundle\ic_error.png False - - GoogleMaps.bundle\ic_error%402x.png + + GoogleMaps.bundle\ic_error@2x.png False - - GoogleMaps.bundle\ic_error%403x.png + + GoogleMaps.bundle\ic_error@3x.png False + + GoogleMaps.bundle\Info.plist + GoogleMaps.bundle\oss_licenses_maps.txt.gz @@ -105,6 +105,46 @@ GoogleMaps.bundle\GMSCoreResources.bundle\Assets.car + + GoogleMaps.bundle\GMSCoreResources.bundle\button_background.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\button_background@2x.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\button_background@3x.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\button_compass.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\button_compass@2x.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\button_compass_night.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\button_compass_night@2x.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\button_my_location.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\button_my_location@2x.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\dav_one_way_16_256.png + False + GoogleMaps.bundle\GMSCoreResources.bundle\DroidSansMerged-Regular.ttf @@ -132,6 +172,10 @@ GoogleMaps.bundle\GMSCoreResources.bundle\GMSNavSprites-0-3x.png False + + GoogleMaps.bundle\GMSCoreResources.bundle\GMSShaders.metallib + False + GoogleMaps.bundle\GMSCoreResources.bundle\GMSSprites-0-1x.png False @@ -144,108 +188,149 @@ GoogleMaps.bundle\GMSCoreResources.bundle\GMSSprites-0-3x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\Info.plist + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_closed_place_waypoint_alert_32pt.png + False - - GoogleMaps.bundle\GMSCoreResources.bundle\Tharlon-Regular.ttf + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_closed_place_waypoint_alert_32pt@2x.png + False - - GoogleMaps.bundle\GMSCoreResources.bundle\button_background.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_closed_place_waypoint_alert_32pt@3x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\button_background%402x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_closed_place_waypoint_alert_night_32pt.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\button_background%403x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_closed_place_waypoint_alert_night_32pt@2x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\button_compass.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_closed_place_waypoint_alert_night_32pt@3x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\button_compass%402x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\button_compass_night.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle@2x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\button_compass_night%402x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle_32pt.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\button_my_location.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle_32pt@2x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\button_my_location%402x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle_32pt@3x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\dav_one_way_16_256.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle_large.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle_32pt.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle_large@2x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle_32pt%402x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle_large@3x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle_32pt%403x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_border_waypoint_alert_32pt.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_border_waypoint_alert_32pt@2x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle%402x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_border_waypoint_alert_32pt@3x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle_large.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_checkpoint_waypoint_alert_32pt.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_checkpoint_waypoint_alert_32pt@2x.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_checkpoint_waypoint_alert_32pt@3x.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_checkpoint_waypoint_alert_night_32pt.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle_large%402x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_checkpoint_waypoint_alert_night_32pt@2x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\ic_compass_needle_large%403x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_checkpoint_waypoint_alert_night_32pt@3x.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_medical_waypoint_alert_32pt.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_medical_waypoint_alert_32pt@2x.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_medical_waypoint_alert_32pt@3x.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_medical_waypoint_alert_night_32pt.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_medical_waypoint_alert_night_32pt@2x.png + False + + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_covid_medical_waypoint_alert_night_32pt@3x.png False GoogleMaps.bundle\GMSCoreResources.bundle\ic_location_off.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\ic_location_off%402x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_location_off@2x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\ic_location_off%403x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_location_off@3x.png False GoogleMaps.bundle\GMSCoreResources.bundle\ic_qu_direction_mylocation.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\ic_qu_direction_mylocation%402x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_qu_direction_mylocation@2x.png False - - GoogleMaps.bundle\GMSCoreResources.bundle\ic_qu_direction_mylocation%403x.png + + GoogleMaps.bundle\GMSCoreResources.bundle\ic_qu_direction_mylocation@3x.png False + + GoogleMaps.bundle\GMSCoreResources.bundle\Info.plist + GoogleMaps.bundle\GMSCoreResources.bundle\polyline_colors_texture.png False @@ -290,6 +375,9 @@ GoogleMaps.bundle\GMSCoreResources.bundle\road_8-2.png False + + GoogleMaps.bundle\GMSCoreResources.bundle\Tharlon-Regular.ttf + GoogleMaps.bundle\GMSCoreResources.bundle\ar.lproj\GMSCore.strings @@ -359,6 +447,9 @@ GoogleMaps.bundle\GMSCoreResources.bundle\ja.lproj\GMSCore.strings + + GoogleMaps.bundle\GMSCoreResources.bundle\ka.lproj\GMSCore.strings + GoogleMaps.bundle\GMSCoreResources.bundle\ko.lproj\GMSCore.strings @@ -371,6 +462,9 @@ GoogleMaps.bundle\GMSCoreResources.bundle\ms.lproj\GMSCore.strings + + GoogleMaps.bundle\GMSCoreResources.bundle\my.lproj\GMSCore.strings + GoogleMaps.bundle\GMSCoreResources.bundle\nb.lproj\GMSCore.strings @@ -398,9 +492,18 @@ GoogleMaps.bundle\GMSCoreResources.bundle\sk.lproj\GMSCore.strings + + GoogleMaps.bundle\GMSCoreResources.bundle\sq.lproj\GMSCore.strings + + + GoogleMaps.bundle\GMSCoreResources.bundle\sr.lproj\GMSCore.strings + GoogleMaps.bundle\GMSCoreResources.bundle\sv.lproj\GMSCore.strings + + GoogleMaps.bundle\GMSCoreResources.bundle\sw.lproj\GMSCore.strings + GoogleMaps.bundle\GMSCoreResources.bundle\th.lproj\GMSCore.strings diff --git a/source/Google/MobileAds/ApiDefinition.cs b/source/Google/MobileAds/ApiDefinition.cs index 0740aefb3..2010675ca 100644 --- a/source/Google/MobileAds/ApiDefinition.cs +++ b/source/Google/MobileAds/ApiDefinition.cs @@ -14,27 +14,27 @@ namespace Google.MobileAds { [Static] interface AdSizeCons { [Internal] - [Field ("kGADAdSizeBanner", "__Internal")] + [Field ("GADAdSizeBanner", "__Internal")] IntPtr _Banner { get; } [Internal] - [Field ("kGADAdSizeLargeBanner", "__Internal")] + [Field ("GADAdSizeLargeBanner", "__Internal")] IntPtr _LargeBanner { get; } [Internal] - [Field ("kGADAdSizeMediumRectangle", "__Internal")] + [Field ("GADAdSizeMediumRectangle", "__Internal")] IntPtr _MediumRectangle { get; } [Internal] - [Field ("kGADAdSizeFullBanner", "__Internal")] + [Field ("GADAdSizeFullBanner", "__Internal")] IntPtr _FullBanner { get; } [Internal] - [Field ("kGADAdSizeLeaderboard", "__Internal")] + [Field ("GADAdSizeLeaderboard", "__Internal")] IntPtr _Leaderboard { get; } [Internal] - [Field ("kGADAdSizeSkyscraper", "__Internal")] + [Field ("GADAdSizeSkyscraper", "__Internal")] IntPtr _Skyscraper { get; } [Internal] @@ -46,17 +46,19 @@ interface AdSizeCons { IntPtr _SmartBannerLandscape { get; } [Internal] - [Field ("kGADAdSizeFluid", "__Internal")] + [Field ("GADAdSizeFluid", "__Internal")] IntPtr _Fluid { get; } [Internal] - [Field ("kGADAdSizeInvalid", "__Internal")] + [Field ("GADAdSizeInvalid", "__Internal")] IntPtr _Invalid { get; } } #endregion // typedef void (^GADInitializationCompletionHandler)(GADInitializationStatus * _Nonnull); delegate void InitializationCompletionHandler (InitializationStatus status); + // typedef void (^GADAdInspectorCompletionHandler)(NSError *_Nullable error); + delegate void AdInspectorCompletionHandler (NSError error); // @interface GADMobileAds : NSObject [DisableDefaultCtor] @@ -95,23 +97,11 @@ interface MobileAds { [Export ("isSDKVersionAtLeastMajor:minor:patch:")] bool IsSdkVersionAtLeast (nint major, nint minor, nint patch); - [Obsolete ("Use IsSdkVersionAtLeast method instead. This will be removed in future versions.")] - [Wrap ("IsSdkVersionAtLeast (major, minor, patch)")] - bool IsSDKVersionAtLeast (nint major, nint minor, nint patch); - // -(void)startWithCompletionHandler:(GADInitializationCompletionHandler _Nullable)completionHandler; [Async] [Export ("startWithCompletionHandler:")] void Start ([NullAllowed] InitializationCompletionHandler completionHandler); - // -(void)disableAutomatedInAppPurchaseReporting; - [Export ("disableAutomatedInAppPurchaseReporting")] - void DisableTheAutomatedInAppPurchaseReporting (); - - // -(void)enableAutomatedInAppPurchaseReporting; - [Export ("enableAutomatedInAppPurchaseReporting")] - void EnableTheAutomatedInAppPurchaseReporting(); - // -(void)disableSDKCrashReporting; [Export ("disableSDKCrashReporting")] void DisableSdkCrashReporting (); @@ -120,23 +110,9 @@ interface MobileAds { [Export ("disableMediationInitialization")] void DisableMediationInitialization (); - // + (void)configureWithApplicationID:(NSString *)applicationID; - [Obsolete ("Use MobileAds.SharedInstance.Start method instead.")] - [Static] - [Export ("configureWithApplicationID:")] - void Configure (string applicationId); - - // +(void)disableAutomatedInAppPurchaseReporting; - [Obsolete ("Use MobileAds.SharedInstance.DisableTheAutomatedInAppPurchaseReporting method instead.")] - [Static] - [Export ("disableAutomatedInAppPurchaseReporting")] - void DisableAutomatedInAppPurchaseReporting (); - - // +(void)disableSDKCrashReporting; - [Obsolete("Use MobileAds.SharedInstance.DisableSdkCrashReporting method instead.")] - [Static] - [Export ("disableSDKCrashReporting")] - void DisableSDKCrashReporting (); + // - (void)presentAdInspectorFromViewController:(nonnull UIViewController *)viewController completionHandler: (nullable GADAdInspectorCompletionHandler)completionHandler; + [Export ("presentAdInspectorFromViewController:viewController:")] + void PresentAdInspectorFromViewController (UIViewController viewConroller, AdInspectorCompletionHandler completionHandler); } // @interface GADMultipleAdsAdLoaderOptions : GADAdLoaderOptions @@ -181,10 +157,6 @@ interface AdReward { Delegates = new string [] { "Delegate", "AdSizeDelegate" }, Events = new Type [] { typeof (BannerViewDelegate), typeof (AdSizeDelegate) })] interface BannerView { - - [Export ("initWithFrame:")] - IntPtr Constructor (CGRect frame); - [Export ("initWithAdSize:origin:")] IntPtr Constructor (AdSize size, CGPoint origin); @@ -195,11 +167,6 @@ interface BannerView { [Export ("adUnitID", ArgumentSemantic.Copy)] string AdUnitId { get; set; } - [Obsolete ("Use AdUnitId property instead. This will be removed in future versions.")] - [NullAllowed] - [Wrap ("AdUnitId")] - string AdUnitID { get; set; } - [NullAllowed] [Export ("rootViewController", ArgumentSemantic.Weak)] UIViewController RootViewController { get; set; } @@ -211,11 +178,6 @@ interface BannerView { [Export ("delegate", ArgumentSemantic.Weak)] IBannerViewDelegate Delegate { get; set; } - [Obsolete] - [NullAllowed] - [Export ("inAppPurchaseDelegate", ArgumentSemantic.Weak)] - IInAppPurchaseDelegate InAppPurchaseDelegate { get; set; } - // @property(nonatomic, weak, GAD_NULLABLE) IBOutlet id adSizeDelegate; [NullAllowed] [Export ("adSizeDelegate", ArgumentSemantic.Weak)] @@ -236,20 +198,6 @@ interface BannerView { [NullAllowed] [Export ("paidEventHandler", ArgumentSemantic.Copy)] PaidEventHandler PaidEventHandler { get; set; } - - [Obsolete] - [Export ("hasAutoRefreshed", ArgumentSemantic.Assign)] - bool HasAutoRefreshed { get; } - - [Obsolete ("Use ResponseInfo.AdNetworkClassName.")] - [NullAllowed] - [Export ("mediatedAdView", ArgumentSemantic.Weak)] - UIView MediatedAdView { get; } - - [Obsolete ("Use ResponseInfo.AdNetworkClassName.")] - [NullAllowed] - [Export ("adNetworkClassName")] - string AdNetworkClassName { get; } } interface IBannerViewDelegate { @@ -263,35 +211,36 @@ interface BannerViewDelegate { [EventArgs ("BannerViewE")] [EventName ("AdReceived")] - [Export ("adViewDidReceiveAd:")] + [Export ("bannerViewDidReceiveAd:")] void DidReceiveAd (BannerView view); [EventArgs ("BannerViewError")] [EventName ("ReceiveAdFailed")] - [Export ("adView:didFailToReceiveAdWithError:")] - void DidFailToReceiveAd (BannerView view, RequestError error); + [Export ("bannerView:didFailToReceiveAdWithError:")] + void DidFailToReceiveAd (BannerView view, NSError error); [EventArgs ("BannerViewE")] [EventName ("ImpressionRecorded")] - [Export ("adViewDidRecordImpression:")] + [Export ("bannerViewDidRecordImpression:")] void DidRecordImpression (BannerView view); [EventArgs ("BannerViewE")] - [Export ("adViewWillPresentScreen:")] + [EventName ("ClickRecorded")] + [Export ("bannerViewDidRecordClick:")] + void DidRecordClick (BannerView view); + + [EventArgs ("BannerViewE")] + [Export ("bannerViewWillPresentScreen:")] void WillPresentScreen (BannerView adView); [EventArgs ("BannerViewE")] - [Export ("adViewWillDismissScreen:")] + [Export ("bannerViewWillDismissScreen:")] void WillDismissScreen (BannerView adView); [EventArgs ("BannerViewE")] [EventName ("ScreenDismissed")] - [Export ("adViewDidDismissScreen:")] + [Export ("bannerViewDidDismissScreen:")] void DidDismissScreen (BannerView adView); - - [EventArgs ("BannerViewE")] - [Export ("adViewWillLeaveApplication:")] - void WillLeaveApplication (BannerView adView); } [BaseType (typeof (NSObject), Name = "GADExtras")] @@ -302,109 +251,86 @@ interface Extras : AdNetworkExtras { NSDictionary AdditionalParameters { get; set; } } - [DisableDefaultCtor] - [BaseType (typeof (NSObject), - Name = "GADInterstitial", - Delegates = new string [] { "Delegate" }, - Events = new Type [] { typeof (InterstitialDelegate) })] - interface Interstitial { + // typedef void (^GADInterstitialAdLoadCompletionHandler)(GADInterstitialAd * _Nullable, NSError * _Nullable); + delegate void InterstitialAdLoadCompletionHandler ([NullAllowed] InterstitialAd interstitialAd, [NullAllowed] NSError error); + // typedef void (^GADRewardedInterstitialAdLoadCompletionHandler)(GADRewardedInterstitialAd * _Nullable, NSError * _Nullable); + delegate void RewardedInterstitialAdLoadCompletionHandler ([NullAllowed] RewardedInterstitialAd rewardedInterstitialAd, [NullAllowed] NSError error); - [Export ("initWithAdUnitID:")] - IntPtr Constructor (string adUnitID); + [DisableDefaultCtor] + [BaseType (typeof (FullScreenPresentingAd), Name = "GADInterstitialAd")] + interface InterstitialAd { + // + (void)loadWithAdUnitID:(nonnull NSString *)adUnitID request:(nullable GADRequest *)request completionHandler:(nonnull GADInterstitialAdLoadCompletionHandler)completionHandler; + [Async] + [Static] + [Export ("loadWithAdUnitID:request:completionHandler:")] + void Load (string adUnitId, [NullAllowed] Request request, InterstitialAdLoadCompletionHandler completionHandler); + // @property(nonatomic, readonly, nonnull) NSString *adUnitID; [Export ("adUnitID")] string AdUnitId { get; } - [Obsolete ("Use AdUnitId property instead. This will be removed in future versions.")] - [Wrap ("AdUnitId")] - string AdUnitID { get; } - - [NullAllowed] - [Export ("delegate", ArgumentSemantic.Weak)] - IInterstitialDelegate Delegate { get; set; } - - [Obsolete] - [NullAllowed] - [Export ("inAppPurchaseDelegate", ArgumentSemantic.Weak)] - IInAppPurchaseDelegate InAppPurchaseDelegate { get; set; } - - [Export ("loadRequest:")] - void LoadRequest ([NullAllowed] Request request); - - [Export ("isReady")] - bool IsReady { get; } - - [Export ("hasBeenUsed")] - bool HasBeenUsed { get; } - // @property (readonly, nonatomic) GADResponseInfo * _Nullable responseInfo; [NullAllowed] [Export ("responseInfo")] ResponseInfo ResponseInfo { get; } - // @property (copy, nonatomic) GADPaidEventHandler _Nullable paidEventHandler; + // @property(nonatomic, nullable, copy) GADPaidEventHandler paidEventHandler; [NullAllowed] [Export ("paidEventHandler", ArgumentSemantic.Copy)] PaidEventHandler PaidEventHandler { get; set; } - [Export ("presentFromRootViewController:")] - void Present ([NullAllowed] UIViewController rootViewController); - - [Obsolete ("Use Present method instead. This will be removed in future versions.")] - [Wrap ("Present (rootViewController)")] - void PresentFromRootViewController ([NullAllowed] UIViewController rootViewController); - // -(BOOL)canPresentFromRootViewController:(UIViewController * _Nonnull)rootViewController error:(NSError * _Nullable * _Nullable)error; [Export ("canPresentFromRootViewController:error:")] bool CanPresent (UIViewController rootViewController, [NullAllowed] out NSError error); - [Obsolete ("Use ResponseInfo.AdNetworkClassName.")] - [NullAllowed] - [Export("adNetworkClassName")] - string AdNetworkClassName { get; } + // - (void)presentFromRootViewController:(nonnull UIViewController *)rootViewController; + [Export ("presentFromRootViewController:")] + void Present ([NullAllowed] UIViewController rootViewController); } - interface IInterstitialDelegate { - - } + // @interface GADRewardedInterstitialAd : NSObject + [BaseType (typeof (FullScreenContentDelegate), Name = "GADRewardedInterstitialAd")] + interface RewardedInterstitialAd : AdMetadataProvider { + // + (void)loadWithAdUnitID:(nonnull NSString *)adUnitID request:(nullable GADRequest *)request completionHandler:(nonnull GADRewardedInterstitialAdLoadCompletionHandler)completionHandler; + [Async] + [Static] + [Export ("loadWithAdUnitID:request:completionHandler:")] + void Load (string adUnitId, [NullAllowed] Request request, RewardedInterstitialAdLoadCompletionHandler completionHandler); - [Model (AutoGeneratedName = true)] - [Protocol] - [BaseType (typeof (NSObject), Name = "GADInterstitialDelegate")] - interface InterstitialDelegate { + // @property (readonly, nonatomic) NSString * _Nonnull adUnitID; + [Export ("adUnitID")] + string AdUnitId { get; } - [EventArgs ("InterstitialE")] - [EventName ("AdReceived")] - [Export ("interstitialDidReceiveAd:")] - void DidReceiveAd (Interstitial ad); + // @property (readonly, nonatomic) GADResponseInfo * _Nullable responseInfo; + [NullAllowed] + [Export ("responseInfo")] + ResponseInfo ResponseInfo { get; } - [EventArgs ("InterstitialDidFailToReceiveAdWithError")] - [EventName ("ReceiveAdFailed")] - [Export ("interstitial:didFailToReceiveAdWithError:")] - void DidFailToReceiveAd (Interstitial sender, RequestError error); + // @property (readonly, nonatomic) GADAdReward * _Nullable reward; + [NullAllowed] + [Export ("reward")] + AdReward Reward { get; } - [EventArgs ("InterstitialE")] - [Export ("interstitialWillPresentScreen:")] - void WillPresentScreen (Interstitial ad); + // @property (nonatomic, nullable) GADServerSideVerificationOptions *serverSideVerificationOptions; + [NullAllowed] + [Export ("serverSideVerificationOptions")] + ServerSideVerificationOptions ServerSideVerificationOptions { get; set; } - // - (void)interstitialDidFailToPresentScreen:(GADInterstitial *)ad; - [EventArgs ("InterstitialE")] - [EventName ("FailedToPresentScreen")] - [Export ("interstitialDidFailToPresentScreen:")] - void DidFailToPresentScreen (Interstitial ad); + // @property (copy, nonatomic) GADPaidEventHandler _Nullable paidEventHandler; + [NullAllowed] + [Export ("paidEventHandler", ArgumentSemantic.Copy)] + PaidEventHandler PaidEventHandler { get; set; } - [EventArgs ("InterstitialE")] - [Export ("interstitialWillDismissScreen:")] - void WillDismissScreen (Interstitial ad); + // -(BOOL)canPresentFromRootViewController:(UIViewController * _Nonnull)rootViewController error:(NSError * _Nullable * _Nullable)error; + [Export ("canPresentFromRootViewController:error:")] + bool CanPresent (UIViewController rootViewController, [NullAllowed] out NSError error); - [EventArgs ("InterstitialE")] - [EventName ("ScreenDismissed")] - [Export ("interstitialDidDismissScreen:")] - void DidDismissScreen (Interstitial ad); + // -(void)presentFromRootViewController:(UIViewController * _Nonnull)viewController delegate:(id _Nonnull)delegate; + [Export ("presentFromRootViewController:delegate:")] + void Present (UIViewController viewController, IRewardedAdDelegate @delegate); - [EventArgs ("InterstitialE")] - [Export ("interstitialWillLeaveApplication:")] - void WillLeaveApplication (Interstitial ad); + [Export ("adMetadata")] + NSDictionary AdMetadata { get; } } // @interface GADMediaContent : NSObject @@ -443,7 +369,7 @@ interface MediaContent { [DisableDefaultCtor] [BaseType (typeof (NSObject), Name = "GADRequest")] interface Request : INSCopying { - [Field ("kGADSimulatorID", "__Internal")] + [Field ("GADSimulatorID", "__Internal")] NSString SimulatorId { get; } [Static] @@ -459,16 +385,6 @@ interface Request : INSCopying { [Export ("removeAdNetworkExtrasFor:")] void RemoveAdNetworkExtrasFor (Class aClass); - [Obsolete ("Use MobileAds.SharedInstance.SdkVersion")] - [Static] - [Export ("sdkVersion")] - string SdkVersion { get; } - - [Obsolete ("Use MobileAds.SharedInstance.RequestConfiguration.TestDeviceIdentifiers.")] - [NullAllowed] - [Export ("testDevices", ArgumentSemantic.Copy)] - string [] TestDevices { get; set; } - [Export ("setLocationWithLatitude:longitude:accuracy:")] void SetLocation (nfloat latitude, nfloat longitude, nfloat accuracyInMeters); @@ -487,25 +403,6 @@ interface Request : INSCopying { [NullAllowed] [Export ("requestAgent", ArgumentSemantic.Copy)] string RequestAgent { get; set; } - - [Export ("gender", ArgumentSemantic.Assign)] - Gender Gender { get; set; } - - [NullAllowed] - [Export ("birthday", ArgumentSemantic.Copy)] - NSDate Birthday { get; set; } - - [Obsolete ("Use the Birthday property instead.")] - [Export ("setBirthdayWithMonth:day:year:")] - void SetBirthday (nint m, nint d, nint y); - - [Obsolete ("Use SetLocation (nfloat, nfloat, nfloat) overload method instead.")] - [Export ("setLocationWithDescription:")] - void SetLocation (string locationDescription); - - [Obsolete ("Use MobileAds.SharedInstance.RequestConfiguration.Tag method instead.")] - [Export ("tagForChildDirectedTreatment:")] - void Tag (bool forChildDirectedTreatment); } [Static] @@ -547,22 +444,10 @@ interface RequestConfiguration { // -(void)tagForChildDirectedTreatment:(BOOL)childDirectedTreatment; [Export ("tagForChildDirectedTreatment:")] void TagForChildDirectedTreatment (bool childDirectedTreatment); - } - [DisableDefaultCtor] - [BaseType (typeof (NSError), Name = "GADRequestError")] - interface RequestError { - // extern NSString *const kGADErrorDomain __attribute__((visibility("default"))); - [Internal] - [Field ("kGADErrorDomain", "__Internal")] - NSString _ErrorDomain { get; } - - [Static] - [Wrap ("_ErrorDomain.ToString ()")] - string ErrorDomain { get; } - - [Export ("initWithDomain:code:userInfo:")] - IntPtr Constructor (NSString appDomain, nint code, NSDictionary userInfo); + // - (void)setSameAppKeyEnabled:(BOOL)enabled; + [Export ("setSameAppKeyEnabled:")] + void SameAppKeyEnabled (bool enabled); } // @interface GADAdNetworkResponseInfo : NSObject @@ -573,9 +458,9 @@ interface AdNetworkResponseInfo [Export ("responseIdentifier")] string AdNetworkClassName { get; } - // @property(nonatomic, readonly, nonnull) NSDictionary *credentials; - [Export ("credentials")] - NSDictionary Credentials { get; } + // @property(nonatomic, readonly, nonnull) NSDictionary *adUnitMapping; + [Export ("adUnitMapping")] + NSDictionary AdUnitMapping { get; } // @property(nonatomic, readonly, nullable) NSError *error; [NullAllowed] @@ -589,6 +474,11 @@ interface AdNetworkResponseInfo // @property(nonatomic, readonly, nonnull) NSDictionary *dictionaryRepresentation; [Export ("dictionaryRepresentation")] NSDictionary DictionaryRepresentation { get; } + + // @property(nonatomic, readonly, nonnull) NSDictionary *credentials; + [Obsolete ("Use adUnitMapping instead")] + [Export ("credentials")] + NSDictionary Credentials { get; } } // @interface GADResponseInfo : NSObject @@ -626,177 +516,39 @@ interface ResponseInfo NSDictionary DictionaryRepresentation { get; } } - // @interface GADRewardBasedVideoAd : NSObject - [Obsolete ("Use RewardedAd instead. Google AdMob publishers, follow instructions here: " + - "https://googlemobileadssdk.page.link/admob-ios-rewarded-migration. " + - "Google Ad Manager publishers, follow instructions here: " + - "https://googlemobileadssdk.page.link/admanager-ios-rewarded-migration.")] - [DisableDefaultCtor] - [BaseType (typeof (NSObject), - Name = "GADRewardBasedVideoAd", - Delegates = new string [] { "Delegate" }, - Events = new Type [] { typeof (RewardBasedVideoAdDelegate) })] - interface RewardBasedVideoAd { - // @property (nonatomic, weak) id _Nullable delegate; - [NullAllowed] - [Export ("delegate", ArgumentSemantic.Weak)] - IRewardBasedVideoAdDelegate Delegate { get; set; } - - // @property (readonly, getter = isReady, assign, nonatomic) BOOL ready; - [Export ("ready")] - bool IsReady { [Bind ("isReady")] get; } - - // @property(nonatomic, readonly, copy, GAD_NULLABLE) NSString *adNetworkClassName; - [NullAllowed] - [Export ("adNetworkClassName")] - string AdNetworkClassName { get; } + // typedef void (^GADRewardedAdLoadCompletionHandler)(GADRewardedAd *_Nullable rewardedAd, NSError *_Nullable error); + delegate void RewardedAdLoadCompletionHandler ([NullAllowed] RewardedAd rewardedAd, [NullAllowed] NSError error); - // @property(nonatomic, copy, GAD_NULLABLE) NSString *userIdentifier; - [NullAllowed] - [Export ("userIdentifier")] - string UserIdentifier { get; } + // typedef void (^GADUserDidEarnRewardHandler)(void) + delegate void UserDidEarnRewardHandler (); - // @property (nonatomic, copy, nullable) NSString* customRewardString; - [NullAllowed] - [Export ("customRewardString")] - string CustomRewardString { get; set; } - - // @property (readonly, nonatomic) NSDictionary * _Nullable adMetadata; - [NullAllowed, Export ("adMetadata")] - NSDictionary AdMetadata { get; } - - // +(GADRewardBasedVideoAd *)sharedInstance; - [Static] - [Export ("sharedInstance")] - RewardBasedVideoAd SharedInstance { get; } - - // -(void)loadRequest:(GADRequest *)request withAdUnitID:(NSString *)adUnitID; - [Export ("loadRequest:withAdUnitID:")] - void LoadRequest (Request request, string adUnitId); - - // -(void)presentFromRootViewController:(UIViewController *)viewController; - [Export ("presentFromRootViewController:")] - void Present (UIViewController fromRootViewController); - - [Obsolete ("Use Present method instead. This will be removed in future versions.")] - [Wrap ("Present (viewController)")] - void PresentFromRootViewController (UIViewController viewController); - } - - interface IRewardBasedVideoAdDelegate { - } - - // @protocol GADRewardBasedVideoAdDelegate - [Model (AutoGeneratedName = true)] - [Protocol] - [BaseType (typeof (NSObject), Name = "GADRewardBasedVideoAdDelegate")] - interface RewardBasedVideoAdDelegate { - // - (void)rewardBasedVideoAd:(GADRewardBasedVideoAd *)rewardBasedVideoAd didRewardUserWithReward:(GADAdReward*)reward; - [Abstract] - [EventArgs ("RewardBasedVideoAdReward")] - [EventName ("UserRewarded")] - [Export ("rewardBasedVideoAd:didRewardUserWithReward:")] - void DidRewardUser (RewardBasedVideoAd rewardBasedVideoAd, AdReward reward); - - // @optional -(void)rewardBasedVideoAd:(GADRewardBasedVideoAd *)rewardBasedVideoAd didFailToLoadwithError:(NSError *)error; - [EventArgs ("RewardBasedVideoAdError")] - [EventName ("FailedToLoad")] - [Export ("rewardBasedVideoAd:didFailToLoadWithError:")] - void DidFailToLoad (RewardBasedVideoAd rewardBasedVideoAd, NSError error); - - // @optional -(void)rewardBasedVideoAdDidReceiveAd:(GADRewardBasedVideoAd *)rewardBasedVideoAd; - [EventArgs ("RewardBasedVideoAd")] - [EventName ("AdReceived")] - [Export ("rewardBasedVideoAdDidReceiveAd:")] - void DidReceiveAd (RewardBasedVideoAd rewardBasedVideoAd); - - // @optional -(void)rewardBasedVideoAdDidOpen:(GADRewardBasedVideoAd *)rewardBasedVideoAd; - [EventArgs ("RewardBasedVideoAd")] - [EventName ("Opened")] - [Export ("rewardBasedVideoAdDidOpen:")] - void DidOpen (RewardBasedVideoAd rewardBasedVideoAd); - - // @optional -(void)rewardBasedVideoAdDidStartPlaying:(GADRewardBasedVideoAd *)rewardBasedVideoAd; - [EventArgs ("RewardBasedVideoAd")] - [EventName ("PlayingStarted")] - [Export ("rewardBasedVideoAdDidStartPlaying:")] - void DidStartPlaying (RewardBasedVideoAd rewardBasedVideoAd); - - // - (void)rewardBasedVideoAdDidCompletePlaying:(GADRewardBasedVideoAd *)rewardBasedVideoAd; - [EventArgs ("RewardBasedVideoAd")] - [EventName ("PlayingCompleted")] - [Export ("rewardBasedVideoAdDidCompletePlaying:")] - void DidCompletePlaying (RewardBasedVideoAd rewardBasedVideoAd); - - // @optional -(void)rewardBasedVideoAdDidClose:(GADRewardBasedVideoAd *)rewardBasedVideoAd; - [EventArgs ("RewardBasedVideoAd")] - [EventName ("Closed")] - [Export ("rewardBasedVideoAdDidClose:")] - void DidClose (RewardBasedVideoAd rewardBasedVideoAd); - - // @optional -(void)rewardBasedVideoAdWillLeaveApplication:(GADRewardBasedVideoAd *)rewardBasedVideoAd; - [EventArgs ("RewardBasedVideoAd")] - [Export ("rewardBasedVideoAdWillLeaveApplication:")] - void WillLeaveApplication (RewardBasedVideoAd rewardBasedVideoAd); - - // @optional -(void)rewardBasedVideoAdMetadataDidChange:(GADRewardBasedVideoAd * _Nonnull)rewardBasedVideoAd; - [EventArgs ("RewardBasedVideoAd")] - [EventName ("MetadataChanged")] - [Export ("rewardBasedVideoAdMetadataDidChange:")] - void MetadataDidChange (RewardBasedVideoAd rewardBasedVideoAd); - } - - // typedef void (^GADRewardedAdLoadCompletionHandler)(GADRequestError * _Nullable); - delegate void RewardedAdLoadCompletionHandler ([NullAllowed] RequestError error); - - // @interface GADRewardedAd : NSObject - [BaseType (typeof (NSObject), - Name = "GADRewardedAd", - Delegates = new [] { "AdMetadataDelegate" }, - Events = new [] { typeof (RewardedAdMetadataDelegate) })] - interface RewardedAd { - // -(instancetype _Nonnull)initWithAdUnitID:(NSString * _Nonnull)adUnitID; - [Export ("initWithAdUnitID:")] - IntPtr Constructor (string adUnitId); - - // -(void)loadRequest:(GADRequest * _Nullable)request completionHandler:(GADRewardedAdLoadCompletionHandler _Nullable)completionHandler; + // @interface GADRewardedAd : NSObject + [BaseType (typeof (FullScreenPresentingAd), Name = "GADRewardedAd")] + interface RewardedAd : AdMetadataProvider { + // + (void)loadWithAdUnitID:(nonnull NSString *)adUnitID request:(nullable GADRequest *)request completionHandler:(nonnull GADRewardedAdLoadCompletionHandler)completionHandler; [Async] - [Export ("loadRequest:completionHandler:")] - void LoadRequest ([NullAllowed] Request request, [NullAllowed] RewardedAdLoadCompletionHandler completionHandler); + [Static] + [Export ("loadWithAdUnitID:request:completionHandler:")] + void Load (string adUnitId, [NullAllowed] Request request, RewardedAdLoadCompletionHandler completionHandler); // @property (readonly, nonatomic) NSString * _Nonnull adUnitID; [Export ("adUnitID")] string AdUnitId { get; } - // @property (readonly, getter = isReady, nonatomic) BOOL ready; - [Export ("isReady")] - bool IsReady { get; } - // @property (readonly, nonatomic) GADResponseInfo * _Nullable responseInfo; [NullAllowed] [Export ("responseInfo")] ResponseInfo ResponseInfo { get; } - // @property (readonly, nonatomic) GADAdReward * _Nullable reward; - [NullAllowed] - [Export ("reward")] - AdReward Reward { get; } + // @property (readonly, nonatomic, nonnull) GADAdReward *adReward; + [Export ("adReward")] + AdReward AdReward { get; } // @property (nonatomic, nullable) GADServerSideVerificationOptions *serverSideVerificationOptions; [NullAllowed] [Export ("serverSideVerificationOptions")] ServerSideVerificationOptions ServerSideVerificationOptions { get; set; } - // @property (readonly, nonatomic) NSDictionary * _Nullable adMetadata; - [NullAllowed] - [Export ("adMetadata")] - NSDictionary AdMetadata { get; } - - // @property (nonatomic, weak) id _Nullable adMetadataDelegate; - [NullAllowed] - [Export ("adMetadataDelegate", ArgumentSemantic.Weak)] - IRewardedAdMetadataDelegate AdMetadataDelegate { get; set; } - // @property (copy, nonatomic) GADPaidEventHandler _Nullable paidEventHandler; [NullAllowed] [Export ("paidEventHandler", ArgumentSemantic.Copy)] @@ -806,15 +558,12 @@ interface RewardedAd { [Export ("canPresentFromRootViewController:error:")] bool CanPresent (UIViewController rootViewController, [NullAllowed] out NSError error); - // -(void)presentFromRootViewController:(UIViewController * _Nonnull)viewController delegate:(id _Nonnull)delegate; - [Export ("presentFromRootViewController:delegate:")] - void Present (UIViewController viewController, IRewardedAdDelegate @delegate); + // -(void)presentFromRootViewController:(nonnull UIViewController *)rootViewController userDidEarnRewardHandler:(nonnull GADUserDidEarnRewardHandler)userDidEarnRewardHandler; + [Export ("presentFromRootViewController:userDidEarnRewardHandler:")] + void Present (UIViewController viewController, UserDidEarnRewardHandler userDidEarnRewardHandler); - // @property (readonly, copy, nonatomic) NSString * _Nullable adNetworkClassName; - [Obsolete ("Use ResponseInfo.AdNetworkClassName.")] - [NullAllowed] - [Export ("adNetworkClassName")] - string AdNetworkClassName { get; } + [Export ("adMetadata")] + NSDictionary AdMetadata { get; } } interface IRewardedAdDelegate { } @@ -842,20 +591,6 @@ interface RewardedAdDelegate { void DidDismiss (RewardedAd rewardedAd); } - interface IRewardedAdMetadataDelegate { } - - // @protocol GADRewardedAdMetadataDelegate - [Model (AutoGeneratedName = true)] - [Protocol] - [BaseType (typeof (NSObject), Name = "GADRewardedAdMetadataDelegate")] - interface RewardedAdMetadataDelegate { - // @optional -(void)rewardedAdMetadataDidChange:(GADRewardedAd * _Nonnull)rewardedAd; - [EventArgs ("RewardedAdMetadataChanged")] - [EventName ("Changed")] - [Export ("rewardedAdMetadataDidChange:")] - void DidChange (RewardedAd rewardedAd); - } - interface IAdSizeDelegate { } @@ -903,32 +638,61 @@ interface AppEventDelegate { void AdViewDidReceiveAppEvent (BannerView banner, string name, [NullAllowed] string info); [Export ("interstitial:didReceiveAppEvent:withInfo:")] - void InterstitialDidReceiveAppEvent (Interstitial interstitial, string name, [NullAllowed] string info); + void InterstitialDidReceiveAppEvent (InterstitialAd interstitial, string name, [NullAllowed] string info); } // typedef void (^GADAppOpenAdLoadCompletionHandler)(GADAppOpenAd * _Nullable, NSError * _Nullable); delegate void AppOpenAdLoadCompletionHandler ([NullAllowed] AppOpenAd appOpenAd, [NullAllowed] NSError error); interface IFullScreenContentDelegate { - } [Model (AutoGeneratedName = true)] [Protocol] [BaseType (typeof (NSObject), Name = "GADFullScreenContentDelegate")] interface FullScreenContentDelegate { + // - (void)adDidRecordImpression:(nonnull id)ad; + [EventArgs ("FullScreenPresentingAd")] + [EventName ("RecordedImpression")] + [Export ("adDidRecordImpression:")] + void DidRecordImpression (FullScreenPresentingAd ad); + + // - (void)adDidRecordClick:(nonnull id)ad; + [EventArgs ("FullScreenPresentingAd")] + [EventName ("RecordedClick")] + [Export ("adDidRecordClick:")] + void DidRecordClick (FullScreenPresentingAd ad); + + // - (void)ad:(nonnull id)ad + [EventArgs ("FullScreenPresentingAdWithError")] + [EventName ("FailedToPresentContent")] [Export ("ad:didFailToPresentFullScreenContentWithError:")] void DidFailToPresentFullScreenContent (FullScreenPresentingAd ad, NSError error); + // - (void)adDidPresentFullScreenContent:(nonnull id)ad; + [EventArgs ("FullScreenPresentingAd")] + [EventName ("PresentedContent")] [Export ("adDidPresentFullScreenContent:")] void DidPresentFullScreenContent (FullScreenPresentingAd ad); + // - (void)adWillDismissFullScreenContent:(nonnull id)ad; + [EventArgs ("FullScreenPresentingAd")] + [EventName ("DismissingContent")] + [Export ("adWillDismissFullScreenContent:")] + void WillDismissFullScreenContent (FullScreenPresentingAd ad); + + // - (void)adDidDismissFullScreenContent:(nonnull id)ad; [Export ("adDidDismissFullScreenContent:")] + [EventArgs ("FullScreenPresentingAd")] + [EventName ("DismissedContent")] void DidDismissFullScreenContent (FullScreenPresentingAd ad); } [Protocol] - [BaseType (typeof (NSObject), Name = "GADFullScreenPresentingAd")] + [BaseType (typeof (NSObject), + Name = "GADFullScreenPresentingAd", + Delegates = new string [] { "Delegate" }, + Events = new Type [] { typeof (FullScreenContentDelegate) })] interface FullScreenPresentingAd { [NullAllowed] [Export ("fullScreenContentDelegate", ArgumentSemantic.Weak)] @@ -937,9 +701,9 @@ interface FullScreenPresentingAd { // @interface GADAppOpenAd : GADFullScreenPresentingAd [DisableDefaultCtor] - [BaseType (typeof (FullScreenPresentingAd), Name = "GADAppOpenAd")] + [BaseType (typeof (FullScreenContentDelegate), Name = "GADAppOpenAd")] interface AppOpenAd { - // +(void)loadWithAdUnitID:(NSString * _Nonnull)adUnitID request:(GADRequest * _Nullable)request orientation:(UIInterfaceOrientation)orientation completionHandler:(GADAppOpenAdLoadCompletionHandler _Nonnull)completionHandler; + // + (void)loadWithAdUnitID:(nonnull NSString *)adUnitID request:(nullable GADRequest *)request orientation:(UIInterfaceOrientation)orientation completionHandler:(nonnull GADAppOpenAdLoadCompletionHandler)completionHandler; [Async] [Static] [Export ("loadWithAdUnitID:request:orientation:completionHandler:")] @@ -1059,17 +823,12 @@ interface SearchBannerView { IAdSizeDelegate AdSizeDelegate { get; set; } } - // @interface GADUnifiedNativeAd : NSObject + // @interface GADNativeAd : NSObject [BaseType (typeof (NSObject), - Name = "GADUnifiedNativeAd", + Name = "GADNativeAd", Delegates = new [] { "Delegate", "UnconfirmedClickDelegate" }, - Events = new [] { typeof (UnifiedNativeAdDelegate), typeof (UnifiedNativeAdUnconfirmedClickDelegate) })] - interface UnifiedNativeAd { - // @property (readonly, copy, nonatomic) NSString * _Nullable headline; - [NullAllowed] - [Export ("headline")] - string Headline { get; } - + Events = new [] { typeof (NativeAdDelegate), typeof (NativeAdUnconfirmedClickDelegate) })] + interface NativeAd { // @property (readonly, copy, nonatomic) NSString * _Nullable callToAction; [NullAllowed] [Export ("callToAction")] @@ -1114,10 +873,10 @@ interface UnifiedNativeAd { [Export ("mediaContent")] MediaContent MediaContent { get; } - // @property (nonatomic, weak) id _Nullable delegate; + // @property (nonatomic, weak) id _Nullable delegate; [NullAllowed] [Export ("delegate", ArgumentSemantic.Weak)] - IUnifiedNativeAdDelegate Delegate { get; set; } + INativeAdDelegate Delegate { get; set; } // @property (nonatomic, weak) UIViewController * _Nullable rootViewController; [NullAllowed] @@ -1147,7 +906,7 @@ interface UnifiedNativeAd { [Export ("muteThisAdReasons")] MuteThisAdReason [] MuteThisAdReasons { get; } - // -(void)registerAdView:(UIView * _Nonnull)adView clickableAssetViews:(NSDictionary * _Nonnull)clickableAssetViews nonclickableAssetViews:(NSDictionary * _Nonnull)nonclickableAssetViews; + // -(void)registerAdView:(UIView * _Nonnull)adView clickableAssetViews:(NSDictionary * _Nonnull)clickableAssetViews nonclickableAssetViews:(NSDictionary * _Nonnull)nonclickableAssetViews; [Export ("registerAdView:clickableAssetViews:nonclickableAssetViews:")] void RegisterAdView (UIView adView, NSDictionary nsClickableAssetViews, NSDictionary nsNonclickableAssetViews); @@ -1161,27 +920,15 @@ interface UnifiedNativeAd { // - (void)muteThisAdWithReason:(nullable GADMuteThisAdReason *)reason; [Export ("muteThisAdWithReason:")] void MuteThisAd (MuteThisAdReason reason); - - // @property (readonly, nonatomic, strong) GADVideoController * _Nullable videoController; - [Obsolete ("Use the MediaContent.VideoController property instead.")] - [NullAllowed] - [Export ("videoController", ArgumentSemantic.Strong)] - VideoController VideoController { get; } - - // @property (readonly, copy, nonatomic) NSString * _Nullable adNetworkClassName; - [Obsolete ("Use ResponseInfo.AdNetworkClassName.")] - [NullAllowed] - [Export ("adNetworkClassName")] - string AdNetworkClassName { get; } - + /// - /// From UnifiedNativeAd_ConfirmationClick Category + /// From NativeAd_ConfirmationClick Category /// - // @property (nonatomic, weak) id _Nullable unconfirmedClickDelegate; + // @property (nonatomic, weak) id _Nullable unconfirmedClickDelegate; [NullAllowed] [Export ("unconfirmedClickDelegate", ArgumentSemantic.Weak)] - IUnifiedNativeAdUnconfirmedClickDelegate UnconfirmedClickDelegate { get; set; } + INativeAdUnconfirmedClickDelegate UnconfirmedClickDelegate { get; set; } // -(void)registerClickConfirmingView:(UIView * _Nullable)view; [Export ("registerClickConfirmingView:")] @@ -1192,7 +939,7 @@ interface UnifiedNativeAd { void CancelUnconfirmedClick (); /// - /// From UnifiedNativeAd_CustomClickGesture Category + /// From NativeAd_CustomClickGesture Category /// // - (void)enableCustomClickGestures; @@ -1206,27 +953,28 @@ interface UnifiedNativeAd { interface IUnifiedNativeAdLoaderDelegate { } + // CHECK // @protocol GADUnifiedNativeAdLoaderDelegate [Model (AutoGeneratedName = true)] [Protocol] [BaseType (typeof (NSObject), Name = "GADUnifiedNativeAdLoaderDelegate")] interface UnifiedNativeAdLoaderDelegate : AdLoaderDelegate { - // @required -(void)adLoader:(GADAdLoader * _Nonnull)adLoader didReceiveUnifiedNativeAd:(GADUnifiedNativeAd * _Nonnull)nativeAd; + // @required -(void)adLoader:(GADAdLoader * _Nonnull)adLoader didReceiveUnifiedNativeAd:(GADNativeAd * _Nonnull)nativeAd; [Abstract] [Export ("adLoader:didReceiveUnifiedNativeAd:")] - void DidReceiveUnifiedNativeAd (AdLoader adLoader, UnifiedNativeAd nativeAd); + void DidReceiveUnifiedNativeAd (AdLoader adLoader, NativeAd nativeAd); } - // @interface GADUnifiedNativeAdView : UIView - [BaseType (typeof (UIView), Name = "GADUnifiedNativeAdView")] - interface UnifiedNativeAdView { + // @interface GADNativeAdView : UIView + [BaseType (typeof (UIView), Name = "GADNativeAdView")] + interface NativeAdView { [Export ("initWithFrame:")] IntPtr Constructor (CGRect frame); - // @property (nonatomic, strong) GADUnifiedNativeAd * _Nullable nativeAd; + // @property (nonatomic, strong) GADNativeAd * _Nullable nativeAd; [NullAllowed] [Export ("nativeAd", ArgumentSemantic.Strong)] - UnifiedNativeAd NativeAd { get; set; } + NativeAd NativeAd { get; set; } // @property (nonatomic, weak) UIView * _Nullable headlineView __attribute__((iboutlet)); [NullAllowed] @@ -1285,118 +1033,180 @@ interface UnifiedNativeAdView { } [Static] - interface UnifiedNativeAdAssetIdentifiers { - // extern const GADUnifiedNativeAssetIdentifier _Nonnull GADUnifiedNativeHeadlineAsset __attribute__((visibility("default"))); - [Field ("GADUnifiedNativeHeadlineAsset", "__Internal")] + interface NativeAdAssetIdentifiers { + // extern const GADNativeAssetIdentifier _Nonnull GADNativeHeadlineAsset __attribute__((visibility("default"))); + [Field ("GADNativeHeadlineAsset", "__Internal")] NSString HeadlineAsset { get; } - // extern const GADUnifiedNativeAssetIdentifier _Nonnull GADUnifiedNativeCallToActionAsset __attribute__((visibility("default"))); - [Field ("GADUnifiedNativeCallToActionAsset", "__Internal")] + // extern const GADNativeAssetIdentifier _Nonnull GADNativeCallToActionAsset __attribute__((visibility("default"))); + [Field ("GADNativeCallToActionAsset", "__Internal")] NSString CallToActionAsset { get; } - // extern const GADUnifiedNativeAssetIdentifier _Nonnull GADUnifiedNativeIconAsset __attribute__((visibility("default"))); - [Field ("GADUnifiedNativeIconAsset", "__Internal")] + // extern const GADNativeAssetIdentifier _Nonnull GADNativeIconAsset __attribute__((visibility("default"))); + [Field ("GADNativeIconAsset", "__Internal")] NSString IconAsset { get; } - // extern const GADUnifiedNativeAssetIdentifier _Nonnull GADUnifiedNativeBodyAsset __attribute__((visibility("default"))); - [Field ("GADUnifiedNativeBodyAsset", "__Internal")] + // extern const GADNativeAssetIdentifier _Nonnull GADNativeBodyAsset __attribute__((visibility("default"))); + [Field ("GADNativeBodyAsset", "__Internal")] NSString BodyAsset { get; } - // extern const GADUnifiedNativeAssetIdentifier _Nonnull GADUnifiedNativeStoreAsset __attribute__((visibility("default"))); - [Field ("GADUnifiedNativeStoreAsset", "__Internal")] + // extern const GADNativeAssetIdentifier _Nonnull GADNativeStoreAsset __attribute__((visibility("default"))); + [Field ("GADNativeStoreAsset", "__Internal")] NSString StoreAsset { get; } - // extern const GADUnifiedNativeAssetIdentifier _Nonnull GADUnifiedNativePriceAsset __attribute__((visibility("default"))); - [Field ("GADUnifiedNativePriceAsset", "__Internal")] + // extern const GADNativeAssetIdentifier _Nonnull GADNativePriceAsset __attribute__((visibility("default"))); + [Field ("GADNativePriceAsset", "__Internal")] NSString PriceAsset { get; } - // extern const GADUnifiedNativeAssetIdentifier _Nonnull GADUnifiedNativeImageAsset __attribute__((visibility("default"))); - [Field ("GADUnifiedNativeImageAsset", "__Internal")] + // extern const GADNativeAssetIdentifier _Nonnull GADNativeImageAsset __attribute__((visibility("default"))); + [Field ("GADNativeImageAsset", "__Internal")] NSString ImageAsset { get; } - // extern const GADUnifiedNativeAssetIdentifier _Nonnull GADUnifiedNativeStarRatingAsset __attribute__((visibility("default"))); - [Field ("GADUnifiedNativeStarRatingAsset", "__Internal")] + // extern const GADNativeAssetIdentifier _Nonnull GADNativeStarRatingAsset __attribute__((visibility("default"))); + [Field ("GADNativeStarRatingAsset", "__Internal")] NSString StarRatingAsset { get; } - // extern const GADUnifiedNativeAssetIdentifier _Nonnull GADUnifiedNativeAdvertiserAsset __attribute__((visibility("default"))); - [Field ("GADUnifiedNativeAdvertiserAsset", "__Internal")] + // extern const GADNativeAssetIdentifier _Nonnull GADNativeAdvertiserAsset __attribute__((visibility("default"))); + [Field ("GADNativeAdvertiserAsset", "__Internal")] NSString AdvertiserAsset { get; } - // extern const GADUnifiedNativeAssetIdentifier _Nonnull GADUnifiedNativeMediaViewAsset __attribute__((visibility("default"))); - [Field ("GADUnifiedNativeMediaViewAsset", "__Internal")] + // extern const GADNativeAssetIdentifier _Nonnull GADNativeMediaViewAsset __attribute__((visibility("default"))); + [Field ("GADNativeMediaViewAsset", "__Internal")] NSString MediaViewAsset { get; } - // extern const GADUnifiedNativeAssetIdentifier _Nonnull GADUnifiedNativeAdChoicesViewAsset __attribute__((visibility("default"))); - [Field ("GADUnifiedNativeAdChoicesViewAsset", "__Internal")] + // extern const GADNativeAssetIdentifier _Nonnull GADNativeAdChoicesViewAsset __attribute__((visibility("default"))); + [Field ("GADNativeAdChoicesViewAsset", "__Internal")] NSString AdChoicesViewAsset { get; } } - interface IUnifiedNativeAdDelegate { } + // typedef void (^GADNativeAdCustomClickHandler)(NSString* assetID); + delegate void NativeAdCustomClickHandle (string assetId); + + // @interface GADCustomNativeAd : UIView + [BaseType (typeof (UIView), Name = "GADCustomNativeAd")] + interface CustomNativeAd { + // extern NSString *const GADCustomTemplateAdMediaViewKey; + [Internal] + [Field ("GADCustomNativeAdMediaViewKey", "__Internal")] + NSString _MediaViewKey { get; } + + // @property(nonatomic, readonly, nonnull) NSString *formatID; + [Export ("formatID")] + string FormatID { get; } + + // @property(nonatomic, readonly, nonnull) NSArray *availableAssetKeys; + [Export ("availableAssetKeys")] + string[] AvailableAssetKeys { get; } + + // @property(atomic, copy, nullable) GADNativeAdCustomClickHandler customClickHandler; + [NullAllowed] + [Export ("customClickHandler", ArgumentSemantic.Copy)] + NativeAdCustomClickHandle CustomClickHandler { get; } + + // @property(nonatomic, readonly, nullable) GADDisplayAdMeasurement *displayAdMeasurement; + [NullAllowed] + [Export ("displayAdMeasurement")] + DisplayAdMeasurement DisplayAdMeasurement { get; } + + // @property(nonatomic, readonly, nonnull) GADMediaContent *mediaContent; + [NullAllowed] + [Export ("mediaContent")] + MediaContent MediaContent { get; } + + // @property(nonatomic, weak, nullable) id delegate; + [NullAllowed] + [Export ("delegate", ArgumentSemantic.Weak)] + ICustomNativeAdDelegate Delegate { get; set; } + + // @property(nonatomic, weak, nullable) UIViewController *rootViewController; + [NullAllowed] + [Export ("rootViewController", ArgumentSemantic.Weak)] + UIViewController RootViewController { get; set; } + + // @property(nonatomic, readonly, nonnull) GADResponseInfo *responseInfo; + [Export ("responseInfo")] + ResponseInfo ResponseInfo { get; } + + // - (nullable GADNativeAdImage *)imageForKey:(nonnull NSString *)key; + [return: NullAllowed] + [Export ("imageForKey:")] + NativeAdImage ImageForKey (NSString key); + + // - (nullable NSString *)stringForKey:(nonnull NSString *)key; + [return: NullAllowed] + [Export ("stringForKey:")] + NSString StringForKey (NSString key); + + // - (void)performClickOnAssetWithKey:(nonnull NSString *)assetKey; + [return: NullAllowed] + [Export ("performClickOnAssetWithKey:")] + void RecordImpression (NSString assetKey); + + // - (void)recordImpression; + [Export ("recordImpression")] + void RecordImpression (); + } + + + interface ICustomNativeAdDelegate { + } - // @protocol GADUnifiedNativeAdDelegate + // @protocol GADCustomNativeAdDelegate [Model (AutoGeneratedName = true)] [Protocol] - [BaseType (typeof (NSObject), Name = "GADUnifiedNativeAdDelegate")] - interface UnifiedNativeAdDelegate { - // @optional -(void)nativeAdDidRecordImpression:(GADUnifiedNativeAd * _Nonnull)nativeAd; - [EventArgs ("UnifiedNativeAd")] + [BaseType (typeof (NSObject), Name = "GADCustomNativeAdDelegate")] + interface CustomNativeAdDelegate { + // - (void)customNativeAdDidRecordImpression:(nonnull GADCustomNativeAd *)nativeAd; + [EventArgs ("NativeAd")] [EventName ("ImpressionRecorded")] - [Export ("nativeAdDidRecordImpression:")] - void DidRecordImpression (UnifiedNativeAd nativeAd); + [Export ("customNativeAdDidRecordImpression:")] + void DidRecordImpression (NativeAd nativeAd); - // @optional -(void)nativeAdDidRecordClick:(GADUnifiedNativeAd * _Nonnull)nativeAd; - [EventArgs ("UnifiedNativeAd")] + // - (void)customNativeAdDidRecordClick:(nonnull GADCustomNativeAd *)nativeAd; + [EventArgs ("NativeAd")] [EventName ("ClickRecorded")] - [Export ("nativeAdDidRecordClick:")] - void DidRecordClick (UnifiedNativeAd nativeAd); - - // @optional -(void)nativeAdWillPresentScreen:(GADUnifiedNativeAd * _Nonnull)nativeAd; - [EventArgs ("UnifiedNativeAd")] - [Export ("nativeAdWillPresentScreen:")] - void WillPresentScreen (UnifiedNativeAd nativeAd); - - // @optional -(void)nativeAdWillDismissScreen:(GADUnifiedNativeAd * _Nonnull)nativeAd; - [EventArgs ("UnifiedNativeAd")] - [Export ("nativeAdWillDismissScreen:")] - void WillDismissScreen (UnifiedNativeAd nativeAd); + [Export ("customNativeAdDidRecordClick:")] + void DidRecordClick (NativeAd nativeAd); - // @optional -(void)nativeAdDidDismissScreen:(GADUnifiedNativeAd * _Nonnull)nativeAd; - [EventArgs ("UnifiedNativeAd")] - [EventName ("ScreenDismissed")] - [Export ("nativeAdDidDismissScreen:")] - void DidDismissScreen (UnifiedNativeAd nativeAd); + // - (void)customNativeAdWillPresentScreen:(nonnull GADCustomNativeAd *)nativeAd; + [EventArgs ("NativeAd")] + [EventName ("ScreenPresenting")] + [Export ("customNativeAdWillPresentScreen:")] + void WillPresentScreen (NativeAd nativeAd); - // @optional -(void)nativeAdWillLeaveApplication:(GADUnifiedNativeAd * _Nonnull)nativeAd; - [EventArgs ("UnifiedNativeAd")] - [Export ("nativeAdWillLeaveApplication:")] - void WillLeaveApplication (UnifiedNativeAd nativeAd); + // - (void)customNativeAdWillDismissScreen:(nonnull GADCustomNativeAd *)nativeAd; + [EventArgs ("NativeAd")] + [EventName ("ScreenDismissing")] + [Export ("customNativeAdWillDismissScreen:")] + void WillDismissScreen (NativeAd nativeAd); - // @optional -(void)nativeAdIsMuted:(GADUnifiedNativeAd *)nativeAd; - [EventArgs ("UnifiedNativeAd")] - [Export ("nativeAdIsMuted:")] - void IsMuted (UnifiedNativeAd nativeAd); + // - (void)customNativeAdDidDismissScreen:(nonnull GADCustomNativeAd *)nativeAd; + [EventArgs ("NativeAd")] + [EventName ("ScreenDismissed")] + [Export ("customNativeAdDidDismissScreen:")] + void DidDismissScreen (NativeAd nativeAd); } - interface IUnifiedNativeAdUnconfirmedClickDelegate { } + interface INativeAdUnconfirmedClickDelegate { } - // @protocol GADUnifiedNativeAdUnconfirmedClickDelegate + // @protocol GADNativeAdUnconfirmedClickDelegate [Model (AutoGeneratedName = true)] [Protocol] - [BaseType (typeof (NSObject), Name = "GADUnifiedNativeAdUnconfirmedClickDelegate")] - interface UnifiedNativeAdUnconfirmedClickDelegate { - // @required -(void)nativeAd:(GADUnifiedNativeAd * _Nonnull)nativeAd didReceiveUnconfirmedClickOnAssetID:(GADUnifiedNativeAssetIdentifier _Nonnull)assetID; - [EventArgs ("UnifiedNativeAdUnconfirmedClickReceived")] + [BaseType (typeof (NSObject), Name = "GADNativeAdUnconfirmedClickDelegate")] + interface NativeAdUnconfirmedClickDelegate { + // @required -(void)nativeAd:(GADUNativeAd * _Nonnull)nativeAd didReceiveUnconfirmedClickOnAssetID:(GADNativeAssetIdentifier _Nonnull)assetID; + [EventArgs ("NativeAdUnconfirmedClickReceived")] [EventName ("UnconfirmedClickReceived")] [Abstract] [Export ("nativeAd:didReceiveUnconfirmedClickOnAssetID:")] - void DidReceiveUnconfirmedClick (UnifiedNativeAd nativeAd, string assetId); + void DidReceiveUnconfirmedClick (NativeAd nativeAd, string assetId); - // @required -(void)nativeAdDidCancelUnconfirmedClick:(GADUnifiedNativeAd * _Nonnull)nativeAd; - [EventArgs ("UnifiedNativeAdUnconfirmedClickCancelled")] + // @required -(void)nativeAdDidCancelUnconfirmedClick:(GADNativeAd * _Nonnull)nativeAd; + [EventArgs ("NativeAdUnconfirmedClickCancelled")] [EventName ("UnconfirmedClickCancelled")] [Abstract] [Export ("nativeAdDidCancelUnconfirmedClick:")] - void DidCancelUnconfirmedClick (UnifiedNativeAd nativeAd); + void DidCancelUnconfirmedClick (NativeAd nativeAd); } // @interface GADVideoController : NSObject @@ -1433,14 +1243,6 @@ interface VideoController { // - (BOOL)clickToExpandEnabled; [Export ("clickToExpandEnabled")] bool IsClickToExpandEnabled { get; } - - // - (BOOL)hasVideoContent; - [Export ("hasVideoContent")] - bool HasVideoContent (); - - // - (double)aspectRatio; - [Export ("aspectRatio")] - double AspectRatio { get; } } interface IVideoControllerDelegate { @@ -1525,10 +1327,6 @@ interface AdLoader { [Export ("adUnitID")] string AdUnitId { get; } - [Obsolete ("Use AdUnitId property instead. This will be removed in future versions")] - [Wrap ("AdUnitId")] - string AdUnitID { get; } - // @property(nonatomic, getter=isLoading, readonly) BOOL loading; [Export ("isLoading")] bool IsLoading { get; } @@ -1541,29 +1339,34 @@ interface AdLoader { [Export ("loadRequest:")] void LoadRequest ([NullAllowed] Request request); } + + // @protocol GADAdMetadataProvider + [Model (AutoGeneratedName = true)] + [Protocol] + [BaseType (typeof (NSObject), Name = "GADAdMetadataProvider")] + interface AdMetadataProvider { + // @property(nonatomic, readonly, nullable) NSDictionary *adMetadata; + [Export ("adMetadata")] + NSDictionary AdMetadata { get; } - [Obsolete ("Use AdLoaderAdType enum instead. This will be removed in future versions.")] - [Static] - interface AdLoaderType { - //// extern NSString *const kGADAdLoaderAdTypeNativeAppInstall; - //[Field ("kGADAdLoaderAdTypeNativeAppInstall", "__Internal")] - //NSString NativeAppInstall { get; } - - //// extern NSString *const kGADAdLoaderAdTypeNativeContent; - //[Field ("kGADAdLoaderAdTypeNativeContent", "__Internal")] - //NSString NativeContent { get; } - - // extern NSString *const kGADAdLoaderAdTypeNativeCustomTemplate; - [Field("kGADAdLoaderAdTypeNativeCustomTemplate", "__Internal")] - NSString NativeCustomTemplate { get; } + // @property(nonatomic, weak, nullable) id adMetadataDelegate; + [NullAllowed] + [Export ("adMetadataDelegate", ArgumentSemantic.Weak)] + IAdMetadataDelegate AdMetadataDelegate { get; set; } + } - // extern NSString *const kGADAdLoaderAdTypeDFPBanner; - [Field ("kGADAdLoaderAdTypeDFPBanner", "__Internal")] - NSString DfpBanner { get; } + interface IAdMetadataDelegate { + } - // AD_EXTERN GADAdLoaderAdType const kGADAdLoaderAdTypeUnifiedNative; - [Field ("kGADAdLoaderAdTypeUnifiedNative", "__Internal")] - NSString UnifiedNative { get; } + // @protocol GADAdMetadataDelegate + [Model (AutoGeneratedName = true)] + [Protocol] + [BaseType (typeof (NSObject), Name = "GADAdMetadataDelegate")] + interface AdMetadataDelegate { + // - (void)adMetadataDidChange:(nonnull id)ad; + [Abstract] + [Export ("adMetadataDidChange:")] + void AdMetadataDidChange (AdMetadataProvider ad); } interface IAdLoaderDelegate { @@ -1574,10 +1377,10 @@ interface IAdLoaderDelegate { [Protocol] [BaseType (typeof (NSObject), Name = "GADAdLoaderDelegate")] interface AdLoaderDelegate { - // @required -(void)adLoader:(GADAdLoader *)adLoader didFailToReceiveAdWithError:(GADRequestError *)error; + // @required -(void)adLoader:(GADAdLoader *)adLoader didFailToReceiveAdWithError:(NSError *)error; [Abstract] [Export ("adLoader:didFailToReceiveAdWithError:")] - void DidFailToReceiveAd (AdLoader adLoader, RequestError error); + void DidFailToReceiveAd (AdLoader adLoader, NSError error); // @optional - (void)adLoaderDidFinishLoading:(GADAdLoader *)adLoader; [Export ("adLoaderDidFinishLoading:")] @@ -1586,38 +1389,6 @@ interface AdLoaderDelegate { #region Loading.Formats - // @interface GADNativeAd : NSObject - [BaseType (typeof (NSObject), - Name = "GADNativeAd", - Delegates = new string [] { "Delegate" }, - Events = new Type [] { typeof (NativeAdDelegate) })] - interface NativeAd { - // @property (nonatomic, weak) id __nullable delegate; - [NullAllowed] - [Export ("delegate", ArgumentSemantic.Weak)] - INativeAdDelegate Delegate { get; set; } - - // @property (nonatomic, weak) UIViewController * __nullable rootViewController; - [NullAllowed] - [Export ("rootViewController", ArgumentSemantic.Weak)] - UIViewController RootViewController { get; set; } - - // @property (readonly, copy, nonatomic) NSDictionary * extraAssets; - [NullAllowed] - [Export ("extraAssets", ArgumentSemantic.Copy)] - NSDictionary ExtraAssets { get; } - - // @property(nonatomic, readonly, nonnull) GADResponseInfo *responseInfo; - [Export ("responseInfo")] - ResponseInfo ResponseInfo { get; } - - // @property (readonly, copy, nonatomic) NSString * adNetworkClassName; - [Obsolete ("Use ResponseInfo.AdNetworkClassName.")] - [NullAllowed] - [Export ("adNetworkClassName")] - string AdNetworkClassName { get; } - } - interface INativeAdDelegate { } @@ -1694,200 +1465,7 @@ interface NativeAdViewAdOptions { [Export ("preferredAdChoicesPosition", ArgumentSemantic.Assign)] AdChoicesPosition PreferredAdChoicesPosition { get; set; } } - - interface INativeAppInstallAdLoaderDelegate { - } - - // typedef void (^GADNativeAdCustomClickHandler)(NSString* assetID); - delegate void NativeAdCustomClickHandle (string assetId); - - // @interface GADNativeCustomTemplateAd : GADNativeAd - [BaseType (typeof (NativeAd), Name = "GADNativeCustomTemplateAd")] - interface NativeCustomTemplateAd { - // extern NSString *const GADNativeCustomTemplateAdMediaViewKey; - [Internal] - [Field ("GADNativeCustomTemplateAdMediaViewKey", "__Internal")] - NSString _MediaViewKey { get; } - - // @property (readonly, nonatomic) NSString * templateID; - [Export ("templateID")] - string TemplateId { get; } - - [Obsolete ("Use the TemplateId property instead. This will be removed in future versions.")] - [Wrap ("TemplateId")] - string TemplateID { get; } - - // @property (readonly, nonatomic) NSArray * availableAssetKeys; - [Export ("availableAssetKeys")] - string [] AvailableAssetKeys { get; } - - // @property(nonatomic, readonly, strong) GADVideoController *videoController; - [Export ("videoController")] - VideoController VideoController { get; } - - // @property(nonatomic, readonly, strong, GAD_NULLABLE) GADMediaView *mediaView; - [NullAllowed] - [Export ("mediaView")] - MediaView MediaView { get; } - - // @property(atomic, copy) GADNativeAdCustomClickHandler customClickHandler; - [NullAllowed] - [Export ("customClickHandler", ArgumentSemantic.Copy)] - NativeAdCustomClickHandle CustomClickHandler { get; } - - // @property (readonly, nonatomic) GADDisplayAdMeasurement * _Nullable displayAdMeasurement; - [NullAllowed] - [Export ("displayAdMeasurement")] - DisplayAdMeasurement DisplayAdMeasurement { get; } - - // -(GADNativeAdImage *)imageForKey:(NSString *)key; - [return: NullAllowed] - [Export ("imageForKey:")] - NativeAdImage ImageForKey (string key); - - // -(NSString *)stringForKey:(NSString *)key; - [return: NullAllowed] - [Export ("stringForKey:")] - string StringForKey (string key); - - // - (void)performClickOnAssetWithKey:(NSString *)assetKey; - [Export ("performClickOnAssetWithKey:")] - void PerformClickOnAssetWithKey (string assetKey); - - // - (void)recordImpression; - [Export ("recordImpression")] - void RecordImpression (); - - // -(void)performClickOnAssetWithKey:(NSString *)assetKey customClickHandler:(dispatch_block_t)customClickHandler; - [Obsolete ("Use PerformClickOnAssetWithKey (string) method instead.")] - [Export ("performClickOnAssetWithKey:customClickHandler:")] - void PerformClickOnAssetWithKey (string assetKey, [NullAllowed] Action customClickHandler); - } - - // @interface GADNativeExpressAdView : UIView - [Obsolete] - [DisableDefaultCtor] - [BaseType (typeof (UIView), - Name = "GADNativeExpressAdView", - Delegates = new string [] { "Delegate" }, - Events = new Type [] { typeof (NativeExpressAdViewDelegate) })] - interface NativeExpressAdView { - // -(instancetype)initWithAdSize:(id)adSize origin:(CGPoint)origin; - [return: NullAllowed] - [Export ("initWithAdSize:origin:")] - IntPtr Constructor (AdSize adSize, CGPoint origin); - - // -(instancetype)initWithAdSize:(id)adSize; - [return: NullAllowed] - [Export ("initWithAdSize:")] - IntPtr Constructor (AdSize adSize); - - // @property(nonatomic, strong, readonly) GADVideoController *videoController; - [Export ("videoController")] - VideoController VideoController { get; set; } - - // @property (copy, nonatomic) NSString * adUnitID; - [NullAllowed] - [Export("adUnitID")] - string AdUnitId { get; set; } - - [Obsolete ("Use AdUnitId property instead. This will be removed in future versions.")] - [NullAllowed] - [Wrap ("AdUnitId")] - string AdUnitID { get; set; } - - // @property (nonatomic, weak) UIViewController * _Nullable rootViewController __attribute__((iboutlet)); - [NullAllowed] - [Export ("rootViewController", ArgumentSemantic.Weak)] - UIViewController RootViewController { get; set; } - - // @property (assign, nonatomic) int adSize; - [Export ("adSize")] - int AdSize { get; set; } - - // @property(nonatomic, weak) IBOutlet id delegate; - [NullAllowed] - [Export ("delegate", ArgumentSemantic.Weak)] - INativeExpressAdViewDelegate Delegate { get; set; } - - // @property (getter = isAutoloadEnabled, assign, nonatomic) BOOL autoloadEnabled; - [Export ("autoloadEnabled")] - bool AutoloadEnabled { [Bind ("isAutoloadEnabled")] get; set; } - - // - (void)setAdOptions:(NSArray *)adOptions; - [Export ("setAdOptions:")] - void SetAdOptions (AdLoaderOptions [] adOptions); - - // -(void)loadRequest:(id)request; - [return: NullAllowed] - [Export ("loadRequest:")] - void LoadRequest (Request request); - - // @property (readonly, nonatomic, weak) NSString * _Nullable adNetworkClassName; - [NullAllowed] - [Export ("adNetworkClassName", ArgumentSemantic.Weak)] - string AdNetworkClassName { get; } - } - - interface INativeExpressAdViewDelegate { - } - - [Model (AutoGeneratedName = true)] - [Protocol] - [BaseType (typeof (NSObject), Name = "GADNativeExpressAdViewDelegate")] - interface NativeExpressAdViewDelegate { - // @optional -(void)nativeExpressAdViewDidReceiveAd:(GADNativeExpressAdView *)nativeExpressAdView; - [EventArgs ("NativeExpressAdView")] - [EventName ("AdReceived")] - [Export ("nativeExpressAdViewDidReceiveAd:")] - void DidReceiveAd (NativeExpressAdView nativeExpressAdView); - - // @optional -(void)nativeExpressAdView:(GADNativeExpressAdView *)nativeExpressAdView didFailToReceiveAdWithError:(GADRequestError *)error; - [EventArgs ("NativeExpressAdViewError")] - [EventName ("ReceiveAdFailed")] - [Export ("nativeExpressAdView:didFailToReceiveAdWithError:")] - void DidFailToReceiveAd (NativeExpressAdView nativeExpressAdView, RequestError error); - - // @optional -(void)nativeExpressAdViewWillPresentScreen:(GADNativeExpressAdView *)nativeExpressAdView; - [EventArgs ("NativeExpressAdView")] - [Export ("nativeExpressAdViewWillPresentScreen:")] - void WillPresentScreen (NativeExpressAdView nativeExpressAdView); - - // @optional -(void)nativeExpressAdViewWillDismissScreen:(GADNativeExpressAdView *)nativeExpressAdView; - [EventArgs ("NativeExpressAdView")] - [Export ("nativeExpressAdViewWillDismissScreen:")] - void WillDismissScreen (NativeExpressAdView nativeExpressAdView); - - // @optional -(void)nativeExpressAdViewDidDismissScreen:(GADNativeExpressAdView *)nativeExpressAdView; - [EventArgs ("NativeExpressAdView")] - [EventName ("ScreenDismissed")] - [Export ("nativeExpressAdViewDidDismissScreen:")] - void DidDismissScreen (NativeExpressAdView nativeExpressAdView); - - // @optional -(void)nativeExpressAdViewWillLeaveApplication:(GADNativeExpressAdView *)nativeExpressAdView; - [EventArgs ("NativeExpressAdView")] - [Export ("nativeExpressAdViewWillLeaveApplication:")] - void WillLeaveApplication (NativeExpressAdView nativeExpressAdView); - } - - interface INativeCustomTemplateAdLoaderDelegate { - } - - [Model (AutoGeneratedName = true)] - [Protocol] - [BaseType (typeof (NSObject), Name = "GADNativeCustomTemplateAdLoaderDelegate")] - interface NativeCustomTemplateAdLoaderDelegate : AdLoaderDelegate { - // @required -(NSArray *)nativeCustomTemplateIDsForAdLoader:(GADAdLoader *)adLoader; - [Abstract] - [Export ("nativeCustomTemplateIDsForAdLoader:")] - string [] NativeCustomTemplateIDs (AdLoader adLoader); - - // @required -(void)adLoader:(GADAdLoader *)adLoader didReceiveNativeCustomTemplateAd:(GADNativeCustomTemplateAd *)nativeCustomTemplateAd; - [Abstract] - [Export ("adLoader:didReceiveNativeCustomTemplateAd:")] - void DidReceiveNativeCustomTemplateAd (AdLoader adLoader, NativeCustomTemplateAd nativeCustomTemplateAd); - } - + #endregion #region Loading.Options @@ -1902,11 +1480,6 @@ interface NativeAdImageAdLoaderOptions { // @property (assign, nonatomic) BOOL shouldRequestMultipleImages; [Export ("shouldRequestMultipleImages")] bool ShouldRequestMultipleImages { get; set; } - - // @property (assign, nonatomic) GADNativeAdImageAdLoaderOptionsOrientation preferredImageOrientation; - [Obsolete ("Use the NativeAdMediaAdLoaderOptions.MediaAspectRatio property instead.")] - [Export ("preferredImageOrientation", ArgumentSemantic.Assign)] - NativeAdImageAdLoaderOptionsOrientation PreferredImageOrientation { get; set; } } // @interface GADNativeAdMediaAdLoaderOptions : GADAdLoaderOptions @@ -1980,6 +1553,7 @@ interface CustomEventBannerDelegate { [Export ("customEventBannerDidDismissModal:")] void DidDismissModal (ICustomEventBanner customEvent); + [Obsolete("Deprecated. No replacement.")] [Abstract] [Export ("customEventBannerWillLeaveApplication:")] void WillLeaveApplication (ICustomEventBanner customEvent); @@ -2055,6 +1629,7 @@ interface CustomEventInterstitialDelegate { [Export ("customEventInterstitialDidDismiss:")] void DidDismiss (ICustomEventInterstitial customEvent); + [Obsolete("Deprecated. No replacement.")] [Export ("customEventInterstitialWillLeaveApplication:")] void WillLeaveApplication (ICustomEventInterstitial customEvent); } @@ -2112,16 +1687,7 @@ interface CustomEventNativeAdDelegate { } [BaseType (typeof (NSObject), Name = "GADCustomEventRequest")] - interface CustomEventRequest { - [Obsolete ("Use Request.Gender property instead.")] - [Export ("userGender", ArgumentSemantic.Assign)] - Gender UserGender { get; } - - [Obsolete ("Use Request.Birthday property instead.")] - [NullAllowed] - [Export ("userBirthday", ArgumentSemantic.Copy)] - NSDate UserBirthday { get; } - + interface CustomEventRequest { [Export ("userHasLocation", ArgumentSemantic.Assign)] bool UserHasLocation { get; } @@ -2181,28 +1747,6 @@ interface DebugOptionsViewController { IDebugOptionsViewControllerDelegate Delegate { get; set; } } - interface IDelayedAdRenderingDelegate { } - - // @protocol GADDelayedAdRenderingDelegate - [Model (AutoGeneratedName = true)] - [Protocol] - [BaseType (typeof (NSObject), Name = "GADDelayedAdRenderingDelegate")] - interface DelayedAdRenderingDelegate { - // @required -(BOOL)adLoader:(GADAdLoader * _Nonnull)adLoader shouldDelayRenderingWithResumeHandler:(dispatch_block_t _Nonnull)resumeHandler; - [Abstract] - [Export ("adLoader:shouldDelayRenderingWithResumeHandler:")] - bool ShouldDelayRendering (AdLoader adLoader, Action resumeHandler); - } - - // @interface GADDelayedAdRenderingOptions : GADAdLoaderOptions - [BaseType (typeof (AdLoaderOptions), Name = "GADDelayedAdRenderingOptions")] - interface DelayedAdRenderingOptions { - // @property (nonatomic, weak) id _Nullable delegate; - [NullAllowed] - [Export ("delegate", ArgumentSemantic.Weak)] - IDelayedAdRenderingDelegate Delegate { get; set; } - } - // @interface GADDisplayAdMeasurement : NSObject [BaseType (typeof (NSObject), Name = "GADDisplayAdMeasurement")] interface DisplayAdMeasurement { @@ -2392,78 +1936,16 @@ interface DynamicHeightSearchRequest { [Export ("longerHeadlinesExtensionEnabled")] bool LongerHeadlinesExtensionEnabled { get; set; } + // @property(nonatomic, copy, nullable) NSString *styleID; + [NullAllowed] + [Export ("styleID", ArgumentSemantic.Copy)] + string StyleId { get; set; } + // -(void)setAdvancedOptionValue:(id)value forKey:(NSString *)key; [Export ("setAdvancedOptionValue:forKey:")] void SetAdvancedOptionValue (NSObject value, string key); } - [Obsolete] - [BaseType (typeof (NSObject), Name = "GADDefaultInAppPurchase")] - interface DefaultInAppPurchase { - [Static] - [Export ("enableDefaultPurchaseFlowWithDelegate:")] - void EnableDefaultPurchaseFlow (IDefaultInAppPurchaseDelegate aDelegate); - - [Static] - [Export ("disableDefaultPurchaseFlow")] - void DisableDefaultPurchaseFlow (); - - [Export ("productID", ArgumentSemantic.Copy)] - string ProductId { get; } - - [Export ("quantity", ArgumentSemantic.Assign)] - nint Quantity { get; } - - [Export ("paymentTransaction", ArgumentSemantic.Strong)] - SKPaymentTransaction PaymentTransaction { get; } - - [Export ("finishTransaction")] - void FinishTransaction (); - } - - [Obsolete] - [BaseType (typeof (NSObject), Name = "GADInAppPurchase")] - interface InAppPurchase { - [Export ("productID", ArgumentSemantic.Copy)] - string ProductId { get; } - - [Export ("quantity", ArgumentSemantic.Assign)] - nint Quantity { get; } - - [Export ("reportPurchaseStatus:")] - void ReportPurchaseStatus (InAppPurchaseStatus purchaseStatus); - } - - interface IDefaultInAppPurchaseDelegate { - - } - - [Obsolete] - [Model (AutoGeneratedName = true)] - [Protocol] - [BaseType (typeof (NSObject), Name = "GADDefaultInAppPurchaseDelegate")] - interface DefaultInAppPurchaseDelegate { - [Abstract] - [Export ("userDidPayForPurchase:")] - void DidPayForPurchase (DefaultInAppPurchase defaultInAppPurchase); - - [Export ("shouldStartPurchaseForProductID:quantity:")] - void ShouldStartPurchase (string productID, nint quantity); - } - - interface IInAppPurchaseDelegate { - - } - - [Obsolete] - [Model (AutoGeneratedName = true)] - [Protocol] - [BaseType (typeof (NSObject), Name = "GADInAppPurchaseDelegate")] - interface InAppPurchaseDelegate { - [Export ("didReceiveInAppPurchase:")] - [EventArgs ("InAppPurchaseDelegateDidRecieve")] - void DidReceiveInAppPurchase (InAppPurchase purchase); - } // @interface GADAdapterStatus : NSObject [BaseType (typeof (NSObject), Name = "GADAdapterStatus")] @@ -2489,48 +1971,6 @@ interface InitializationStatus : INSCopying { NSDictionary AdapterStatusesByClassName { get; } } - // typedef void (^GADInstreamAdLoadCompletionHandler)(GADInstreamAd * _Nullable, NSError * _Nullable); - delegate void InstreamAdLoadCompletionHandler ([NullAllowed] InstreamAd instreamAd, [NullAllowed] NSError error); - - // @interface GADInstreamAd : NSObject - [Obsolete] - [BaseType (typeof(NSObject), Name = "GADInstreamAd")] - interface InstreamAd - { - // +(void)loadAdWithAdUnitID:(NSString * _Nonnull)adUnitID request:(GADRequest * _Nullable)request mediaAspectRatio:(GADMediaAspectRatio)mediaAspectRatio completionHandler:(GADInstreamAdLoadCompletionHandler _Nonnull)completionHandler; - [Static] - [Export ("loadAdWithAdUnitID:request:mediaAspectRatio:completionHandler:")] - void LoadAd (string adUnitId, [NullAllowed] Request request, MediaAspectRatio mediaAspectRatio, InstreamAdLoadCompletionHandler completionHandler); - - // +(void)loadAdWithAdTag:(NSString * _Nonnull)adTag completionHandler:(GADInstreamAdLoadCompletionHandler _Nonnull)completionHandler; - [Static] - [Export ("loadAdWithAdTag:completionHandler:")] - void LoadAd (string adTag, InstreamAdLoadCompletionHandler completionHandler); - - // @property (readonly, nonatomic) GADMediaContent * _Nonnull mediaContent; - [Export ("mediaContent")] - MediaContent MediaContent { get; } - - // @property (readonly, nonatomic) GADResponseInfo * _Nonnull responseInfo; - [Export ("responseInfo")] - ResponseInfo ResponseInfo { get; } - - // @property (copy, nonatomic) GADPaidEventHandler _Nullable paidEventHandler; - [NullAllowed] - [Export ("paidEventHandler", ArgumentSemantic.Copy)] - PaidEventHandler PaidEventHandler { get; set; } - } - - // @interface GADInstreamAdView : UIView - [BaseType (typeof(UIView), Name = "GADInstreamAdView")] - interface InstreamAdView - { - // @property (nonatomic) GADInstreamAd * _Nullable ad; - [NullAllowed] - [Export ("ad", ArgumentSemantic.Assign)] - InstreamAd Ad { get; set; } - } - // @interface GADMuteThisAdReason : NSObject [BaseType (typeof (NSObject), Name = "GADMuteThisAdReason")] interface MuteThisAdReason { @@ -2564,24 +2004,24 @@ namespace Google.MobileAds.DoubleClick { interface IBannerAdLoaderDelegate { } - // @protocol DFPBannerAdLoaderDelegate + // @protocol GAMBannerAdLoaderDelegate [Model (AutoGeneratedName = true)] [Protocol] - [BaseType (typeof (NSObject), Name = "DFPBannerAdLoaderDelegate")] + [BaseType (typeof (NSObject), Name = "GAMBannerAdLoaderDelegate")] interface BannerAdLoaderDelegate : Google.MobileAds.AdLoaderDelegate { // - (NSArray *)validBannerSizesForAdLoader:(GADAdLoader *)adLoader; [Abstract] [Export ("validBannerSizesForAdLoader:")] NSValue [] ValidBannerSizes (Google.MobileAds.AdLoader adLoader); - // - (void)adLoader:(GADAdLoader *)adLoader didReceiveDFPBannerView:(DFPBannerView *)bannerView; + // - (void)adLoader:(GADAdLoader *)adLoader didReceiveGAMBannerView:(GAMBannerView *)bannerView; [Abstract] - [Export ("adLoader:didReceiveDFPBannerView:")] + [Export ("adLoader:didReceiveGAMBannerView:")] void DidReceiveBannerView (Google.MobileAds.AdLoader adLoader, BannerView bannerView); } [BaseType (typeof (Google.MobileAds.BannerView), - Name = "DFPBannerView", + Name = "GAMBannerView", Delegates = new string [] { "AdSizeDelegate" }, Events = new Type [] { typeof (Google.MobileAds.AdSizeDelegate) })] interface BannerView { @@ -2636,8 +2076,8 @@ interface BannerView { void SetValidAdSizes (AdSize firstSize, IntPtr sizesPtr); } - // @interface DFPBannerViewOptions : GADAdLoaderOptions - [BaseType (typeof (AdLoaderOptions), Name = "DFPBannerViewOptions")] + // @interface GAMBannerViewOptions : GADAdLoaderOptions + [BaseType (typeof (AdLoaderOptions), Name = "GAMBannerViewOptions")] interface BannerViewOptions { // @property(nonatomic, weak, GAD_NULLABLE) id appEventDelegate; [NullAllowed] @@ -2655,23 +2095,30 @@ interface BannerViewOptions { } [DisableDefaultCtor] - [BaseType (typeof (Google.MobileAds.Interstitial), - Name = "DFPInterstitial")] - interface Interstitial { - // -(instancetype _Nonnull)initWithAdUnitID:(NSString * _Nonnull)adUnitID __attribute__((objc_designated_initializer)); - [DesignatedInitializer] - [Export ("initWithAdUnitID:")] - IntPtr Constructor (string adUnitID); + [BaseType (typeof (Google.MobileAds.InterstitialAd), + Name = "GAMInterstitialAd")] + interface InterstitialAd { + // + (void)loadWithAdManagerAdUnitID:(nonnull NSString *)adUnitID request:(nullable GAMRequest *)request completionHandler:(nonnull GAMInterstitialAdLoadCompletionHandler)completionHandler; + [Async] + [Static] + [Export ("loadWithAdManagerAdUnitID:request:completionHandler:")] + void LoadWithAdManagerAdUnitID (string adUnitId, [NullAllowed] Request request, InterstitialAdLoadCompletionHandler completionHandler); + + // + (void)loadWithAdUnitID:(nonnull NSString *)adUnitID request:(nullable GADRequest *)request completionHandler:(nonnull GADInterstitialAdLoadCompletionHandler)completionHandler; + [Async] + [Static] + [Export ("loadWithAdUnitID:request:completionHandler:")] + void Load (string adUnitId, [NullAllowed] Request request, InterstitialAdLoadCompletionHandler completionHandler); [NullAllowed] [Export ("appEventDelegate", ArgumentSemantic.Weak)] IAppEventDelegate AppEventDelegate { get; set; } } - [BaseType (typeof (Google.MobileAds.Request), Name = "DFPRequest")] + [BaseType (typeof (Google.MobileAds.Request), Name = "GAMRequest")] interface Request { [New] - [Field ("kDFPSimulatorID", "__Internal")] + [Field ("GADSimulatorID", "__Internal")] NSString SimulatorId { get; } [New] @@ -2689,7 +2136,7 @@ interface Request { [NullAllowed] [Export ("customTargeting", ArgumentSemantic.Copy)] - NSDictionary CustomTargeting { get; set; } + NSDictionary CustomTargeting { get; set; } } #endregion @@ -2789,7 +2236,7 @@ interface MediatedUnifiedNativeAd { [Export ("currentTime")] double GetCurrentTime (); - // @optional -(void)didRenderInView:(UIView * _Nonnull)view clickableAssetViews:(NSDictionary * _Nonnull)clickableAssetViews nonclickableAssetViews:(NSDictionary * _Nonnull)nonclickableAssetViews viewController:(UIViewController * _Nonnull)viewController; + // @optional -(void)didRenderInView:(UIView * _Nonnull)view clickableAssetViews:(NSDictionary * _Nonnull)clickableAssetViews nonclickableAssetViews:(NSDictionary * _Nonnull)nonclickableAssetViews viewController:(UIViewController * _Nonnull)viewController; [Export ("didRenderInView:clickableAssetViews:nonclickableAssetViews:viewController:")] void DidRenderInView (UIView view, NSDictionary clickableAssetViews, NSDictionary nonclickableAssetViews, UIViewController viewController); @@ -2797,7 +2244,7 @@ interface MediatedUnifiedNativeAd { [Export ("didRecordImpression")] void DidRecordImpression (); - // @optional -(void)didRecordClickOnAssetWithName:(GADUnifiedNativeAssetIdentifier _Nonnull)assetName view:(UIView * _Nonnull)view viewController:(UIViewController * _Nonnull)viewController; + // @optional -(void)didRecordClickOnAssetWithName:(GADNativeAssetIdentifier _Nonnull)assetName view:(UIView * _Nonnull)view viewController:(UIViewController * _Nonnull)viewController; [Export ("didRecordClickOnAssetWithName:view:viewController:")] void DidRecordClick (string assetName, UIView view, UIViewController viewController); @@ -2806,93 +2253,3 @@ interface MediatedUnifiedNativeAd { void DidUntrackView ([NullAllowed] UIView view); } } - -namespace Google.MobileAds.Consent { - // typedef void (^UMPConsentFormLoadCompletionHandler)(UMPConsentForm * _Nullable, NSError * _Nullable); - delegate void ConsentFormLoadCompletionHandler([NullAllowed] ConsentForm consentForm, [NullAllowed] NSError error); - - // typedef void (^UMPConsentFormPresentCompletionHandler)(NSError * _Nullable); - delegate void ConsentFormPresentCompletionHandler([NullAllowed] NSError error); - - // typedef void (^UMPConsentInformationUpdateCompletionHandler)(NSError * _Nullable); - delegate void ConsentInformationUpdateCompletionHandler([NullAllowed] NSError error); - - // @interface UMPConsentForm - [DisableDefaultCtor] - [BaseType(typeof(NSObject), Name = "UMPConsentForm")] - interface ConsentForm - { - // +(void)loadWithCompletionHandler:(UMPConsentFormLoadCompletionHandler _Nonnull)completionHandler; - [Static] - [Export ("loadWithCompletionHandler:")] - void LoadWithCompletionHandler (ConsentFormLoadCompletionHandler completionHandler); - - // -(void)presentFromViewController:(id)viewController completionHandler:(UMPConsentFormPresentCompletionHandler _Nullable)completionHandler; - [Export ("presentFromViewController:completionHandler:")] - void PresentFromViewController (NSObject viewController, [NullAllowed] ConsentFormPresentCompletionHandler completionHandler); - } - - // @interface UMPConsentInformation : NSObject - [BaseType (typeof(NSObject), Name = "UMPConsentInformation")] - interface ConsentInformation - { - // @property (readonly, nonatomic, class) UMPConsentInformation * _Nonnull sharedInstance; - [Static] - [Export ("sharedInstance")] - ConsentInformation SharedInstance { get; } - - // extern NSString *const _Nonnull UMPVersionString; - [Field ("UMPVersionString", "__Internal")] - NSString UMPVersionString { get; } - - // extern NSErrorDomain _Nonnull const UMPErrorDomain; - [Field ("UMPErrorDomain", "__Internal")] - NSString UMPErrorDomain { get; } - - // @property (readonly, nonatomic) UMPConsentStatus consentStatus; - [Export ("consentStatus")] - ConsentStatus ConsentStatus { get; } - - // @property (readonly, nonatomic) UMPConsentType consentType; - [Export ("consentType")] - ConsentType ConsentType { get; } - - // @property (readonly, nonatomic) UMPFormStatus formStatus; - [Export ("formStatus")] - FormStatus FormStatus { get; } - - // -(void)requestConsentInfoUpdateWithParameters:(id)parameters completionHandler:(UMPConsentInformationUpdateCompletionHandler _Nonnull)handler; - [Export ("requestConsentInfoUpdateWithParameters:completionHandler:")] - void RequestConsentInfoUpdateWithParameters (NSObject parameters, ConsentInformationUpdateCompletionHandler handler); - - // -(void)reset; - [Export ("reset")] - void Reset (); - } - - // @interface UMPDebugSettings : NSObject - [BaseType (typeof(NSObject), Name = "UMPDebugSettings")] - interface DebugSettings : INSCopying - { - // @property (nonatomic) NSArray * _Nullable testDeviceIdentifiers; - [NullAllowed, Export ("testDeviceIdentifiers", ArgumentSemantic.Assign)] - string[] TestDeviceIdentifiers { get; set; } - - // @property (nonatomic) UMPDebugGeography geography; - [Export ("geography", ArgumentSemantic.Assign)] - DebugGeography Geography { get; set; } - } - - // @interface UMPRequestParameters : NSObject - [BaseType (typeof(NSObject), Name = "UMPRequestParameters")] - interface RequestParameters - { - // @property (nonatomic) BOOL tagForUnderAgeOfConsent; - [Export ("tagForUnderAgeOfConsent")] - bool TagForUnderAgeOfConsent { get; set; } - - // @property (copy, nonatomic) UMPDebugSettings * _Nullable debugSettings; - [NullAllowed, Export ("debugSettings", ArgumentSemantic.Copy)] - DebugSettings DebugSettings { get; set; } - } -} \ No newline at end of file diff --git a/source/Google/MobileAds/Enums.cs b/source/Google/MobileAds/Enums.cs index 340d971d2..8f525ea8c 100644 --- a/source/Google/MobileAds/Enums.cs +++ b/source/Google/MobileAds/Enums.cs @@ -8,34 +8,29 @@ namespace Google.MobileAds { [Native] - public enum AdFormat : long { + public enum AdFormat : long + { Banner, Interstitial, Rewarded, - Native + Native, + RewardedInterstitial, + Unknown } public enum AdLoaderAdType { - // extern NSString *const kGADAdLoaderAdTypeNativeAppInstall; - [Field ("kGADAdLoaderAdTypeNativeAppInstall", "__Internal")] - NativeAppInstall, - - // extern NSString *const kGADAdLoaderAdTypeNativeContent; - [Field ("kGADAdLoaderAdTypeNativeContent", "__Internal")] - NativeContent, + // extern NSString *const GADAdLoaderAdTypeCustomNative; + [Field ("GADAdLoaderAdTypeCustomNative", "__Internal")] + CustomNative, - // extern NSString *const kGADAdLoaderAdTypeNativeCustomTemplate; - [Field ("kGADAdLoaderAdTypeNativeCustomTemplate", "__Internal")] - NativeCustomTemplate, + // extern NSString *const GADAdLoaderAdTypeGAMBanner; + [Field ("GADAdLoaderAdTypeGAMBanner", "__Internal")] + GamBanner, - // extern NSString *const kGADAdLoaderAdTypeDFPBanner; - [Field ("kGADAdLoaderAdTypeDFPBanner", "__Internal")] - DfpBanner, - - // AD_EXTERN GADAdLoaderAdType const kGADAdLoaderAdTypeUnifiedNative; - [Field ("kGADAdLoaderAdTypeUnifiedNative", "__Internal")] - UnifiedNative + // extern NSString *const GADAdLoaderAdTypeNative; + [Field ("GADAdLoaderAdTypeNative", "__Internal")] + Native } [Native] @@ -75,32 +70,17 @@ public enum ErrorCode : long ServerError = 3, OSVersionTooLow = 4, Timeout = 5, - [Obsolete ("Use AdAlreadyUsed enum value instead.")] - InterstitialAlreadyUsed = AdAlreadyUsed, MediationDataError = 7, MediationAdapterError = 8, MediationInvalidAdSize = 10, InternalError = 11, InvalidArgument = 12, ReceivedInvalidResponse = 13, - [Obsolete ("Use AdAlreadyUsed enum value instead.")] - RewardedAdAlreadyUsed = AdAlreadyUsed, - [Obsolete ("Use NoFill enum value instead.")] - MediationNoFill = NoFill, + MediationNoFill = 9, AdAlreadyUsed = 19, ApplicationIdentifierMissing = 20 } - [Obsolete] - [Native] - public enum InAppPurchaseStatus : long - { - Error = 0, - Successful = 1, - Cancel = 2, - InvalidProduct = 3 - } - [Native] public enum MediaAspectRatio : long { Unknown = 0, @@ -133,56 +113,3 @@ public enum AdChoicesPosition : long BottomLeftCorner } } - -namespace Google.MobileAds.Consent { - [Native] - public enum ConsentStatus : long - { - Unknown = 0, - Required = 1, - NotRequired = 2, - Obtained = 3 - } - - [Native] - public enum ConsentType : long - { - Unknown = 0, - Personalized = 1, - NonPersonalized = 2 - } - - [Native] - public enum FormStatus : long - { - Unknown = 0, - Available = 1, - Unavailable = 2 - } - - [Native] - public enum DebugGeography : long - { - Disabled = 0, - Eea = 1, - NotEea = 2 - } - - [Native] - public enum RequestErrorCode : long - { - Internal = 1, - InvalidAppID = 2, - Network = 3, - Misconfiguration = 4 - } - - [Native] - public enum FormErrorCode : long - { - Internal = 5, - AlreadyUsed = 6, - Unavailable = 7, - Timeout = 8 - } -} diff --git a/source/Google/MobileAds/Extensions.cs b/source/Google/MobileAds/Extensions.cs index 4a45df59d..e76f7c13c 100644 --- a/source/Google/MobileAds/Extensions.cs +++ b/source/Google/MobileAds/Extensions.cs @@ -6,10 +6,8 @@ using CoreGraphics; using UIKit; -namespace Google.MobileAds -{ - public partial class AdLoader : NSObject - { +namespace Google.MobileAds { + public partial class AdLoader : NSObject { public AdLoader (string adUnitId, UIViewController rootViewController, AdLoaderAdType [] adTypes, AdLoaderOptions [] options) : this (adUnitId, rootViewController, CastAdTypes (adTypes), options) { } @@ -27,53 +25,43 @@ static NSString [] CastAdTypes (AdLoaderAdType [] adTypes) } } - public partial class NativeCustomTemplateAd - { + public partial class CustomNativeAd { public static string MediaViewKey { get; } = _MediaViewKey.ToString (); } - public partial class Request - { + public partial class Request { public static readonly string GADGoogleAdMobNetworkName = "GoogleAdMobAds"; } - public partial class RequestError : NSError - { - public RequestError (NSString appDomain, nint code) : this (appDomain, code, null) - { - } - } - [Preserve (AllMembers = true)] - public partial class AdSizeCons - { - // Deprecated Macros - [Obsolete ("Use GADAdSizeCons.Banner Instead")] - public static readonly CGSize GAD_SIZE_320x50 = AdSizeCons.Banner.Size; + public partial class AdSizeCons { + // GAD_EXTERN GADAdSize GADPortraitInlineAdaptiveBannerAdSizeWithWidth(CGFloat width); + [DllImport ("__Internal", EntryPoint = "GADPortraitInlineAdaptiveBannerAdSizeWithWidth")] + public static extern AdSize GetPortraitInlineAdaptiveBannerAdSize (nfloat width); - [Obsolete ("Use GADAdSizeCons.MediumRectangle Instead")] - public static readonly CGSize GAD_SIZE_300x250 = AdSizeCons.MediumRectangle.Size; + // GAD_EXTERN GADAdSize GADLandscapeInlineAdaptiveBannerAdSizeWithWidth(CGFloat width); + [DllImport ("__Internal", EntryPoint = "GADLandscapeInlineAdaptiveBannerAdSizeWithWidth")] + public static extern AdSize GetLandscapeInlineAdaptiveBannerAdSize (nfloat width); - [Obsolete ("Use ADAdSizeCons.FullBanner Instead")] - public static readonly CGSize GAD_SIZE_468x60 = AdSizeCons.FullBanner.Size; + // GAD_EXTERN GADAdSize GADCurrentOrientationInlineAdaptiveBannerAdSizeWithWidth(CGFloat width); + [DllImport ("__Internal", EntryPoint = "GADCurrentOrientationInlineAdaptiveBannerAdSizeWithWidth")] + public static extern AdSize GetCurrentOrientationInlineAdaptiveBannerAdSizeh (nfloat width); - [Obsolete ("Use AdSizeCons.Leaderboard Instead")] - public static readonly CGSize GAD_SIZE_728x90 = AdSizeCons.Leaderboard.Size; - - [Obsolete ("Use ADAdSizeCons.Skyscraper Instead")] - public static readonly CGSize GAD_SIZE_120x600 = AdSizeCons.Skyscraper.Size; + // GAD_EXTERN GADAdSize GADInlineAdaptiveBannerAdSizeWithWidthAndMaxHeight(CGFloat width, CGFloat maxHeight); + [DllImport ("__Internal", EntryPoint = "GADInlineAdaptiveBannerAdSizeWithWidthAndMaxHeight")] + public static extern AdSize GetInlineAdaptiveBannerAdSizeWithMaxHeight (nfloat width, nfloat maxHeight); //GAD_EXTERN GADAdSize GADPortraitAnchoredAdaptiveBannerAdSizeWithWidth (CGFloat width); [DllImport ("__Internal", EntryPoint = "GADPortraitAnchoredAdaptiveBannerAdSizeWithWidth")] - public static extern AdSize GetPortraitAnchoredAdaptiveBannerAdSize (CGSize size); + public static extern AdSize GetPortraitAnchoredAdaptiveBannerAdSize (nfloat width); //GAD_EXTERN GADAdSize GADLandscapeAnchoredAdaptiveBannerAdSizeWithWidth (CGFloat width); [DllImport ("__Internal", EntryPoint = "GADLandscapeAnchoredAdaptiveBannerAdSizeWithWidth")] - public static extern AdSize GetLandscapeAnchoredAdaptiveBannerAdSize (CGSize size); + public static extern AdSize GetLandscapeAnchoredAdaptiveBannerAdSize (nfloat width); //GAD_EXTERN GADAdSize GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth (CGFloat width); [DllImport ("__Internal", EntryPoint = "GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth")] - public static extern AdSize GetCurrentOrientationAnchoredAdaptiveBannerAdSize (CGSize size); + public static extern AdSize GetCurrentOrientationAnchoredAdaptiveBannerAdSize (nfloat width); // GADAdSize GADAdSizeFromCGSize(CGSize size); [DllImport ("__Internal", EntryPoint = "GADAdSizeFromCGSize")] @@ -135,8 +123,8 @@ public static AdSize Banner { get { if (banner == null) { IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); - IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "kGADAdSizeBanner"); - banner = (AdSize)Marshal.PtrToStructure (ptr, typeof (AdSize)); + IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "GADAdSizeBanner"); + banner = (AdSize) Marshal.PtrToStructure (ptr, typeof (AdSize)); Dlfcn.dlclose (RTLD_MAIN_ONLY); } @@ -149,8 +137,8 @@ public static AdSize LargeBanner { get { if (largeBanner == null) { IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); - IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "kGADAdSizeLargeBanner"); - largeBanner = (AdSize)Marshal.PtrToStructure (ptr, typeof (AdSize)); + IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "GADAdSizeLargeBanner"); + largeBanner = (AdSize) Marshal.PtrToStructure (ptr, typeof (AdSize)); Dlfcn.dlclose (RTLD_MAIN_ONLY); } @@ -163,8 +151,8 @@ public static AdSize MediumRectangle { get { if (mediumRectangle == null) { IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); - IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "kGADAdSizeMediumRectangle"); - mediumRectangle = (AdSize)Marshal.PtrToStructure (ptr, typeof (AdSize)); + IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "GADAdSizeMediumRectangle"); + mediumRectangle = (AdSize) Marshal.PtrToStructure (ptr, typeof (AdSize)); Dlfcn.dlclose (RTLD_MAIN_ONLY); } @@ -177,8 +165,8 @@ public static AdSize FullBanner { get { if (fullBanner == null) { IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); - IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "kGADAdSizeFullBanner"); - fullBanner = (AdSize)Marshal.PtrToStructure (ptr, typeof (AdSize)); + IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "GADAdSizeFullBanner"); + fullBanner = (AdSize) Marshal.PtrToStructure (ptr, typeof (AdSize)); Dlfcn.dlclose (RTLD_MAIN_ONLY); } @@ -191,8 +179,8 @@ public static AdSize Leaderboard { get { if (leaderboard == null) { IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); - IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "kGADAdSizeLeaderboard"); - leaderboard = (AdSize)Marshal.PtrToStructure (ptr, typeof (AdSize)); + IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "GADAdSizeLeaderboard"); + leaderboard = (AdSize) Marshal.PtrToStructure (ptr, typeof (AdSize)); Dlfcn.dlclose (RTLD_MAIN_ONLY); } @@ -205,8 +193,8 @@ public static AdSize Skyscraper { get { if (skyscraper == null) { IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); - IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "kGADAdSizeSkyscraper"); - skyscraper = (AdSize)Marshal.PtrToStructure (ptr, typeof (AdSize)); + IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "GADAdSizeSkyscraper"); + skyscraper = (AdSize) Marshal.PtrToStructure (ptr, typeof (AdSize)); Dlfcn.dlclose (RTLD_MAIN_ONLY); } @@ -215,12 +203,13 @@ public static AdSize Skyscraper { } static AdSize? smartBannerPortrait; + [Obsolete ("Smart Banner has been deprecated, please use Adaptive Banner. This will be removed in future versions.")] public static AdSize SmartBannerPortrait { get { if (smartBannerPortrait == null) { IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "kGADAdSizeSmartBannerPortrait"); - smartBannerPortrait = (AdSize)Marshal.PtrToStructure (ptr, typeof (AdSize)); + smartBannerPortrait = (AdSize) Marshal.PtrToStructure (ptr, typeof (AdSize)); Dlfcn.dlclose (RTLD_MAIN_ONLY); } @@ -229,12 +218,13 @@ public static AdSize SmartBannerPortrait { } static AdSize? smartBannerLandscape; + [Obsolete ("Smart Banner has been deprecated, please use Adaptive Banner. This will be removed in future versions.")] public static AdSize SmartBannerLandscape { get { if (smartBannerLandscape == null) { IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "kGADAdSizeSmartBannerLandscape"); - smartBannerLandscape = (AdSize)Marshal.PtrToStructure (ptr, typeof (AdSize)); + smartBannerLandscape = (AdSize) Marshal.PtrToStructure (ptr, typeof (AdSize)); Dlfcn.dlclose (RTLD_MAIN_ONLY); } @@ -247,8 +237,8 @@ public static AdSize Fluid { get { if (fluid == null) { IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); - IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "kGADAdSizeFluid"); - fluid = (AdSize)Marshal.PtrToStructure (ptr, typeof (AdSize)); + IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "GADAdSizeFluid"); + fluid = (AdSize) Marshal.PtrToStructure (ptr, typeof (AdSize)); Dlfcn.dlclose (RTLD_MAIN_ONLY); } @@ -261,8 +251,8 @@ public static AdSize Invalid { get { if (invalid == null) { IntPtr RTLD_MAIN_ONLY = Dlfcn.dlopen (null, 0); - IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "kGADAdSizeInvalid"); - invalid = (AdSize)Marshal.PtrToStructure (ptr, typeof (AdSize)); + IntPtr ptr = Dlfcn.dlsym (RTLD_MAIN_ONLY, "GADAdSizeInvalid"); + invalid = (AdSize) Marshal.PtrToStructure (ptr, typeof (AdSize)); Dlfcn.dlclose (RTLD_MAIN_ONLY); } @@ -275,19 +265,10 @@ public static string GetString (AdSize size) return GetNSString (size); } } - - public partial class RewardBasedVideoAd - { - [Obsolete ("Use IsReady property instead, this will be removed in future versions")] - public bool Ready { get { return IsReady; } } - } - } -namespace Google.MobileAds.DoubleClick -{ - public partial class BannerView : Google.MobileAds.BannerView - { +namespace Google.MobileAds.DoubleClick { + public partial class BannerView : Google.MobileAds.BannerView { [Obsolete ("Use ValidAdSizes property.")] public void SetValidAdSizes (params AdSize [] sizes) { diff --git a/source/Google/MobileAds/MobileAds.csproj b/source/Google/MobileAds/MobileAds.csproj index c684cae29..a9d86d922 100644 --- a/source/Google/MobileAds/MobileAds.csproj +++ b/source/Google/MobileAds/MobileAds.csproj @@ -6,7 +6,7 @@ Google.MobileAds Google.MobileAds 1.0.0.0 - 7.66.0 + 8.13.0.0 Resources true true @@ -24,7 +24,7 @@ https://go.microsoft.com/fwlink/?linkid=865562 License.md true - 7.66.0 + 8.13.0.0 @@ -59,7 +59,7 @@ - + diff --git a/source/Google/MobileAds/MobileAds.targets b/source/Google/MobileAds/MobileAds.targets index 274b6145b..f72233497 100644 --- a/source/Google/MobileAds/MobileAds.targets +++ b/source/Google/MobileAds/MobileAds.targets @@ -2,39 +2,27 @@ <_GoogleMobileAdsAssemblyName>Google.MobileAds, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - <_GoogleMobileAdsId>FAdM-7.66.0 - <_GoogleUserMessagingPlatformId>GUsrMess-1.1.0 + <_GoogleMobileAdsId>FAdM-8.13.0 <_GoogleMobileAdsSDKBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleMobileAdsId)\Frameworks\GoogleMobileAdsFramework-Current\ - <_GoogleUserMessagingPlatformSDKBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleUserMessagingPlatformId)\Frameworks\Release\ - https://dl.google.com/dl/cpdc/080245260b12ad1b/Google-Mobile-Ads-SDK-7.66.0.tar.gz + https://dl.google.com/dl/cpdc/7a51a535dad39fe5/Google-Mobile-Ads-SDK-8.13.0.tar.gz Tgz - - - https://dl.google.com/dl/cpdc/624b551688fd020a/GoogleUserMessagingPlatform-1.1.0.tar.gz - Tgz - + - - + + Framework True True -ObjC -lz -lsqlite3 AudioToolbox AVFoundation CFNetwork CoreGraphics CoreMedia CoreTelephony CoreVideo MediaPlayer MessageUI MobileCoreServices QuartzCore Security StoreKit SystemConfiguration AdSupport JavaScriptCore SafariServices WebKit - - - - Framework - True - True - + \ No newline at end of file diff --git a/source/Google/Places/ApiDefinition.cs b/source/Google/Places/ApiDefinition.cs index fac044744..cacfcfd17 100644 --- a/source/Google/Places/ApiDefinition.cs +++ b/source/Google/Places/ApiDefinition.cs @@ -1,4 +1,5 @@ using System; +using System.Runtime.InteropServices; using UIKit; using Foundation; @@ -7,12 +8,10 @@ using CoreLocation; using Google.Maps; -namespace Google.Places -{ +namespace Google.Places { // @interface GMSAddressComponent : NSObject [BaseType (typeof (NSObject), Name = "GMSAddressComponent")] - interface AddressComponent - { + interface AddressComponent { // @property(nonatomic, readonly, copy) NSString *type; [Obsolete ("Type property is deprecated in favor of Types.")] [BindAs (typeof (PlaceType))] @@ -34,16 +33,14 @@ interface AddressComponent string ShortName { get; } } - interface IAutocompleteFetcherDelegate - { + interface IAutocompleteFetcherDelegate { } // @protocol GMSAutocompleteFetcherDelegate [Model (AutoGeneratedName = true)] [Protocol] [BaseType (typeof (NSObject), Name = "GMSAutocompleteFetcherDelegate")] - interface AutocompleteFetcherDelegate - { + interface AutocompleteFetcherDelegate { // - (void)didAutocompleteWithPredictions:(NSArray *)predictions; [Abstract] [Export ("didAutocompleteWithPredictions:")] @@ -57,26 +54,16 @@ interface AutocompleteFetcherDelegate // @interface GMSAutocompleteFetcher : NSObject [BaseType (typeof (NSObject), Name = "GMSAutocompleteFetcher")] - interface AutocompleteFetcher - { - // - (instancetype)initWithBounds:(GMSCoordinateBounds * GMS_NULLABLE_PTR)bounds filter:(GMSAutocompleteFilter * GMS_NULLABLE_PTR)filter; - [Export ("initWithBounds:filter:")] - IntPtr Constructor ([NullAllowed] Google.Maps.CoordinateBounds bounds, [NullAllowed] AutocompleteFilter filter); + interface AutocompleteFetcher { + // - (instancetype)initWithFilter:(nullable GMSAutocompleteFilter *)filter NS_DESIGNATED_INITIALIZER; + [Export ("initWithFilter:")] + IntPtr Constructor ([NullAllowed] AutocompleteFilter filter); // @property(nonatomic, weak) id delegate; [NullAllowed] [Export ("delegate", ArgumentSemantic.Weak)] IAutocompleteFetcherDelegate Delegate { get; set; } - // @property(nonatomic, strong) GMSCoordinateBounds *autocompleteBounds; - [NullAllowed] - [Export ("autocompleteBounds", ArgumentSemantic.Strong)] - Google.Maps.CoordinateBounds AutocompleteBounds { get; set; } - - // @property (assign, nonatomic) GMSAutocompleteBoundsMode autocompleteBoundsMode; - [Export("autocompleteBoundsMode", ArgumentSemantic.Assign)] - AutocompleteBoundsMode AutocompleteBoundsMode { get; set; } - // @property(nonatomic, strong) GMSAutocompleteFilter *autocompleteFilter; [NullAllowed] [Export ("autocompleteFilter", ArgumentSemantic.Strong)] @@ -93,8 +80,7 @@ interface AutocompleteFetcher // @interface GMSAutocompleteFilter : NSObject [BaseType (typeof (NSObject), Name = "GMSAutocompleteFilter")] - interface AutocompleteFilter - { + interface AutocompleteFilter { // @property (assign, nonatomic) GMSPlacesAutocompleteTypeFilter type; [Export ("type", ArgumentSemantic.Assign)] PlacesAutocompleteTypeFilter Type { get; set; } @@ -108,13 +94,22 @@ interface AutocompleteFilter [NullAllowed] [Export ("origin", ArgumentSemantic.Assign)] CLLocation Origin { get; set; } + + // @property (nonatomic) id _Nullable locationBias; + [NullAllowed] + [Export ("locationBias", ArgumentSemantic.Assign)] + NSObject LocationBias { get; set; } + + // @property (nonatomic) id _Nullable locationRestriction; + [NullAllowed] + [Export ("locationRestriction", ArgumentSemantic.Assign)] + NSObject LocationRestriction { get; set; } } // @interface GMSAutocompleteMatchFragment : NSObject [DisableDefaultCtor] [BaseType (typeof (NSObject), Name = "GMSAutocompleteMatchFragment")] - interface AutocompleteMatchFragment - { + interface AutocompleteMatchFragment { // @property (readonly, nonatomic) NSUInteger offset; [Export ("offset")] nuint Offset { get; } @@ -127,8 +122,7 @@ interface AutocompleteMatchFragment // @interface GMSAutocompletePrediction : NSObject [DisableDefaultCtor] [BaseType (typeof (NSObject), Name = "GMSAutocompletePrediction")] - interface AutocompletePrediction - { + interface AutocompletePrediction { // extern NSString *const _Nonnull kGMSAutocompleteMatchAttribute; [Field ("kGMSAutocompleteMatchAttribute", "__Internal")] NSString AutocompleteMatchAttribute { get; } @@ -160,16 +154,14 @@ interface AutocompletePrediction NSNumber DistanceMeters { get; } } - interface IAutocompleteResultsViewControllerDelegate - { + interface IAutocompleteResultsViewControllerDelegate { } // @protocol GMSAutocompleteResultsViewControllerDelegate [Model (AutoGeneratedName = true)] [Protocol] [BaseType (typeof (NSObject), Name = "GMSAutocompleteResultsViewControllerDelegate")] - interface AutocompleteResultsViewControllerDelegate - { + interface AutocompleteResultsViewControllerDelegate { // @required - (void)resultsController:(GMSAutocompleteResultsViewController *)resultsController didAutocompleteWithPlace:(GMSPlace *)place; [Abstract] [EventArgs ("AutocompleteResultsViewControllerAutocompleted")] @@ -208,8 +200,7 @@ interface AutocompleteResultsViewControllerDelegate Name = "GMSAutocompleteResultsViewController", Delegates = new string [] { "Delegate" }, Events = new Type [] { typeof (AutocompleteResultsViewControllerDelegate) })] - interface AutocompleteResultsViewController : IUISearchResultsUpdating - { + interface AutocompleteResultsViewController : IUISearchResultsUpdating { // @property(nonatomic, weak) id delegate; [NullAllowed] [Export ("delegate", ArgumentSemantic.Weak)] @@ -221,7 +212,7 @@ interface AutocompleteResultsViewController : IUISearchResultsUpdating Google.Maps.CoordinateBounds AutocompleteBounds { get; set; } // @property (assign, nonatomic) GMSAutocompleteBoundsMode autocompleteBoundsMode; - [Export("autocompleteBoundsMode", ArgumentSemantic.Assign)] + [Export ("autocompleteBoundsMode", ArgumentSemantic.Assign)] AutocompleteBoundsMode AutocompleteBoundsMode { get; set; } // @property(nonatomic, strong) GMSAutocompleteFilter *autocompleteFilter; @@ -257,10 +248,6 @@ interface AutocompleteResultsViewController : IUISearchResultsUpdating // @property (assign, nonatomic) GMSPlaceField placeFields; [Export ("placeFields", ArgumentSemantic.Assign)] PlaceField PlaceFields { get; set; } - - // -(void)setAutocompleteBoundsUsingNorthEastCorner:(CLLocationCoordinate2D)NorthEastCorner SouthWestCorner:(CLLocationCoordinate2D)SouthWestCorner; - [Export ("setAutocompleteBoundsUsingNorthEastCorner:SouthWestCorner:")] - void SetAutocompleteBoundsUsingNorthEastCorner (CLLocationCoordinate2D NorthEastCorner, CLLocationCoordinate2D SouthWestCorner); } // @interface GMSAutocompleteSessionToken : NSObject @@ -268,15 +255,13 @@ interface AutocompleteResultsViewController : IUISearchResultsUpdating interface AutocompleteSessionToken { } - interface IAutocompleteTableDataSourceDelegate - { + interface IAutocompleteTableDataSourceDelegate { } [Model (AutoGeneratedName = true)] [Protocol] [BaseType (typeof (NSObject), Name = "GMSAutocompleteTableDataSourceDelegate")] - interface AutocompleteTableDataSourceDelegate - { + interface AutocompleteTableDataSourceDelegate { // @required - (void)tableDataSource:(GMSAutocompleteTableDataSource *)tableDataSource didAutocompleteWithPlace:(GMSPlace *)place; [Abstract] [EventArgs ("AutocompleteTableDataSourceAutocompleted")] @@ -315,22 +300,12 @@ interface AutocompleteTableDataSourceDelegate Name = "GMSAutocompleteTableDataSource", Delegates = new string [] { "Delegate" }, Events = new Type [] { typeof (AutocompleteTableDataSourceDelegate) })] - interface AutocompleteTableDataSource : IUITableViewDataSource, IUITableViewDelegate - { + interface AutocompleteTableDataSource : IUITableViewDataSource, IUITableViewDelegate { // @property(nonatomic, weak) IBOutlet id delegate; [NullAllowed] [Export ("delegate", ArgumentSemantic.Weak)] IAutocompleteTableDataSourceDelegate Delegate { get; set; } - // @property(nonatomic, strong) GMSCoordinateBounds *autocompleteBounds; - [NullAllowed] - [Export ("autocompleteBounds", ArgumentSemantic.Strong)] - Google.Maps.CoordinateBounds AutocompleteBounds { get; set; } - - // @property (assign, nonatomic) GMSAutocompleteBoundsMode autocompleteBoundsMode; - [Export("autocompleteBoundsMode", ArgumentSemantic.Assign)] - AutocompleteBoundsMode AutocompleteBoundsMode { get; set; } - // @property(nonatomic, strong) GMSAutocompleteFilter *autocompleteFilter; [NullAllowed] [Export ("autocompleteFilter", ArgumentSemantic.Strong)] @@ -372,21 +347,15 @@ interface AutocompleteTableDataSource : IUITableViewDataSource, IUITableViewDele // -(void)clearResults; [Export ("clearResults")] void ClearResults (); - - // -(void)setAutocompleteBoundsUsingNorthEastCorner:(CLLocationCoordinate2D)NorthEastCorner SouthWestCorner:(CLLocationCoordinate2D)SouthWestCorner; - [Export ("setAutocompleteBoundsUsingNorthEastCorner:SouthWestCorner:")] - void SetAutocompleteBoundsUsingNorthEastCorner (CLLocationCoordinate2D NorthEastCorner, CLLocationCoordinate2D SouthWestCorner); } - interface IAutocompleteViewControllerDelegate - { + interface IAutocompleteViewControllerDelegate { } [Model (AutoGeneratedName = true)] [Protocol] [BaseType (typeof (NSObject), Name = "GMSAutocompleteViewControllerDelegate")] - interface AutocompleteViewControllerDelegate - { + interface AutocompleteViewControllerDelegate { // @required - (void)viewController:(GMSAutocompleteViewController *)viewController didAutocompleteWithPlace:(GMSPlace *)place; [Abstract] [EventArgs ("AutocompleteViewControllerAutocompleted")] @@ -428,25 +397,15 @@ interface AutocompleteViewControllerDelegate // @interface GMSAutocompleteViewController : UIViewController [BaseType (typeof (UIViewController), - Name = "GMSAutocompleteViewController", + Name = "GMSAutocompleteViewController", Delegates = new string [] { "Delegate" }, - Events = new Type [] { typeof (AutocompleteViewControllerDelegate) })] - interface AutocompleteViewController - { + Events = new Type [] { typeof (AutocompleteViewControllerDelegate) })] + interface AutocompleteViewController { // @property(nonatomic, weak) IBOutlet id delegate; [NullAllowed] [Export ("delegate", ArgumentSemantic.Weak)] IAutocompleteViewControllerDelegate Delegate { get; set; } - // @property(nonatomic, strong) GMSCoordinateBounds *autocompleteBounds; - [NullAllowed] - [Export ("autocompleteBounds", ArgumentSemantic.Strong)] - Google.Maps.CoordinateBounds AutocompleteBounds { get; set; } - - // @property (assign, nonatomic) GMSAutocompleteBoundsMode autocompleteBoundsMode; - [Export("autocompleteBoundsMode", ArgumentSemantic.Assign)] - AutocompleteBoundsMode AutocompleteBoundsMode { get; set; } - // @property(nonatomic, strong) GMSAutocompleteFilter *autocompleteFilter; [NullAllowed] [Export ("autocompleteFilter", ArgumentSemantic.Strong)] @@ -480,10 +439,6 @@ interface AutocompleteViewController // @property (assign, nonatomic) GMSPlaceField placeFields; [Export ("placeFields", ArgumentSemantic.Assign)] PlaceField PlaceFields { get; set; } - - // -(void)setAutocompleteBoundsUsingNorthEastCorner:(CLLocationCoordinate2D)NorthEastCorner SouthWestCorner:(CLLocationCoordinate2D)SouthWestCorner; - [Export ("setAutocompleteBoundsUsingNorthEastCorner:SouthWestCorner:")] - void SetAutocompleteBoundsUsingNorthEastCorner (CLLocationCoordinate2D NorthEastCorner, CLLocationCoordinate2D SouthWestCorner); } // @interface GMSTime : NSObject @@ -540,8 +495,7 @@ interface OpeningHours { // @interface GMSPlace : NSObject [DisableDefaultCtor] [BaseType (typeof (NSObject), Name = "GMSPlace")] - interface Place - { + interface Place { // @property (readonly, copy, nonatomic) NSString * name; [Export ("name", ArgumentSemantic.Copy)] string Name { get; } @@ -554,11 +508,6 @@ interface Place [Export ("coordinate", ArgumentSemantic.Assign)] CLLocationCoordinate2D Coordinate { get; } - // @property (readonly, nonatomic) GMSPlacesOpenNowStatus openNowStatus; - [Obsolete ("This property is currently not supported and should not be used.")] - [Export ("openNowStatus", ArgumentSemantic.Assign)] - PlacesOpenNowStatus OpenNowStatus { get; } - // @property (readonly, copy, nonatomic) NSString * phoneNumber; [NullAllowed] [Export ("phoneNumber", ArgumentSemantic.Copy)] @@ -594,8 +543,8 @@ interface Place // @property(nonatomic, strong, readonly) GMSCoordinateBounds *viewport; [NullAllowed] - [Export ("viewport", ArgumentSemantic.Strong)] - Google.Maps.CoordinateBounds Viewport { get; } + [Export ("viewportInfo", ArgumentSemantic.Strong)] + PlaceViewportInfo Viewport { get; } // @property(nonatomic, copy, readonly) GMS_NSArrayOf(GMSAddressComponent *) *GMS_NULLABLE_PTR addressComponents; [NullAllowed] @@ -623,27 +572,55 @@ interface Place // @property (readonly, nonatomic) NSNumber * _Nullable UTCOffsetMinutes; [NullAllowed] - [Export("UTCOffsetMinutes")] + [Export ("UTCOffsetMinutes")] NSNumber UtcOffsetMinutes { get; } // @property(nonatomic, readonly) GMSPlacesBusinessStatus businessStatus; - [Export("businessStatus")] + [Export ("businessStatus")] PlacesBusinessStatus BusinessStatus { get; } // -(GMSPlaceOpenStatus)isOpenAtDate:(NSDate * _Nonnull)date; - [Export("isOpenAtDate:")] + [Export ("isOpenAtDate:")] PlaceOpenStatus IsOpen (NSDate date); // -(GMSPlaceOpenStatus)isOpen; - [Export("isOpen")] + [Export ("isOpen")] PlaceOpenStatus IsOpen (); + + // @property(nonatomic, readonly, nullable) UIColor *iconBackgroundColor; + [Export ("iconBackgroundColor")] + UIColor IconBackgroundColor { get; } + + // @property(nonatomic, readonly, nullable) NSURL *iconImageURL; + [Export ("iconImageURL")] + NSUrl IconImageUrl (); + } + + // @interface GMSPlaceViewportInfo : NSObject + [BaseType (typeof(NSObject), Name = "GMSPlaceViewportInfo")] + interface PlaceViewportInfo + { + // @property (readonly, nonatomic) CLLocationCoordinate2D northEast; + [Export ("northEast")] + CLLocationCoordinate2D NorthEast { get; } + + // @property (readonly, nonatomic) CLLocationCoordinate2D southWest; + [Export ("southWest")] + CLLocationCoordinate2D SouthWest { get; } + + // @property (readonly, getter = isValid, nonatomic) BOOL valid; + [Export ("valid")] + bool Valid { [Bind ("isValid")] get; } + + // -(id)initWithNorthEast:(CLLocationCoordinate2D)northEast southWest:(CLLocationCoordinate2D)southWest; + [Export ("initWithNorthEast:southWest:")] + IntPtr Constructor (CLLocationCoordinate2D northEast, CLLocationCoordinate2D southWest); } // @interface GMSPlaceLikelihood : NSObject [DisableDefaultCtor] [BaseType (typeof (NSObject), Name = "GMSPlaceLikelihood")] - interface PlaceLikelihood : INSCopying - { + interface PlaceLikelihood : INSCopying { // @property (readonly, nonatomic, strong) GMSPlace * place; [Export ("place", ArgumentSemantic.Strong)] Place Place { get; } @@ -660,8 +637,7 @@ interface PlaceLikelihood : INSCopying // @interface GMSPlaceLikelihoodList : NSObject [BaseType (typeof (NSObject), Name = "GMSPlaceLikelihoodList")] - interface PlaceLikelihoodList - { + interface PlaceLikelihoodList { // @property (copy, nonatomic) NSArray * likelihoods; [Export ("likelihoods", ArgumentSemantic.Copy)] PlaceLikelihood [] Likelihoods { get; set; } @@ -675,8 +651,7 @@ interface PlaceLikelihoodList // @interface GMSPlacePhotoMetadata : NSObject [DisableDefaultCtor] [BaseType (typeof (NSObject), Name = "GMSPlacePhotoMetadata")] - interface PlacePhotoMetadata - { + interface PlacePhotoMetadata { // @property(nonatomic, readonly, copy) NSAttributedString* GMS_NULLABLE_PTR attributions; [NullAllowed] [Export ("attributions", ArgumentSemantic.Copy)] @@ -689,8 +664,7 @@ interface PlacePhotoMetadata // @interface GMSPlacePhotoMetadataList : NSObject [BaseType (typeof (NSObject), Name = "GMSPlacePhotoMetadataList")] - interface PlacePhotoMetadataList - { + interface PlacePhotoMetadataList { // @property(nonatomic, readonly, copy) GMS_NSArrayOf(GMSPlacePhotoMetadata *) * results; [Export ("results", ArgumentSemantic.Copy)] PlacePhotoMetadata [] Results { get; } @@ -717,8 +691,7 @@ interface PlacePhotoMetadataList // @interface GMSPlacesClient : NSObject [DisableDefaultCtor] [BaseType (typeof (NSObject), Name = "GMSPlacesClient")] - interface PlacesClient - { + interface PlacesClient { // extern NSString *const _Nonnull kGMSPlacesErrorDomain; [Field ("kGMSPlacesErrorDomain", "__Internal")] NSString PlacesErrorDomain { get; } @@ -745,7 +718,7 @@ interface PlacesClient // +(NSString * _Nonnull)SDKLongVersion; [Static] - [Export("SDKLongVersion")] + [Export ("SDKLongVersion")] string SdkLongVersion { get; } // -(void)lookUpPlaceID:(NSString *)placeID callback:(GMSPlaceResultCallback)callback; @@ -773,16 +746,6 @@ interface PlacesClient [Export ("currentPlaceWithCallback:")] void CurrentPlace (PlaceLikelihoodListHandler callback); - // -(void)autocompleteQuery:(NSString *)query bounds:(GMSCoordinateBounds *)bounds filter:(GMSAutocompleteFilter *)filter callback:(GMSAutocompletePredictionsCallback)callback; - [Async] - [Export ("autocompleteQuery:bounds:filter:callback:")] - void Autocomplete (string query, [NullAllowed] Google.Maps.CoordinateBounds bounds, [NullAllowed] AutocompleteFilter filter, AutocompletePredictionsHandler callback); - - // -(void)autocompleteQuery:(NSString * _Nonnull)query bounds:(GMSCoordinateBounds * _Nullable)bounds boundsMode:(GMSAutocompleteBoundsMode)boundsMode filter:(GMSAutocompleteFilter * _Nullable)filter callback:(GMSAutocompletePredictionsCallback _Nonnull)callback; - [Async] - [Export("autocompleteQuery:bounds:boundsMode:filter:callback:")] - void Autocomplete(string query, [NullAllowed] CoordinateBounds bounds, AutocompleteBoundsMode boundsMode, [NullAllowed] AutocompleteFilter filter, AutocompletePredictionsHandler callback); - // -(void)findAutocompletePredictionsFromQuery:(NSString * _Nonnull)query bounds:(GMSCoordinateBounds * _Nullable)bounds boundsMode:(GMSAutocompleteBoundsMode)boundsMode filter:(GMSAutocompleteFilter * _Nullable)filter sessionToken:(GMSAutocompleteSessionToken * _Nonnull)sessionToken callback:(GMSAutocompletePredictionsCallback _Nonnull)callback; [Export ("findAutocompletePredictionsFromQuery:bounds:boundsMode:filter:sessionToken:callback:")] void FindAutocompletePredictions (string query, [NullAllowed] CoordinateBounds bounds, AutocompleteBoundsMode boundsMode, [NullAllowed] AutocompleteFilter filter, [NullAllowed] AutocompleteSessionToken sessionToken, AutocompletePredictionsHandler callback); diff --git a/source/Google/Places/Enums.cs b/source/Google/Places/Enums.cs index 01a02079c..38a79c86d 100644 --- a/source/Google/Places/Enums.cs +++ b/source/Google/Places/Enums.cs @@ -38,14 +38,6 @@ public enum DayOfWeek : ulong { Saturday = 7 } - [Obsolete ("This enum is currently not supported and should not be used. Use PlaceOpenStatus enum instead.")] - [Native] - public enum PlacesOpenNowStatus : long { - Yes, - No, - Unknown - } - [Native] public enum PlacesPriceLevel : long { Unknown = -1, @@ -93,6 +85,8 @@ public enum PlaceField : ulong { UserRatingsTotal = 1 << 14, UtcOffsetMinutes = 1 << 15, BusinessStatus = 1 << 16, + IconImageUrl = 1 << 17, + IconBackgroundColor = 1 << 18, All = ulong.MaxValue } @@ -117,26 +111,6 @@ public enum PlaceType { [Field ("kGMSPlaceTypeAccounting", "__Internal")] Accounting, - // extern NSString *const kGMSPlaceTypeAdministrativeAreaLevel1; - [Field ("kGMSPlaceTypeAdministrativeAreaLevel1", "__Internal")] - AdministrativeAreaLevel1, - - // extern NSString *const kGMSPlaceTypeAdministrativeAreaLevel2; - [Field ("kGMSPlaceTypeAdministrativeAreaLevel2", "__Internal")] - AdministrativeAreaLevel2, - - // extern NSString *const kGMSPlaceTypeAdministrativeAreaLevel3; - [Field ("kGMSPlaceTypeAdministrativeAreaLevel3", "__Internal")] - AdministrativeAreaLevel3, - - // extern NSString *const kGMSPlaceTypeAdministrativeAreaLevel4; - [Field ("kGMSPlaceTypeAdministrativeAreaLevel4", "__Internal")] - AdministrativeAreaLevel4, - - // extern NSString *const kGMSPlaceTypeAdministrativeAreaLevel5; - [Field ("kGMSPlaceTypeAdministrativeAreaLevel5", "__Internal")] - AdministrativeAreaLevel5, - // extern NSString *const kGMSPlaceTypeAirport; [Field ("kGMSPlaceTypeAirport", "__Internal")] Airport, @@ -233,18 +207,10 @@ public enum PlaceType { [Field ("kGMSPlaceTypeClothingStore", "__Internal")] ClothingStore, - // extern NSString *const kGMSPlaceTypeColloquialArea; - [Field ("kGMSPlaceTypeColloquialArea", "__Internal")] - ColloquialArea, - // extern NSString *const kGMSPlaceTypeConvenienceStore; [Field ("kGMSPlaceTypeConvenienceStore", "__Internal")] ConvenienceStore, - // extern NSString *const kGMSPlaceTypeCountry; - [Field ("kGMSPlaceTypeCountry", "__Internal")] - Country, - // extern NSString *const kGMSPlaceTypeCourthouse; [Field ("kGMSPlaceTypeCourthouse", "__Internal")] Courthouse, @@ -261,6 +227,10 @@ public enum PlaceType { [Field ("kGMSPlaceTypeDoctor", "__Internal")] Doctor, + // extern NSString *const kGMSPlaceTypeDrugstore; + [Field ("kGMSPlaceTypeDrugstore", "__Internal")] + Drugstore, + // extern NSString *const kGMSPlaceTypeElectrician; [Field ("kGMSPlaceTypeElectrician", "__Internal")] Electrician, @@ -273,30 +243,14 @@ public enum PlaceType { [Field ("kGMSPlaceTypeEmbassy", "__Internal")] Embassy, - // extern NSString *const kGMSPlaceTypeEstablishment; - [Field ("kGMSPlaceTypeEstablishment", "__Internal")] - Establishment, - - // extern NSString *const kGMSPlaceTypeFinance; - [Field ("kGMSPlaceTypeFinance", "__Internal")] - Finance, - // extern NSString *const kGMSPlaceTypeFireStation; [Field ("kGMSPlaceTypeFireStation", "__Internal")] FireStation, - // extern NSString *const kGMSPlaceTypeFloor; - [Field ("kGMSPlaceTypeFloor", "__Internal")] - Floor, - // extern NSString *const kGMSPlaceTypeFlorist; [Field ("kGMSPlaceTypeFlorist", "__Internal")] Florist, - // extern NSString *const kGMSPlaceTypeFood; - [Field ("kGMSPlaceTypeFood", "__Internal")] - Food, - // extern NSString *const kGMSPlaceTypeFuneralHome; [Field ("kGMSPlaceTypeFuneralHome", "__Internal")] FuneralHome, @@ -309,14 +263,6 @@ public enum PlaceType { [Field ("kGMSPlaceTypeGasStation", "__Internal")] GasStation, - // extern NSString *const kGMSPlaceTypeGeneralContractor; - [Field ("kGMSPlaceTypeGeneralContractor", "__Internal")] - GeneralContractor, - - // extern NSString *const kGMSPlaceTypeGeocode; - [Field ("kGMSPlaceTypeGeocode", "__Internal")] - Geocode, - // extern NSString *const kGMSPlaceTypeGroceryOrSupermarket; [Field ("kGMSPlaceTypeGroceryOrSupermarket", "__Internal")] GroceryOrSupermarket, @@ -333,10 +279,6 @@ public enum PlaceType { [Field ("kGMSPlaceTypeHardwareStore", "__Internal")] HardwareStore, - // extern NSString *const kGMSPlaceTypeHealth; - [Field ("kGMSPlaceTypeHealth", "__Internal")] - Health, - // extern NSString *const kGMSPlaceTypeHinduTemple; [Field ("kGMSPlaceTypeHinduTemple", "__Internal")] HinduTemple, @@ -353,10 +295,6 @@ public enum PlaceType { [Field ("kGMSPlaceTypeInsuranceAgency", "__Internal")] InsuranceAgency, - // extern NSString *const kGMSPlaceTypeIntersection; - [Field ("kGMSPlaceTypeIntersection", "__Internal")] - Intersection, - // extern NSString *const kGMSPlaceTypeJewelryStore; [Field ("kGMSPlaceTypeJewelryStore", "__Internal")] JewelryStore, @@ -373,6 +311,10 @@ public enum PlaceType { [Field ("kGMSPlaceTypeLibrary", "__Internal")] Library, + // extern NSString *const kGMSPlaceTypeLightRailStation; + [Field ("kGMSPlaceTypeLightRailStation", "__Internal")] + LightRailStation, + // extern NSString *const kGMSPlaceTypeLiquorStore; [Field ("kGMSPlaceTypeLiquorStore", "__Internal")] LiquorStore, @@ -381,10 +323,6 @@ public enum PlaceType { [Field ("kGMSPlaceTypeLocalGovernmentOffice", "__Internal")] LocalGovernmentOffice, - // extern NSString *const kGMSPlaceTypeLocality; - [Field ("kGMSPlaceTypeLocality", "__Internal")] - Locality, - // extern NSString *const kGMSPlaceTypeLocksmith; [Field ("kGMSPlaceTypeLocksmith", "__Internal")] Locksmith, @@ -421,14 +359,6 @@ public enum PlaceType { [Field ("kGMSPlaceTypeMuseum", "__Internal")] Museum, - // extern NSString *const kGMSPlaceTypeNaturalFeature; - [Field ("kGMSPlaceTypeNaturalFeature", "__Internal")] - NaturalFeature, - - // extern NSString *const kGMSPlaceTypeNeighborhood; - [Field ("kGMSPlaceTypeNeighborhood", "__Internal")] - Neighborhood, - // extern NSString *const kGMSPlaceTypeNightClub; [Field ("kGMSPlaceTypeNightClub", "__Internal")] NightClub, @@ -457,54 +387,22 @@ public enum PlaceType { [Field ("kGMSPlaceTypePhysiotherapist", "__Internal")] Physiotherapist, - // extern NSString *const kGMSPlaceTypePlaceOfWorship; - [Field ("kGMSPlaceTypePlaceOfWorship", "__Internal")] - PlaceOfWorship, - // extern NSString *const kGMSPlaceTypePlumber; [Field ("kGMSPlaceTypePlumber", "__Internal")] Plumber, - // extern NSString *const kGMSPlaceTypePointOfInterest; - [Field ("kGMSPlaceTypePointOfInterest", "__Internal")] - PointOfInterest, + // extern NSString *const kGMSPlaceTypePrimarySchool; + [Field ("kGMSPlaceTypePrimarySchool", "__Internal")] + PrimarySchool, // extern NSString *const kGMSPlaceTypePolice; [Field ("kGMSPlaceTypePolice", "__Internal")] Police, - // extern NSString *const kGMSPlaceTypePolitical; - [Field ("kGMSPlaceTypePolitical", "__Internal")] - Political, - - // extern NSString *const kGMSPlaceTypePostBox; - [Field ("kGMSPlaceTypePostBox", "__Internal")] - PostBox, - // extern NSString *const kGMSPlaceTypePostOffice; [Field ("kGMSPlaceTypePostOffice", "__Internal")] PostOffice, - // extern NSString *const kGMSPlaceTypePostalCode; - [Field ("kGMSPlaceTypePostalCode", "__Internal")] - PostalCode, - - // extern NSString *const kGMSPlaceTypePostalCodePrefix; - [Field ("kGMSPlaceTypePostalCodePrefix", "__Internal")] - PostalCodePrefix, - - // extern NSString *const kGMSPlaceTypePostalCodeSuffix; - [Field ("kGMSPlaceTypePostalCodeSuffix", "__Internal")] - PostalCodeSuffix, - - // extern NSString *const kGMSPlaceTypePostalTown; - [Field ("kGMSPlaceTypePostalTown", "__Internal")] - PostalTown, - - // extern NSString *const kGMSPlaceTypePremise; - [Field ("kGMSPlaceTypePremise", "__Internal")] - Premise, - // extern NSString *const kGMSPlaceTypeRealEstateAgency; [Field ("kGMSPlaceTypeRealEstateAgency", "__Internal")] RealEstateAgency, @@ -517,14 +415,6 @@ public enum PlaceType { [Field ("kGMSPlaceTypeRoofingContractor", "__Internal")] RoofingContractor, - // extern NSString *const kGMSPlaceTypeRoom; - [Field ("kGMSPlaceTypeRoom", "__Internal")] - Room, - - // extern NSString *const kGMSPlaceTypeRoute; - [Field ("kGMSPlaceTypeRoute", "__Internal")] - Route, - // extern NSString *const kGMSPlaceTypeRvPark; [Field ("kGMSPlaceTypeRvPark", "__Internal")] RvPark, @@ -533,6 +423,10 @@ public enum PlaceType { [Field ("kGMSPlaceTypeSchool", "__Internal")] School, + // extern NSString *const kGMSPlaceTypeSecondarySchool; + [Field ("kGMSPlaceTypeSecondarySchool", "__Internal")] + SecondarySchool, + // extern NSString *const kGMSPlaceTypeShoeStore; [Field ("kGMSPlaceTypeShoeStore", "__Internal")] ShoeStore, @@ -557,6 +451,166 @@ public enum PlaceType { [Field ("kGMSPlaceTypeStore", "__Internal")] Store, + // extern NSString *const kGMSPlaceTypeSubwayStation; + [Field ("kGMSPlaceTypeSubwayStation", "__Internal")] + SubwayStation, + + // extern NSString *const kGMSPlaceTypeSupermarket; + [Field ("kGMSPlaceTypeSupermarket", "__Internal")] + Supermarket, + + // extern NSString *const kGMSPlaceTypeSynagogue; + [Field ("kGMSPlaceTypeSynagogue", "__Internal")] + Synagogue, + + // extern NSString *const kGMSPlaceTypeTaxiStand; + [Field ("kGMSPlaceTypeTaxiStand", "__Internal")] + TaxiStand, + + // extern NSString *const kGMSPlaceTypeTrainStation; + [Field ("kGMSPlaceTypeTrainStation", "__Internal")] + TrainStation, + + // extern NSString *const kGMSPlaceTypeTravelAgency; + [Field ("kGMSPlaceTypeTravelAgency", "__Internal")] + TravelAgency, + + // extern NSString *const kGMSPlaceTypeTransitStation; + [Field ("kGMSPlaceTypeTransitStation", "__Internal")] + TransitStation, + + // extern NSString *const kGMSPlaceTypeTouristAttraction; + [Field ("kGMSPlaceTypeTouristAttraction", "__Internal")] + TouristAttraction, + + // extern NSString *const kGMSPlaceTypeUniversity; + [Field ("kGMSPlaceTypeUniversity", "__Internal")] + University, + + // extern NSString *const kGMSPlaceTypeVeterinaryCare; + [Field ("kGMSPlaceTypeVeterinaryCare", "__Internal")] + VeterinaryCare, + + // extern NSString *const kGMSPlaceTypeZoo; + [Field ("kGMSPlaceTypeZoo", "__Internal")] + Zoo, + + // extern NSString *const kGMSPlaceTypeAdministrativeAreaLevel1; + [Field ("kGMSPlaceTypeAdministrativeAreaLevel1", "__Internal")] + AdministrativeAreaLevel1, + + // extern NSString *const kGMSPlaceTypeAdministrativeAreaLevel2; + [Field ("kGMSPlaceTypeAdministrativeAreaLevel2", "__Internal")] + AdministrativeAreaLevel2, + + // extern NSString *const kGMSPlaceTypeAdministrativeAreaLevel3; + [Field ("kGMSPlaceTypeAdministrativeAreaLevel3", "__Internal")] + AdministrativeAreaLevel3, + + // extern NSString *const kGMSPlaceTypeAdministrativeAreaLevel4; + [Field ("kGMSPlaceTypeAdministrativeAreaLevel4", "__Internal")] + AdministrativeAreaLevel4, + + // extern NSString *const kGMSPlaceTypeAdministrativeAreaLevel5; + [Field ("kGMSPlaceTypeAdministrativeAreaLevel5", "__Internal")] + AdministrativeAreaLevel5, + + // extern NSString *const kGMSPlaceTypeColloquialArea; + [Field ("kGMSPlaceTypeColloquialArea", "__Internal")] + ColloquialArea, + + // extern NSString *const kGMSPlaceTypeCountry; + [Field ("kGMSPlaceTypeCountry", "__Internal")] + Country, + + // extern NSString *const kGMSPlaceTypeEstablishment; + [Field ("kGMSPlaceTypeEstablishment", "__Internal")] + Establishment, + + // extern NSString *const kGMSPlaceTypeFinance; + [Field ("kGMSPlaceTypeFinance", "__Internal")] + Finance, + + // extern NSString *const kGMSPlaceTypeFloor; + [Field ("kGMSPlaceTypeFloor", "__Internal")] + Floor, + + // extern NSString *const kGMSPlaceTypeFood; + [Field ("kGMSPlaceTypeFood", "__Internal")] + Food, + + // extern NSString *const kGMSPlaceTypeGeneralContractor; + [Field ("kGMSPlaceTypeGeneralContractor", "__Internal")] + GeneralContractor, + + // extern NSString *const kGMSPlaceTypeGeocode; + [Field ("kGMSPlaceTypeGeocode", "__Internal")] + Geocode, + + // extern NSString *const kGMSPlaceTypeHealth; + [Field ("kGMSPlaceTypeHealth", "__Internal")] + Health, + + // extern NSString *const kGMSPlaceTypeIntersection; + [Field ("kGMSPlaceTypeIntersection", "__Internal")] + Intersection, + + // extern NSString *const kGMSPlaceTypeLocality; + [Field ("kGMSPlaceTypeLocality", "__Internal")] + Locality, + + // extern NSString *const kGMSPlaceTypeNaturalFeature; + [Field ("kGMSPlaceTypeNaturalFeature", "__Internal")] + NaturalFeature, + + // extern NSString *const kGMSPlaceTypeNeighborhood; + [Field ("kGMSPlaceTypeNeighborhood", "__Internal")] + Neighborhood, + + // extern NSString *const kGMSPlaceTypePlaceOfWorship; + [Field ("kGMSPlaceTypePlaceOfWorship", "__Internal")] + PlaceOfWorship, + + // extern NSString *const kGMSPlaceTypePointOfInterest; + [Field ("kGMSPlaceTypePointOfInterest", "__Internal")] + PointOfInterest, + + // extern NSString *const kGMSPlaceTypePolitical; + [Field ("kGMSPlaceTypePolitical", "__Internal")] + Political, + + // extern NSString *const kGMSPlaceTypePostBox; + [Field ("kGMSPlaceTypePostBox", "__Internal")] + PostBox, + + // extern NSString *const kGMSPlaceTypePostalCode; + [Field ("kGMSPlaceTypePostalCode", "__Internal")] + PostalCode, + + // extern NSString *const kGMSPlaceTypePostalCodePrefix; + [Field ("kGMSPlaceTypePostalCodePrefix", "__Internal")] + PostalCodePrefix, + + // extern NSString *const kGMSPlaceTypePostalCodeSuffix; + [Field ("kGMSPlaceTypePostalCodeSuffix", "__Internal")] + PostalCodeSuffix, + + // extern NSString *const kGMSPlaceTypePostalTown; + [Field ("kGMSPlaceTypePostalTown", "__Internal")] + PostalTown, + + // extern NSString *const kGMSPlaceTypePremise; + [Field ("kGMSPlaceTypePremise", "__Internal")] + Premise, + + // extern NSString *const kGMSPlaceTypeRoom; + [Field ("kGMSPlaceTypeRoom", "__Internal")] + Room, + + // extern NSString *const kGMSPlaceTypeRoute; + [Field ("kGMSPlaceTypeRoute", "__Internal")] + Route, + // extern NSString *const kGMSPlaceTypeStreetAddress; [Field ("kGMSPlaceTypeStreetAddress", "__Internal")] StreetAddress, @@ -593,40 +647,12 @@ public enum PlaceType { [Field ("kGMSPlaceTypeSubpremise", "__Internal")] Subpremise, - // extern NSString *const kGMSPlaceTypeSubwayStation; - [Field ("kGMSPlaceTypeSubwayStation", "__Internal")] - SubwayStation, - - // extern NSString *const kGMSPlaceTypeSynagogue; - [Field ("kGMSPlaceTypeSynagogue", "__Internal")] - Synagogue, - - // extern NSString *const kGMSPlaceTypeTaxiStand; - [Field ("kGMSPlaceTypeTaxiStand", "__Internal")] - TaxiStand, - - // extern NSString *const kGMSPlaceTypeTrainStation; - [Field ("kGMSPlaceTypeTrainStation", "__Internal")] - TrainStation, - - // extern NSString *const kGMSPlaceTypeTransitStation; - [Field ("kGMSPlaceTypeTransitStation", "__Internal")] - TransitStation, - - // extern NSString *const kGMSPlaceTypeTravelAgency; - [Field ("kGMSPlaceTypeTravelAgency", "__Internal")] - TravelAgency, + // extern NSString *const kGMSPlaceTypeTownSquare; + [Field ("kGMSPlaceTypeTownSquare", "__Internal")] + TownSquare, - // extern NSString *const kGMSPlaceTypeUniversity; - [Field ("kGMSPlaceTypeUniversity", "__Internal")] - University, - - // extern NSString *const kGMSPlaceTypeVeterinaryCare; - [Field ("kGMSPlaceTypeVeterinaryCare", "__Internal")] - VeterinaryCare, - - // extern NSString *const kGMSPlaceTypeZoo; - [Field ("kGMSPlaceTypeZoo", "__Internal")] - Zoo + // extern NSString *const _Nonnull kGMSPlacesErrorDomain; + [Field ("kGMSPlacesErrorDomain", "__Internal")] + ErrorDomain, } } diff --git a/source/Google/Places/Extension.cs b/source/Google/Places/Extension.cs new file mode 100644 index 000000000..ab0760d7a --- /dev/null +++ b/source/Google/Places/Extension.cs @@ -0,0 +1,14 @@ +using System; +using System.Runtime.InteropServices; +using CoreLocation; +using Foundation; + +namespace Google.Places { + public partial class AutocompleteFilter { + // extern id _Nonnull GMSPlaceRectangularLocationOption (CLLocationCoordinate2D northEastBounds, CLLocationCoordinate2D southWestBounds); + [DllImport ("__Internal", EntryPoint = "GMSPlaceRectangularLocationOption")] + internal extern static NSObject _PlaceRectangularLocationOption (CLLocationCoordinate2D northEastBounds, CLLocationCoordinate2D southWestBounds); + public static NSObject PlaceRectangularLocationOption (CLLocationCoordinate2D northEastBounds, CLLocationCoordinate2D southWestBounds) + => _PlaceRectangularLocationOption (northEastBounds, southWestBounds); + } +} diff --git a/source/Google/Places/Places.csproj b/source/Google/Places/Places.csproj index ff351d18b..2b0f3af63 100644 --- a/source/Google/Places/Places.csproj +++ b/source/Google/Places/Places.csproj @@ -6,7 +6,7 @@ Google.Places Google.Places 1.0.0.0 - 3.9.0.0 + 6.0.0.0 Resources true true @@ -24,7 +24,7 @@ https://go.microsoft.com/fwlink/?linkid=865542 License.md true - 3.9.0.0 + 6.0.0.0 @@ -53,7 +53,7 @@ - + diff --git a/source/Google/Places/Places.targets b/source/Google/Places/Places.targets index 1e75498de..99c322dc4 100644 --- a/source/Google/Places/Places.targets +++ b/source/Google/Places/Places.targets @@ -3,77 +3,62 @@ <_GooglePlacesAssemblyName>Google.Places, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - <_GooglePlacesItemsFolder>GPlcs-3.9.0 + <_GooglePlacesItemsFolder>GPlcs-6.0.0 <_GooglePlacesSDKBaseFolder>$(XamarinBuildDownloadDir)$(_GooglePlacesItemsFolder)\Frameworks\ - https://dl.google.com/dl/cpdc/73fa5891ae45f00f/GooglePlaces-3.9.0.tar.gz + https://dl.google.com/dl/cpdc/089426be8b64e33f/GooglePlaces-6.0.0.tar.gz Tgz Framework True True + CoreGraphics CoreLocation QuartzCore UIKit -ObjC - + - - GooglePlaces.bundle\Info.plist - - - GooglePlaces.bundle\oss_licenses_places.txt.gz - - - GooglePlaces.bundle\build-with-google-black.png + + GooglePlaces.bundle\build-with-google-black@2x.png False - - GooglePlaces.bundle\build-with-google-black%402x.png + + GooglePlaces.bundle\build-with-google-black@3x.png False - - GooglePlaces.bundle\build-with-google-black%403x.png + + GooglePlaces.bundle\build-with-google-white@2x.png False - - GooglePlaces.bundle\build-with-google-white.png + + GooglePlaces.bundle\build-with-google-white@3x.png False - - GooglePlaces.bundle\build-with-google-white%402x.png - False - - - GooglePlaces.bundle\build-with-google-white%403x.png - False - - - GooglePlaces.bundle\sad_cloud.png - False + + GooglePlaces.bundle\Info.plist - - GooglePlaces.bundle\sad_cloud%402x.png - False + + GooglePlaces.bundle\oss_licenses_places.txt.gz - - GooglePlaces.bundle\sad_cloud%403x.png + + GooglePlaces.bundle\sad_cloud@2x.png False - - GooglePlaces.bundle\sad_cloud_dark.png + + GooglePlaces.bundle\sad_cloud@3x.png False - - GooglePlaces.bundle\sad_cloud_dark%402x.png + + GooglePlaces.bundle\sad_cloud_dark@2x.png False - - GooglePlaces.bundle\sad_cloud_dark%403x.png + + GooglePlaces.bundle\sad_cloud_dark@3x.png False @@ -145,6 +130,9 @@ GooglePlaces.bundle\ja.lproj\GooglePlaces.strings + + GooglePlaces.bundle\ka.lproj\GooglePlaces.strings + GooglePlaces.bundle\ko.lproj\GooglePlaces.strings @@ -157,6 +145,9 @@ GooglePlaces.bundle\ms.lproj\GooglePlaces.strings + + GooglePlaces.bundle\my.lproj\GooglePlaces.strings + GooglePlaces.bundle\nb.lproj\GooglePlaces.strings @@ -184,9 +175,18 @@ GooglePlaces.bundle\sk.lproj\GooglePlaces.strings + + GooglePlaces.bundle\sq.lproj\GooglePlaces.strings + + + GooglePlaces.bundle\sr.lproj\GooglePlaces.strings + GooglePlaces.bundle\sv.lproj\GooglePlaces.strings + + GooglePlaces.bundle\sw.lproj\GooglePlaces.strings + GooglePlaces.bundle\th.lproj\GooglePlaces.strings diff --git a/source/Google/SignIn/ApiDefinition.cs b/source/Google/SignIn/ApiDefinition.cs index 311662134..e6993893f 100644 --- a/source/Google/SignIn/ApiDefinition.cs +++ b/source/Google/SignIn/ApiDefinition.cs @@ -62,10 +62,6 @@ interface GoogleUser : INSSecureCoding [Export ("userID")] string UserId { get; } - [Obsolete ("Use the UserId property instead. This will be removed in future versions.")] - [Wrap ("UserId")] - string UserID { get; } - // @property (readonly, nonatomic) GIDProfileData * profile; [Export ("profile")] ProfileData Profile { get; } @@ -170,10 +166,6 @@ interface SignIn [Export ("clientID")] string ClientId { get; set; } - [Obsolete ("Use the ClientId property instead. This will be removed in future versions.")] - [Wrap ("ClientId")] - string ClientID { get; set; } - // @property (copy, nonatomic) NSArray * scopes; [Export ("scopes", ArgumentSemantic.Copy)] string [] Scopes { get; set; } @@ -194,18 +186,10 @@ interface SignIn [Export ("serverClientID")] string ServerClientId { get; set; } - [Obsolete ("Use the ServerClientId property instead. This will be removed in future versions.")] - [Wrap ("ServerClientId")] - string ServerClientID { get; set; } - // @property (copy, nonatomic) NSString * openIDRealm; [Export ("openIDRealm")] string OpenIdRealm { get; set; } - [Obsolete ("Use the OpenIdRealm property instead. This will be removed in future versions.")] - [Wrap ("OpenIdRealm")] - string OpenIDRealm { get; set; } - // @property(nonatomic, copy) NSString *hostedDomain; [Export ("hostedDomain")] string HostedDomain { get; set; } @@ -219,26 +203,14 @@ interface SignIn [Export ("handleURL:")] bool HandleUrl (NSUrl url); - [Obsolete ("Use the HandleUrl (NSUrl) overload method instead. This will be removed in future versions.")] - [Wrap ("HandleUrl (url)")] - bool HandleUrl (NSUrl url, string sourceApplication, [NullAllowed] NSObject annotation); - // -(BOOL)hasPreviousSignIn; [Export ("hasPreviousSignIn")] bool HasPreviousSignIn { get; } - [Obsolete ("Use the HasPreviousSignIn property instead. This will be removed in future versions.")] - [Wrap ("HasPreviousSignIn")] - bool HasAuthInKeychain { get; } - // -(void)restorePreviousSignIn; [Export ("restorePreviousSignIn")] void RestorePreviousSignIn (); - [Obsolete ("Use the RestorePreviousSignIn method instead. This will be removed in future versions.")] - [Wrap ("RestorePreviousSignIn ()")] - void SignInUserSilently (); - // -(void)signIn; [Export ("signIn")] void SignInUser (); diff --git a/source/Google/SignIn/SignIn.csproj b/source/Google/SignIn/SignIn.csproj index 8cbd5b057..5bf307487 100644 --- a/source/Google/SignIn/SignIn.csproj +++ b/source/Google/SignIn/SignIn.csproj @@ -6,7 +6,7 @@ Google.SignIn Google.SignIn 1.0.0.0 - 5.0.2.1 + 5.0.2.2 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=865554 License.md true - 5.0.2.1 + 5.0.2.2 @@ -81,7 +81,7 @@ - + diff --git a/source/Google/TagManager/Loader.cs b/source/Google/TagManager/Loader.cs index 038e6ada3..4563222a2 100644 --- a/source/Google/TagManager/Loader.cs +++ b/source/Google/TagManager/Loader.cs @@ -6,8 +6,8 @@ public class Loader { static Loader () { - Firebase.InstanceID.Loader.ForceLoad (); Firebase.Core.Loader.ForceLoad (); + Firebase.Installations.Loader.ForceLoad (); Firebase.Analytics.Loader.ForceLoad (); Google.Analytics.Loader.ForceLoad (); } diff --git a/source/Google/TagManager/TagManager.csproj b/source/Google/TagManager/TagManager.csproj index 2d85c9e6a..2bea5d85a 100644 --- a/source/Google/TagManager/TagManager.csproj +++ b/source/Google/TagManager/TagManager.csproj @@ -6,7 +6,7 @@ Google.TagManager Google.TagManager 1.0.0.0 - 7.1.2.3 + 7.4.0.0 Resources true @@ -23,7 +23,7 @@ https://go.microsoft.com/fwlink/?linkid=865539 License.md true - 7.1.2.3 + 7.4.0.0 @@ -55,13 +55,12 @@ - + - diff --git a/source/Google/TagManager/TagManager.targets b/source/Google/TagManager/TagManager.targets index 39a87dacc..749a52877 100644 --- a/source/Google/TagManager/TagManager.targets +++ b/source/Google/TagManager/TagManager.targets @@ -1,58 +1,33 @@ - + - <_GoogleTagManagerAssemblyName>Google.TagManager, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - <_GoogleTagManagerItemsFolder>GTagM-7.1.2 + <_GoogleTagManagerItemsFolder>GTagM-7.4.0 <_GoogleTagManagerSDKBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleTagManagerItemsFolder)\ - <_GoogleUtilitiesLegacyItemsFolder>GUtltsL-1.3.2 - <_GoogleUtilitiesLegacySDKBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleUtilitiesLegacyItemsFolder)\Frameworks\frameworks\ - <_GoogleSymbolUtilitiesItemsFolder>GSymblU-1.1.2 - <_GoogleSymbolUtilitiesSDKBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleSymbolUtilitiesItemsFolder)\Frameworks\frameworks\ + <_GoogleTagManageFrameworksBaseFolder>$(_GoogleTagManagerSDKBaseFolder)GoogleTagManager-7.4.0\Frameworks\ - - https://dl.google.com/dl/cpdc/e0b99b8644b80573/GoogleTagManager-7.1.2.tar.gz + https://dl.google.com/firebase/ios/tagmanager/405c0e6ab8f653b7/GoogleTagManager-7.4.0.tar.gz Tgz - + Framework True True -ObjC -lsqlite3 -lz AdSupport CoreTelephony JavaScriptCore SystemConfiguration UIKit - - - https://dl.google.com/dl/cpdc/0042fdcb3a71fe81/GoogleUtilitiesLegacy-1.3.2.tar.gz - Tgz - - - Framework - True - True - -ObjC -lz - AddressBook CoreGraphics - - - - https://dl.google.com/dl/cpdc/7ecdffda6fbef4af/GoogleSymbolUtilities-1.1.2.tar.gz - Tgz - - - Framework - True - True - -ObjC - - + + TagManagerResources.bundle\Info.plist + + TagManagerResources.bundle\TAGRuntime.js.dat - + \ No newline at end of file diff --git a/source/Google/UserMessagingPlatform/ApiDefinition.cs b/source/Google/UserMessagingPlatform/ApiDefinition.cs new file mode 100644 index 000000000..de54fb3d3 --- /dev/null +++ b/source/Google/UserMessagingPlatform/ApiDefinition.cs @@ -0,0 +1,99 @@ +using System; +using System.Collections.Generic; + +using CoreGraphics; +using Foundation; +using ObjCRuntime; +using StoreKit; +using UIKit; + +namespace Google.UserMessagingPlatform +{ + // typedef void (^UMPConsentFormLoadCompletionHandler)(UMPConsentForm * _Nullable, NSError * _Nullable); + delegate void ConsentFormLoadCompletionHandler([NullAllowed] ConsentForm consentForm, [NullAllowed] NSError error); + + // typedef void (^UMPConsentFormPresentCompletionHandler)(NSError * _Nullable); + delegate void ConsentFormPresentCompletionHandler([NullAllowed] NSError error); + + // typedef void (^UMPConsentInformationUpdateCompletionHandler)(NSError * _Nullable); + delegate void ConsentInformationUpdateCompletionHandler([NullAllowed] NSError error); + + // @interface UMPConsentForm + [DisableDefaultCtor] + [BaseType(typeof(NSObject), Name = "UMPConsentForm")] + interface ConsentForm + { + // +(void)loadWithCompletionHandler:(UMPConsentFormLoadCompletionHandler _Nonnull)completionHandler; + [Static] + [Export ("loadWithCompletionHandler:")] + void LoadWithCompletionHandler (ConsentFormLoadCompletionHandler completionHandler); + + // -(void)presentFromViewController:(id)viewController completionHandler:(UMPConsentFormPresentCompletionHandler _Nullable)completionHandler; + [Export ("presentFromViewController:completionHandler:")] + void PresentFromViewController (NSObject viewController, [NullAllowed] ConsentFormPresentCompletionHandler completionHandler); + } + + // @interface UMPConsentInformation : NSObject + [BaseType (typeof(NSObject), Name = "UMPConsentInformation")] + interface ConsentInformation + { + // @property (readonly, nonatomic, class) UMPConsentInformation * _Nonnull sharedInstance; + [Static] + [Export ("sharedInstance")] + ConsentInformation SharedInstance { get; } + + // extern NSString *const _Nonnull UMPVersionString; + [Field ("UMPVersionString", "__Internal")] + NSString UMPVersionString { get; } + + // extern NSErrorDomain _Nonnull const UMPErrorDomain; + [Field ("UMPErrorDomain", "__Internal")] + NSString UMPErrorDomain { get; } + + // @property (readonly, nonatomic) UMPConsentStatus consentStatus; + [Export ("consentStatus")] + ConsentStatus ConsentStatus { get; } + + // @property (readonly, nonatomic) UMPConsentType consentType; + [Export ("consentType")] + ConsentType ConsentType { get; } + + // @property (readonly, nonatomic) UMPFormStatus formStatus; + [Export ("formStatus")] + FormStatus FormStatus { get; } + + // -(void)requestConsentInfoUpdateWithParameters:(id)parameters completionHandler:(UMPConsentInformationUpdateCompletionHandler _Nonnull)handler; + [Export ("requestConsentInfoUpdateWithParameters:completionHandler:")] + void RequestConsentInfoUpdateWithParameters (NSObject parameters, ConsentInformationUpdateCompletionHandler handler); + + // -(void)reset; + [Export ("reset")] + void Reset (); + } + + // @interface UMPDebugSettings : NSObject + [BaseType (typeof(NSObject), Name = "UMPDebugSettings")] + interface DebugSettings : INSCopying + { + // @property (nonatomic) NSArray * _Nullable testDeviceIdentifiers; + [NullAllowed, Export ("testDeviceIdentifiers", ArgumentSemantic.Assign)] + string[] TestDeviceIdentifiers { get; set; } + + // @property (nonatomic) UMPDebugGeography geography; + [Export ("geography", ArgumentSemantic.Assign)] + DebugGeography Geography { get; set; } + } + + // @interface UMPRequestParameters : NSObject + [BaseType (typeof(NSObject), Name = "UMPRequestParameters")] + interface RequestParameters + { + // @property (nonatomic) BOOL tagForUnderAgeOfConsent; + [Export ("tagForUnderAgeOfConsent")] + bool TagForUnderAgeOfConsent { get; set; } + + // @property (copy, nonatomic) UMPDebugSettings * _Nullable debugSettings; + [NullAllowed, Export ("debugSettings", ArgumentSemantic.Copy)] + DebugSettings DebugSettings { get; set; } + } +} \ No newline at end of file diff --git a/source/Google/UserMessagingPlatform/Enums.cs b/source/Google/UserMessagingPlatform/Enums.cs new file mode 100644 index 000000000..9c5ec6544 --- /dev/null +++ b/source/Google/UserMessagingPlatform/Enums.cs @@ -0,0 +1,60 @@ +using System; +using System.Runtime.InteropServices; + +using CoreGraphics; +using Foundation; +using ObjCRuntime; + +namespace Google.UserMessagingPlatform +{ + [Native] + public enum ConsentStatus : long + { + Unknown = 0, + Required = 1, + NotRequired = 2, + Obtained = 3 + } + + [Native] + public enum ConsentType : long + { + Unknown = 0, + Personalized = 1, + NonPersonalized = 2 + } + + [Native] + public enum FormStatus : long + { + Unknown = 0, + Available = 1, + Unavailable = 2 + } + + [Native] + public enum DebugGeography : long + { + Disabled = 0, + Eea = 1, + NotEea = 2 + } + + [Native] + public enum RequestErrorCode : long + { + Internal = 1, + InvalidAppID = 2, + Network = 3, + Misconfiguration = 4 + } + + [Native] + public enum FormErrorCode : long + { + Internal = 5, + AlreadyUsed = 6, + Unavailable = 7, + Timeout = 8 + } +} diff --git a/source/Google/UserMessagingPlatform/External-Dependency-Info.txt b/source/Google/UserMessagingPlatform/External-Dependency-Info.txt new file mode 100644 index 000000000..b8443b96d --- /dev/null +++ b/source/Google/UserMessagingPlatform/External-Dependency-Info.txt @@ -0,0 +1,219 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for Google APIs Mobile Ads iOS Library incorporates third +party material from the projects listed below. The original copyright notice +and the license under which Microsoft received such third party material are +set forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# Google Mobile Ads Consent SDK +# https://github.com/googleads/googleads-consent-sdk-ios +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [2017] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Mobile Ads Consent SDK +######################################## diff --git a/source/Google/UserMessagingPlatform/License.md b/source/Google/UserMessagingPlatform/License.md new file mode 100755 index 000000000..d3448ede5 --- /dev/null +++ b/source/Google/UserMessagingPlatform/License.md @@ -0,0 +1,18 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [AdMob](https://developers.google.com/admob/), which is subject to the [ +Google AdMob Terms of Service](https://developers.google.com/admob/terms). + +### Xamarin Component for Google Mobile Ads for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160427 \ No newline at end of file diff --git a/source/Google/UserMessagingPlatform/UserMessagingPlatform.csproj b/source/Google/UserMessagingPlatform/UserMessagingPlatform.csproj new file mode 100644 index 000000000..4b816a372 --- /dev/null +++ b/source/Google/UserMessagingPlatform/UserMessagingPlatform.csproj @@ -0,0 +1,61 @@ + + + + Xamarin.iOS10 + true + Google.UserMessagingPlatform + Google.UserMessagingPlatform + 1.0.0.0 + 1.1.0.0 + Resources + true + true + + + + Xamarin.Google.iOS.UserMessagingPlatform + Google APIs User Messaging iOS Library + C# bindings for Google APIs User Messaging iOS Library + C# bindings for Google APIs User Messaging iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + googleiosmobileads_128x128.png + https://go.microsoft.com/fwlink/?linkid=865562 + License.md + true + 1.1.0.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/Google/UserMessagingPlatform/UserMessagingPlatform.targets b/source/Google/UserMessagingPlatform/UserMessagingPlatform.targets new file mode 100644 index 000000000..6559c0630 --- /dev/null +++ b/source/Google/UserMessagingPlatform/UserMessagingPlatform.targets @@ -0,0 +1,25 @@ + + + + <_GoogleUserMessagingPlatformAssemblyName>Google.UserMessagingPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_GoogleUserMessagingPlatformId>GUsrMess-1.1.0 + <_GoogleUserMessagingPlatformSDKBaseFolder>$(XamarinBuildDownloadDir)$(_GoogleUserMessagingPlatformId)\Frameworks\Release\ + + + + https://dl.google.com/dl/cpdc/624b551688fd020a/GoogleUserMessagingPlatform-1.1.0.tar.gz + Tgz + + + + + + + + Framework + True + True + + + + \ No newline at end of file diff --git a/source/MLKit/BarcodeScanning/ApiDefinition.cs b/source/MLKit/BarcodeScanning/ApiDefinition.cs new file mode 100644 index 000000000..f2b0d693d --- /dev/null +++ b/source/MLKit/BarcodeScanning/ApiDefinition.cs @@ -0,0 +1,382 @@ +using System; + +using UIKit; +using Foundation; +using CoreGraphics; +using ObjCRuntime; + +using MLKit.Core; + +namespace MLKit.BarcodeScanning { + // @interface MLKBarcodeScannerOptions : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcodeScannerOptions")] + interface BarcodeScannerOptions { + // @property (readonly, nonatomic) MLKBarcodeFormat formats; + [Export ("formats")] + BarcodeFormat Formats { get; } + + // -(instancetype _Nonnull)initWithFormats:(MLKBarcodeFormat)formats __attribute__((objc_designated_initializer)); + [Export ("initWithFormats:")] + [DesignatedInitializer] + IntPtr Constructor (BarcodeFormat formats); + } + + // @interface MLKBarcodeAddress : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcodeAddress")] + [DisableDefaultCtor] + interface BarcodeAddress { + // @property (readonly, nonatomic) NSArray * _Nullable addressLines; + [NullAllowed, Export ("addressLines")] + string [] AddressLines { get; } + + // @property (readonly, nonatomic) MLKBarcodeAddressType type; + [Export ("type")] + BarcodeAddressType Type { get; } + } + + // @interface MLKBarcodeCalendarEvent : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcodeCalendarEvent")] + [DisableDefaultCtor] + interface BarcodeCalendarEvent { + // @property (readonly, nonatomic) NSString * _Nullable eventDescription; + [NullAllowed, Export ("eventDescription")] + string EventDescription { get; } + + // @property (readonly, nonatomic) NSString * _Nullable location; + [NullAllowed, Export ("location")] + string Location { get; } + + // @property (readonly, nonatomic) NSString * _Nullable organizer; + [NullAllowed, Export ("organizer")] + string Organizer { get; } + + // @property (readonly, nonatomic) NSString * _Nullable status; + [NullAllowed, Export ("status")] + string Status { get; } + + // @property (readonly, nonatomic) NSString * _Nullable summary; + [NullAllowed, Export ("summary")] + string Summary { get; } + + // @property (readonly, nonatomic) NSDate * _Nullable start; + [NullAllowed, Export ("start")] + NSDate Start { get; } + + // @property (readonly, nonatomic) NSDate * _Nullable end; + [NullAllowed, Export ("end")] + NSDate End { get; } + } + + // @interface MLKBarcodeDriverLicense : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcodeDriverLicense")] + [DisableDefaultCtor] + interface BarcodeDriverLicense { + // @property (readonly, nonatomic) NSString * _Nullable firstName; + [NullAllowed, Export ("firstName")] + string FirstName { get; } + + // @property (readonly, nonatomic) NSString * _Nullable middleName; + [NullAllowed, Export ("middleName")] + string MiddleName { get; } + + // @property (readonly, nonatomic) NSString * _Nullable lastName; + [NullAllowed, Export ("lastName")] + string LastName { get; } + + // @property (readonly, nonatomic) NSString * _Nullable gender; + [NullAllowed, Export ("gender")] + string Gender { get; } + + // @property (readonly, nonatomic) NSString * _Nullable addressCity; + [NullAllowed, Export ("addressCity")] + string AddressCity { get; } + + // @property (readonly, nonatomic) NSString * _Nullable addressState; + [NullAllowed, Export ("addressState")] + string AddressState { get; } + + // @property (readonly, nonatomic) NSString * _Nullable addressStreet; + [NullAllowed, Export ("addressStreet")] + string AddressStreet { get; } + + // @property (readonly, nonatomic) NSString * _Nullable addressZip; + [NullAllowed, Export ("addressZip")] + string AddressZip { get; } + + // @property (readonly, nonatomic) NSString * _Nullable birthDate; + [NullAllowed, Export ("birthDate")] + string BirthDate { get; } + + // @property (readonly, nonatomic) NSString * _Nullable documentType; + [NullAllowed, Export ("documentType")] + string DocumentType { get; } + + // @property (readonly, nonatomic) NSString * _Nullable licenseNumber; + [NullAllowed, Export ("licenseNumber")] + string LicenseNumber { get; } + + // @property (readonly, nonatomic) NSString * _Nullable expiryDate; + [NullAllowed, Export ("expiryDate")] + string ExpiryDate { get; } + + // @property (readonly, nonatomic) NSString * _Nullable issuingDate; + [NullAllowed, Export ("issuingDate")] + string IssuingDate { get; } + + // @property (readonly, nonatomic) NSString * _Nullable issuingCountry; + [NullAllowed, Export ("issuingCountry")] + string IssuingCountry { get; } + } + + // @interface MLKBarcodeEmail : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcodeEmail")] + [DisableDefaultCtor] + interface BarcodeEmail { + // @property (readonly, nonatomic) NSString * _Nullable address; + [NullAllowed, Export ("address")] + string Address { get; } + + // @property (readonly, nonatomic) NSString * _Nullable body; + [NullAllowed, Export ("body")] + string Body { get; } + + // @property (readonly, nonatomic) NSString * _Nullable subject; + [NullAllowed, Export ("subject")] + string Subject { get; } + + // @property (readonly, nonatomic) MLKBarcodeEmailType type; + [Export ("type")] + BarcodeEmailType Type { get; } + } + + // @interface MLKBarcodeGeoPoint : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcodeGeoPoint")] + [DisableDefaultCtor] + interface BarcodeGeoPoint { + // @property (readonly, nonatomic) double latitude; + [Export ("latitude")] + double Latitude { get; } + + // @property (readonly, nonatomic) double longitude; + [Export ("longitude")] + double Longitude { get; } + } + + // @interface MLKBarcodePersonName : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcodePersonName")] + [DisableDefaultCtor] + interface BarcodePersonName { + // @property (readonly, nonatomic) NSString * _Nullable formattedName; + [NullAllowed, Export ("formattedName")] + string FormattedName { get; } + + // @property (readonly, nonatomic) NSString * _Nullable first; + [NullAllowed, Export ("first")] + string First { get; } + + // @property (readonly, nonatomic) NSString * _Nullable last; + [NullAllowed, Export ("last")] + string Last { get; } + + // @property (readonly, nonatomic) NSString * _Nullable middle; + [NullAllowed, Export ("middle")] + string Middle { get; } + + // @property (readonly, nonatomic) NSString * _Nullable prefix; + [NullAllowed, Export ("prefix")] + string Prefix { get; } + + // @property (readonly, nonatomic) NSString * _Nullable pronunciation; + [NullAllowed, Export ("pronunciation")] + string Pronunciation { get; } + + // @property (readonly, nonatomic) NSString * _Nullable suffix; + [NullAllowed, Export ("suffix")] + string Suffix { get; } + } + + // @interface MLKBarcodePhone : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcodePhone")] + [DisableDefaultCtor] + interface BarcodePhone { + // @property (readonly, nonatomic) NSString * _Nullable number; + [NullAllowed, Export ("number")] + string Number { get; } + + // @property (readonly, nonatomic) MLKBarcodePhoneType type; + [Export ("type")] + BarcodePhoneType Type { get; } + } + + // @interface MLKBarcodeSMS : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcodeSMS")] + [DisableDefaultCtor] + interface BarcodeSMS { + // @property (readonly, nonatomic) NSString * _Nullable message; + [NullAllowed, Export ("message")] + string Message { get; } + + // @property (readonly, nonatomic) NSString * _Nullable phoneNumber; + [NullAllowed, Export ("phoneNumber")] + string PhoneNumber { get; } + } + + // @interface MLKBarcodeURLBookmark : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcodeURLBookmark")] + [DisableDefaultCtor] + interface BarcodeUrlBookmark { + // @property (readonly, nonatomic) NSString * _Nullable title; + [NullAllowed, Export ("title")] + string Title { get; } + + // @property (readonly, nonatomic) NSString * _Nullable url; + [NullAllowed, Export ("url")] + string Url { get; } + } + + // @interface MLKBarcodeWiFi : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcodeWiFi")] + [DisableDefaultCtor] + interface BarcodeWiFi { + // @property (readonly, nonatomic) NSString * _Nullable ssid; + [NullAllowed, Export ("ssid")] + string Ssid { get; } + + // @property (readonly, nonatomic) NSString * _Nullable password; + [NullAllowed, Export ("password")] + string Password { get; } + + // @property (readonly, nonatomic) MLKBarcodeWiFiEncryptionType type; + [Export ("type")] + BarcodeWiFiEncryptionType Type { get; } + } + + // @interface MLKBarcodeContactInfo : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcodeContactInfo")] + [DisableDefaultCtor] + interface BarcodeContactInfo { + // @property (readonly, nonatomic) NSArray * _Nullable addresses; + [NullAllowed, Export ("addresses")] + BarcodeAddress [] Addresses { get; } + + // @property (readonly, nonatomic) NSArray * _Nullable emails; + [NullAllowed, Export ("emails")] + BarcodeEmail [] Emails { get; } + + // @property (readonly, nonatomic) MLKBarcodePersonName * _Nullable name; + [NullAllowed, Export ("name")] + BarcodePersonName Name { get; } + + // @property (readonly, nonatomic) NSArray * _Nullable phones; + [NullAllowed, Export ("phones")] + BarcodePhone [] Phones { get; } + + // @property (readonly, nonatomic) NSArray * _Nullable urls; + [NullAllowed, Export ("urls")] + string [] Urls { get; } + + // @property (readonly, nonatomic) NSString * _Nullable jobTitle; + [NullAllowed, Export ("jobTitle")] + string JobTitle { get; } + + // @property (readonly, nonatomic) NSString * _Nullable organization; + [NullAllowed, Export ("organization")] + string Organization { get; } + } + + // @interface MLKBarcode : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcode")] + [DisableDefaultCtor] + interface Barcode { + // @property (readonly, nonatomic) CGRect frame; + [Export ("frame")] + CGRect Frame { get; } + + // @property (readonly, nonatomic) NSString * _Nullable rawValue; + [NullAllowed, Export ("rawValue")] + string RawValue { get; } + + // @property (readonly, nonatomic) NSData * _Nullable rawData; + [NullAllowed, Export ("rawData")] + NSData RawData { get; } + + // @property (readonly, nonatomic) NSString * _Nullable displayValue; + [NullAllowed, Export ("displayValue")] + string DisplayValue { get; } + + // @property (readonly, nonatomic) MLKBarcodeFormat format; + [Export ("format")] + BarcodeFormat Format { get; } + + // @property (readonly, nonatomic) NSArray * _Nullable cornerPoints; + [NullAllowed, Export ("cornerPoints")] + NSValue [] CornerPoints { get; } + + // @property (readonly, nonatomic) MLKBarcodeValueType valueType; + [Export ("valueType")] + BarcodeValueType ValueType { get; } + + // @property (readonly, nonatomic) MLKBarcodeEmail * _Nullable email; + [NullAllowed, Export ("email")] + BarcodeEmail Email { get; } + + // @property (readonly, nonatomic) MLKBarcodePhone * _Nullable phone; + [NullAllowed, Export ("phone")] + BarcodePhone Phone { get; } + + // @property (readonly, nonatomic) MLKBarcodeSMS * _Nullable sms; + [NullAllowed, Export ("sms")] + BarcodeSMS Sms { get; } + + // @property (readonly, nonatomic) MLKBarcodeURLBookmark * _Nullable URL; + [NullAllowed, Export ("URL")] + BarcodeUrlBookmark URL { get; } + + // @property (readonly, nonatomic) MLKBarcodeWiFi * _Nullable wifi; + [NullAllowed, Export ("wifi")] + BarcodeWiFi Wifi { get; } + + // @property (readonly, nonatomic) MLKBarcodeGeoPoint * _Nullable geoPoint; + [NullAllowed, Export ("geoPoint")] + BarcodeGeoPoint GeoPoint { get; } + + // @property (readonly, nonatomic) MLKBarcodeContactInfo * _Nullable contactInfo; + [NullAllowed, Export ("contactInfo")] + BarcodeContactInfo ContactInfo { get; } + + // @property (readonly, nonatomic) MLKBarcodeCalendarEvent * _Nullable calendarEvent; + [NullAllowed, Export ("calendarEvent")] + BarcodeCalendarEvent CalendarEvent { get; } + + // @property (readonly, nonatomic) MLKBarcodeDriverLicense * _Nullable driverLicense; + [NullAllowed, Export ("driverLicense")] + BarcodeDriverLicense DriverLicense { get; } + } + + // typedef void (^MLKBarcodeScanningCallback)(NSArray * _Nullable, NSError * _Nullable); + delegate void BarcodeScanningCallback ([NullAllowed] Barcode [] barcodes, [NullAllowed] NSError error); + + // @interface MLKBarcodeScanner : NSObject + [BaseType (typeof (NSObject), Name = "MLKBarcodeScanner")] + [DisableDefaultCtor] + interface BarcodeScanner { + // +(instancetype _Nonnull)barcodeScannerWithOptions:(MLKBarcodeScannerOptions * _Nonnull)options __attribute__((swift_name("barcodeScanner(options:)"))); + [Static] + [Export ("barcodeScannerWithOptions:")] + BarcodeScanner BarcodeScannerWithOptions (BarcodeScannerOptions options); + + // +(instancetype _Nonnull)barcodeScanner __attribute__((swift_name("barcodeScanner()"))); + [Static] + [Export ("barcodeScanner")] + BarcodeScanner DefaultInstance { get; } + + // -(void)processImage:(id _Nonnull)image completion:(MLKBarcodeScanningCallback _Nonnull)completion __attribute__((swift_name("process(_:completion:)"))); + [Export ("processImage:completion:")] + void ProcessImage (ICompatibleImage image, BarcodeScanningCallback completion); + + // -(NSArray * _Nullable)resultsInImage:(id _Nonnull)image error:(NSError * _Nullable * _Nullable)error; + [Export ("resultsInImage:error:")] + [return: NullAllowed] + Barcode [] ResultsInImage (ICompatibleImage image, [NullAllowed] out NSError error); + } +} diff --git a/source/MLKit/BarcodeScanning/BarcodeScanning.csproj b/source/MLKit/BarcodeScanning/BarcodeScanning.csproj new file mode 100644 index 000000000..90c360392 --- /dev/null +++ b/source/MLKit/BarcodeScanning/BarcodeScanning.csproj @@ -0,0 +1,67 @@ + + + + Xamarin.iOS10 + true + MLKit.BarcodeScanning + MLKit.BarcodeScanning + 1.0.0.0 + 1.6.0 + Resources + true + + + + Xamarin.MLKit.iOS.BarcodeScanning + MLKit APIs Barcode Scanning iOS Library + C# bindings for MLKit APIs Barcode Scanning iOS Library + C# bindings for MLKit APIs Barcode Scanning iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseioscore_128x128.png + https://go.microsoft.com/fwlink/?linkid=2007321 + License.md + true + 1.6.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/MLKit/BarcodeScanning/BarcodeScanning.targets b/source/MLKit/BarcodeScanning/BarcodeScanning.targets new file mode 100644 index 000000000..1b01f136d --- /dev/null +++ b/source/MLKit/BarcodeScanning/BarcodeScanning.targets @@ -0,0 +1,27 @@ + + + + <_MLKitBarcodeAssemblyName>MLKit.BarcodeScanning, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_MLKitBarcodeItemsFolder>MLKBarcode-1.6.0 + <_MLKitBarcodeSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitBarcodeItemsFolder)\ + + + + https://dl.google.com/dl/cpdc/91469daa8120529a/MLKitBarcodeScanning-1.6.0.tar.gz + Tgz + + + + + + + + Framework + True + True + -lc++ + Accelerate CoreGraphics CoreImage CoreMedia CoreVideo Foundation UIKit + + + + \ No newline at end of file diff --git a/source/MLKit/BarcodeScanning/Enums.cs b/source/MLKit/BarcodeScanning/Enums.cs new file mode 100644 index 000000000..769b549e6 --- /dev/null +++ b/source/MLKit/BarcodeScanning/Enums.cs @@ -0,0 +1,72 @@ +using System; +using ObjCRuntime; + +namespace MLKit.BarcodeScanning { + [Flags] + [Native] + public enum BarcodeFormat : long { + Unknown = 0x0, + All = 0xffff, + Code128 = 0x1, + Code39 = 0x2, + Code93 = 0x4, + CodaBar = 0x8, + DataMatrix = 0x10, + Ean13 = 0x20, + Ean8 = 0x40, + Itf = 0x80, + QrCode = 0x100, + Upca = 0x200, + Upce = 0x400, + Pdf417 = 0x800, + Aztec = 0x1000 + } + + [Native] + public enum BarcodeValueType : long { + Unknown = 0, + ContactInfo = 1, + Email = 2, + Isbn = 3, + Phone = 4, + Product = 5, + Sms = 6, + Text = 7, + Url = 8, + WiFi = 9, + GeographicCoordinates = 10, + CalendarEvent = 11, + DriversLicense = 12 + } + + [Native] + public enum BarcodeAddressType : long { + Unknown = 0, + Work = 1, + Home = 2 + } + + [Native] + public enum BarcodeEmailType : long { + Unknown = 0, + Work = 1, + Home = 2 + } + + [Native] + public enum BarcodePhoneType : long { + Unknown = 0, + Work = 1, + Home = 2, + Fax = 3, + Mobile = 4 + } + + [Native] + public enum BarcodeWiFiEncryptionType : long { + Unknown = 0, + Open = 1, + Wpa = 2, + Wep = 3 + } +} diff --git a/source/MLKit/BarcodeScanning/External-Dependency-Info.txt b/source/MLKit/BarcodeScanning/External-Dependency-Info.txt new file mode 100644 index 000000000..f6708b6b6 --- /dev/null +++ b/source/MLKit/BarcodeScanning/External-Dependency-Info.txt @@ -0,0 +1,1179 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for MLKit APIs Core iOS Library incorporates third party +material from the projects listed below. The original copyright notice and +the license under which Microsoft received such third party material are set +forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# MLKit iOS SDK +# https://developers.google.com/ml-kit +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK +######################################## + +######################################## +# Firebase iOS SDK - Google Utilities +# https://github.com/firebase/firebase-ios-sdk/tree/master/GoogleUtilities +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK - Google Utilities +######################################## + +######################################## +# Google Toolbox for Mac +# https://github.com/google/google-toolbox-for-mac +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac +######################################## + +######################################## +# Nanopb - Protocol Buffers for Embedded Systems +# https://github.com/nanopb/nanopb +######################################## + + +Copyright (c) 2011 Petteri Aimonen + +This software is provided 'as-is', without any express or +implied warranty. In no event will the authors be held liable +for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use + this software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. + +######################################## +# end - Nanopb - Protocol Buffers for Embedded Systems +######################################## + +######################################## +# Google Toolbox for Mac - Session Fetcher +# https://github.com/google/gtm-session-fetcher +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac - Session Fetcher +######################################## + +######################################## +# Protobuf +# https://github.com/google/protobuf +######################################## + + +Copyright 2014, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +######################################## +# end - Protobuf +######################################## + +######################################## +# LevelDB +# https://github.com/google/leveldb +######################################## + + +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +######################################## +# end - LevelDB +######################################## + +######################################## +# Google APIs Client Library for Objective-C (REST) +# https://github.com/google/google-api-objectivec-client-for-rest +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +######################################## +# end - Google APIs Client Library for Objective-C (REST) +######################################## diff --git a/source/MLKit/BarcodeScanning/License.md b/source/MLKit/BarcodeScanning/License.md new file mode 100755 index 000000000..3151e9357 --- /dev/null +++ b/source/MLKit/BarcodeScanning/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [MLKit Barcode Scanning for iOS](https://developers.google.com/ml-kit/guides), which is subject to the [Terms of Service for MLKit](https://developers.google.com/ml-kit/terms). + +### Xamarin Component for MLKit Barcode Scanning for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/MLKit/Core/ApiDefinition.cs b/source/MLKit/Core/ApiDefinition.cs new file mode 100644 index 000000000..04beb8d4d --- /dev/null +++ b/source/MLKit/Core/ApiDefinition.cs @@ -0,0 +1,213 @@ +using System; + +using UIKit; +using Foundation; +using CoreMedia; +using CoreVideo; +using ObjCRuntime; + +namespace MLKit.Core { + delegate void ErrorCallback ([NullAllowed] NSError error); + + [Static] + partial interface Constants { + // extern NS_SWIFT_NAME(mlkitModelDownloadDidSucceed) const NSNotificationName MLKModelDownloadDidSucceedNotification __attribute__((swift_name("mlkitModelDownloadDidSucceed"))); + [Field ("MLKModelDownloadDidSucceedNotification", "__Internal")] + NSString ModelDownloadDidSucceedNotification { get; } + + // extern NS_SWIFT_NAME(mlkitModelDownloadDidFail) const NSNotificationName MLKModelDownloadDidFailNotification __attribute__((swift_name("mlkitModelDownloadDidFail"))); + [Field ("MLKModelDownloadDidFailNotification", "__Internal")] + NSString ModelDownloadDidFailNotification { get; } + + // extern const MLKModelDownloadUserInfoKey _Nonnull MLKModelDownloadUserInfoKeyRemoteModel; + [Field ("MLKModelDownloadUserInfoKeyRemoteModel", "__Internal")] + NSString ModelDownloadUserInfoKeyRemoteModel { get; } + + // extern const MLKModelDownloadUserInfoKey _Nonnull MLKModelDownloadUserInfoKeyError; + [Field ("MLKModelDownloadUserInfoKeyError", "__Internal")] + NSString ModelDownloadUserInfoKeyError { get; } + } + + // @interface MLKRemoteModel : NSObject + [BaseType (typeof (NSObject), Name = "MLKRemoteModel")] + [DisableDefaultCtor] + interface RemoteModel { + // @property (readonly, copy, nonatomic) NSString * _Nonnull name; + [Export ("name")] + string Name { get; } + } + + // @interface MLKCustomRemoteModel : MLKRemoteModel + [BaseType (typeof (RemoteModel), Name = "MLKCustomRemoteModel")] + [DisableDefaultCtor] + interface CustomRemoteModel { + // -(instancetype _Nonnull)initWithRemoteModelSource:(MLKRemoteModelSource * _Nonnull)remoteModelSource; + [Export ("initWithRemoteModelSource:")] + IntPtr Constructor (RemoteModelSource remoteModelSource); + } + + interface ILocalModelPath : INativeObject, IDisposable { } + interface ILocalModelManifestPath : INativeObject, IDisposable { } + + // @interface MLKLocalModel : NSObject + [BaseType (typeof (NSObject), Name = "MLKLocalModel")] + [DisableDefaultCtor] + interface LocalModel { + // @property (readonly, copy, nonatomic) NSString * _Nonnull path; + [Export ("path")] + string Path { get; } + + // @property (readonly, copy, nonatomic) NSString * _Nullable manifestPath; + [NullAllowed, Export ("manifestPath")] + string ManifestPath { get; } + + // -(instancetype _Nonnull)initWithPath:(NSString * _Nonnull)path; + [Export ("initWithPath:")] + IntPtr Constructor (ILocalModelPath path); + + // -(instancetype _Nullable)initWithManifestPath:(NSString * _Nonnull)manifestPath; + [Export ("initWithManifestPath:")] + IntPtr Constructor (ILocalModelManifestPath manifestPath); + } + + // @interface MLKModelDownloadConditions : NSObject + [BaseType (typeof (NSObject), Name = "MLKModelDownloadConditions")] + interface ModelDownloadConditions : INSCopying { + // @property (readonly, nonatomic) BOOL allowsCellularAccess; + [Export ("allowsCellularAccess")] + bool AllowsCellularAccess { get; } + + // @property (readonly, nonatomic) BOOL allowsBackgroundDownloading; + [Export ("allowsBackgroundDownloading")] + bool AllowsBackgroundDownloading { get; } + + // -(instancetype _Nonnull)initWithAllowsCellularAccess:(BOOL)allowsCellularAccess allowsBackgroundDownloading:(BOOL)allowsBackgroundDownloading __attribute__((objc_designated_initializer)); + [Export ("initWithAllowsCellularAccess:allowsBackgroundDownloading:")] + [DesignatedInitializer] + IntPtr Constructor (bool allowsCellularAccess, bool allowsBackgroundDownloading); + } + + // @interface MLKModelManager : NSObject + [BaseType (typeof (NSObject), Name = "MLKModelManager")] + [DisableDefaultCtor] + interface ModelManager { + // +(instancetype _Nonnull)modelManager __attribute__((swift_name("modelManager()"))); + [Static] + [Export ("modelManager")] + ModelManager DefaultInstance { get; set; } + + // -(BOOL)isModelDownloaded:(MLKRemoteModel * _Nonnull)remoteModel; + [Export ("isModelDownloaded:")] + bool IsModelDownloaded (RemoteModel remoteModel); + + // -(NSProgress * _Nonnull)downloadModel:(MLKRemoteModel * _Nonnull)remoteModel conditions:(MLKModelDownloadConditions * _Nonnull)conditions __attribute__((swift_name("download(_:conditions:)"))); + [Export ("downloadModel:conditions:")] + NSProgress DownloadModel (RemoteModel remoteModel, ModelDownloadConditions conditions); + + // -(void)deleteDownloadedModel:(MLKRemoteModel * _Nonnull)remoteModel completion:(void (^ _Nonnull)(NSError * _Nullable))completion; + [Export ("deleteDownloadedModel:completion:")] + void DeleteDownloadedModel (RemoteModel remoteModel, ErrorCallback completion); + } + + // @interface MLKRemoteModelSource : NSObject + [BaseType (typeof (NSObject), Name = "MLKRemoteModelSource")] + [DisableDefaultCtor] + interface RemoteModelSource { + } + + // @interface GMLImage : NSObject + [BaseType (typeof (CompatibleImage), Name = "GMLImage")] + [DisableDefaultCtor] + interface MLImage { + // @property (readonly, nonatomic) CGFloat width; + [Export ("width")] + nfloat Width { get; } + + // @property (readonly, nonatomic) CGFloat height; + [Export ("height")] + nfloat Height { get; } + + // @property (nonatomic) UIImageOrientation orientation; + [Export ("orientation", ArgumentSemantic.Assign)] + UIImageOrientation Orientation { get; set; } + + // @property (readonly, nonatomic) GMLImageSourceType imageSourceType; + [Export ("imageSourceType")] + ImageSourceType ImageSourceType { get; } + + // @property (readonly, nonatomic) UIImage * _Nullable image; + [NullAllowed, Export ("image")] + UIImage Image { get; } + + // @property (readonly, nonatomic) CVPixelBufferRef _Nullable pixelBuffer; + [NullAllowed, Export ("pixelBuffer")] + CVPixelBuffer PixelBuffer { get; } + + // @property (readonly, nonatomic) CMSampleBufferRef _Nullable sampleBuffer; + [NullAllowed, Export ("sampleBuffer")] + CMSampleBuffer SampleBuffer { get; } + + // -(instancetype _Nullable)initWithImage:(UIImage * _Nonnull)image __attribute__((objc_designated_initializer)); + [Export ("initWithImage:")] + [DesignatedInitializer] + IntPtr Constructor (UIImage image); + + // -(instancetype _Nullable)initWithPixelBuffer:(CVPixelBufferRef _Nonnull)pixelBuffer __attribute__((objc_designated_initializer)); + [Export ("initWithPixelBuffer:")] + [DesignatedInitializer] + IntPtr Constructor (CVPixelBuffer pixelBuffer); + + // -(instancetype _Nullable)initWithSampleBuffer:(CMSampleBufferRef _Nonnull)sampleBuffer __attribute__((objc_designated_initializer)); + [Export ("initWithSampleBuffer:")] + [DesignatedInitializer] + IntPtr Constructor (CMSampleBuffer sampleBuffer); + } + + // @interface MLKVision3DPoint + [BaseType (typeof (VisionPoint), Name = "MLKVision3DPoint")] + [DisableDefaultCtor] + interface Vision3DPoint { + // @property (readonly, nonatomic) CGFloat z; + [Export ("z")] + nfloat Z { get; } + } + + interface ICompatibleImage { } + + [Protocol] + [BaseType (typeof (NSObject), Name = "MLKCompatibleImage")] + interface CompatibleImage { + } + + // @interface MLKVisionImage : NSObject + [BaseType (typeof (CompatibleImage), Name = "MLKVisionImage")] + [DisableDefaultCtor] + interface VisionImage { + // @property (nonatomic) UIImageOrientation orientation; + [Export ("orientation", ArgumentSemantic.Assign)] + UIImageOrientation Orientation { get; set; } + + // -(instancetype _Nonnull)initWithImage:(UIImage * _Nonnull)image __attribute__((objc_designated_initializer)); + [Export ("initWithImage:")] + [DesignatedInitializer] + IntPtr Constructor (UIImage image); + + // -(instancetype _Nonnull)initWithBuffer:(CMSampleBufferRef _Nonnull)sampleBuffer __attribute__((objc_designated_initializer)); + [Export ("initWithBuffer:")] + [DesignatedInitializer] + IntPtr Constructor (CMSampleBuffer sampleBuffer); + } + + // @interface MLKVisionPoint : NSObject + [BaseType (typeof (NSObject), Name = "MLKVisionPoint")] + [DisableDefaultCtor] + interface VisionPoint { + // @property (readonly, nonatomic) CGFloat x; + [Export ("x")] + nfloat X { get; } + + // @property (readonly, nonatomic) CGFloat y; + [Export ("y")] + nfloat Y { get; } + } +} diff --git a/source/MLKit/Core/Core.csproj b/source/MLKit/Core/Core.csproj new file mode 100644 index 000000000..0f25a2d47 --- /dev/null +++ b/source/MLKit/Core/Core.csproj @@ -0,0 +1,65 @@ + + + + Xamarin.iOS10 + true + MLKit.Core + MLKit.Core + 1.0.0.0 + 5.0.0 + Resources + true + + + Xamarin.MLKit.iOS.Core + MLKit APIs Core iOS Library + C# bindings for MLKit APIs Core iOS Library + C# bindings for MLKit APIs Core iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseioscore_128x128.png + https://go.microsoft.com/fwlink/?linkid=2007321 + License.md + true + 5.0.0 + + + + + + + + + + + + + + + + + Framework + True + True + -lz -liconv + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/source/MLKit/Core/Core.targets b/source/MLKit/Core/Core.targets new file mode 100644 index 000000000..7d8389715 --- /dev/null +++ b/source/MLKit/Core/Core.targets @@ -0,0 +1,67 @@ + + + + <_MLKitCoreAssemblyName>MLKit.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_MLKitCoreItemsFolder>MLKCore-5.0.0 + <_MLKitCoreSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitCoreItemsFolder)\Frameworks\ + <_MLImageItemsFolder>MLImg-1.0.0beta2 + <_MLImageSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLImageItemsFolder)\Frameworks\ + <_MLKitVisionItemsFolder>MLKVision-3.0.0 + <_MLKitVisionSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitVisionItemsFolder)\Frameworks\ + <_MLKitMDDItemsFolder>MLKMDD-3.0.0 + <_MLKitMDDSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitMDDItemsFolder)\Frameworks\ + + + + https://dl.google.com/dl/cpdc/47d3df4da639a85b/MLKitCommon-5.0.0.tar.gz + Tgz + + + https://dl.google.com/dl/cpdc/abf5733b03dc0bcf/MLImage-1.0.0-beta2.tar.gz + Tgz + + + https://dl.google.com/dl/cpdc/504afdc2864ce1c7/MLKitVision-3.0.0.tar.gz + Tgz + + + https://dl.google.com/dl/cpdc/67fefdba5140a178/MLKitMDD-3.0.0.tar.gz + Tgz + + + + + + + + Framework + True + True + -lc++ -lsqlite3 -lz + Foundation LocalAuthentication + + + + Framework + True + True + CoreGraphics CoreMedia CoreVideo Foundation UIKit + + + + Framework + True + True + Accelerate AVFoundation CoreGraphics CoreMedia CoreVideo Foundation UIKit + + + + Framework + True + True + -lc++ + Accelerate AVFoundation CoreGraphics CoreMedia CoreVideo Foundation UIKit + + + + \ No newline at end of file diff --git a/source/MLKit/Core/Enums.cs b/source/MLKit/Core/Enums.cs new file mode 100644 index 000000000..d3c5b10e9 --- /dev/null +++ b/source/MLKit/Core/Enums.cs @@ -0,0 +1,11 @@ +using System; +using ObjCRuntime; + +namespace MLKit.Core { + [Native] + public enum ImageSourceType : long { + ImageSourceTypeImage = 0, + ImageSourceTypePixelBuffer = 1, + ImageSourceTypeSampleBuffer = 2 + } +} diff --git a/source/MLKit/Core/Extension.cs b/source/MLKit/Core/Extension.cs new file mode 100644 index 000000000..2760a735d --- /dev/null +++ b/source/MLKit/Core/Extension.cs @@ -0,0 +1,20 @@ +using System; +using System.Runtime.InteropServices; +using Foundation; +using CoreFoundation; +using ObjCRuntime; + +namespace MLKit.Core { + public interface ILocalModelPath : INativeObject, IDisposable { } + public interface ILocalModelManifestPath : INativeObject, IDisposable { } + + public class LocalModelPath : CFString, ILocalModelPath { + public static LocalModelPath From (string path) => new LocalModelPath (path); + public LocalModelPath (string path) : base (path) { } + } + + public class LocalModelManifestPath : CFString, ILocalModelManifestPath { + public static LocalModelManifestPath From (string path) => new LocalModelManifestPath (path); + public LocalModelManifestPath (string path) : base (path) { } + } +} diff --git a/source/MLKit/Core/External-Dependency-Info.txt b/source/MLKit/Core/External-Dependency-Info.txt new file mode 100644 index 000000000..f6708b6b6 --- /dev/null +++ b/source/MLKit/Core/External-Dependency-Info.txt @@ -0,0 +1,1179 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for MLKit APIs Core iOS Library incorporates third party +material from the projects listed below. The original copyright notice and +the license under which Microsoft received such third party material are set +forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# MLKit iOS SDK +# https://developers.google.com/ml-kit +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK +######################################## + +######################################## +# Firebase iOS SDK - Google Utilities +# https://github.com/firebase/firebase-ios-sdk/tree/master/GoogleUtilities +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK - Google Utilities +######################################## + +######################################## +# Google Toolbox for Mac +# https://github.com/google/google-toolbox-for-mac +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac +######################################## + +######################################## +# Nanopb - Protocol Buffers for Embedded Systems +# https://github.com/nanopb/nanopb +######################################## + + +Copyright (c) 2011 Petteri Aimonen + +This software is provided 'as-is', without any express or +implied warranty. In no event will the authors be held liable +for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use + this software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. + +######################################## +# end - Nanopb - Protocol Buffers for Embedded Systems +######################################## + +######################################## +# Google Toolbox for Mac - Session Fetcher +# https://github.com/google/gtm-session-fetcher +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac - Session Fetcher +######################################## + +######################################## +# Protobuf +# https://github.com/google/protobuf +######################################## + + +Copyright 2014, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +######################################## +# end - Protobuf +######################################## + +######################################## +# LevelDB +# https://github.com/google/leveldb +######################################## + + +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +######################################## +# end - LevelDB +######################################## + +######################################## +# Google APIs Client Library for Objective-C (REST) +# https://github.com/google/google-api-objectivec-client-for-rest +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +######################################## +# end - Google APIs Client Library for Objective-C (REST) +######################################## diff --git a/source/MLKit/Core/License.md b/source/MLKit/Core/License.md new file mode 100755 index 000000000..aa4e34721 --- /dev/null +++ b/source/MLKit/Core/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [MLKit Core for iOS](https://developers.google.com/ml-kit/guides), which is subject to the [Terms of Service for MLKit](https://developers.google.com/ml-kit/terms). + +### Xamarin Component for MLKit Core for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/MLKit/Core/Loader.cs b/source/MLKit/Core/Loader.cs new file mode 100644 index 000000000..dd0615858 --- /dev/null +++ b/source/MLKit/Core/Loader.cs @@ -0,0 +1,15 @@ +using System; + +namespace MLKit.Core { + public class Loader { + static Loader () + { + + } + + public static void ForceLoad () + { + Firebase.Core.Loader.ForceLoad (); + } + } +} diff --git a/source/MLKit/DigitalInkRecognition/ApiDefinition.cs b/source/MLKit/DigitalInkRecognition/ApiDefinition.cs new file mode 100644 index 000000000..c995bc729 --- /dev/null +++ b/source/MLKit/DigitalInkRecognition/ApiDefinition.cs @@ -0,0 +1,2050 @@ +using System; + +using UIKit; +using Foundation; +using CoreGraphics; +using ObjCRuntime; + +using MLKit.Core; + +namespace MLKit.DigitalInkRecognition { + #region ModelIdentifiers + [Static] + interface ModelIdentifiers { + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.autodraw) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierAutodraw __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.autodraw"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierAutodraw", "__Internal")] + IntPtr _Autodraw { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.emoji) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEmoji __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.emoji"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEmoji", "__Internal")] + IntPtr _Emoji { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.shapes) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierShapes __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.shapes"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierShapes", "__Internal")] + IntPtr _Shapes { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.aaLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierAaLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.aaLatn"))); + [Field ("MLKDigitalInkRecognitionModelIdentifierAaLatn", "__Internal")] + IntPtr _AaLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.absLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierAbsLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.absLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierAbsLatnId", "__Internal")] + IntPtr _AbsLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.aceLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierAceLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.aceLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierAceLatnId", "__Internal")] + IntPtr _AceLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.actLatnNl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierActLatnNl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.actLatnNl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierActLatnNl", "__Internal")] + IntPtr _ActLatnNl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.af) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierAf __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.af"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierAf", "__Internal")] + IntPtr _Af { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.am) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierAm __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.am"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierAm", "__Internal")] + IntPtr _Am { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.anLatnEs) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierAnLatnEs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.anLatnEs"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierAnLatnEs", "__Internal")] + IntPtr _AnLatnEs { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.anwLatnNg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierAnwLatnNg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.anwLatnNg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierAnwLatnNg", "__Internal")] + IntPtr _AnwLatnNg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ar) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierAr __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ar"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierAr", "__Internal")] + IntPtr _Ar { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.as) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierAs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.as"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierAs", "__Internal")] + IntPtr _As { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.awaDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierAwaDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.awaDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierAwaDevaIn", "__Internal")] + IntPtr _AwaDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.azLatnAz) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierAzLatnAz __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.azLatnAz"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierAzLatnAz", "__Internal")] + IntPtr _AzLatnAz { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bahLatnBs) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBahLatnBs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bahLatnBs"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBahLatnBs", "__Internal")] + IntPtr _BahLatnBs { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.barLatnAt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBarLatnAt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.barLatnAt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBarLatnAt", "__Internal")] + IntPtr _BarLatnAt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bcqLatnEt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBcqLatnEt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bcqLatnEt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBcqLatnEt", "__Internal")] + IntPtr _BcqLatnEt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.be) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.be"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBe", "__Internal")] + IntPtr _Be { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.berLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBerLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.berLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBerLatn", "__Internal")] + IntPtr _BerLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bewLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBewLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bewLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBewLatnId", "__Internal")] + IntPtr _BewLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bfyDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBfyDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bfyDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBfyDevaIn", "__Internal")] + IntPtr _BfyDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bfzDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBfzDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bfzDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBfzDevaIn", "__Internal")] + IntPtr _BfzDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBg", "__Internal")] + IntPtr _Bg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bgcDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBgcDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bgcDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBgcDevaIn", "__Internal")] + IntPtr _BgcDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bgqDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBgqDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bgqDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBgqDevaIn", "__Internal")] + IntPtr _BgqDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bgqDevaPk) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBgqDevaPk __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bgqDevaPk"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBgqDevaPk", "__Internal")] + IntPtr _BgqDevaPk { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bgxLatnTr) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBgxLatnTr __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bgxLatnTr"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBgxLatnTr", "__Internal")] + IntPtr _BgxLatnTr { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bgzLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBgzLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bgzLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBgzLatnId", "__Internal")] + IntPtr _BgzLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bhbDeva) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBhbDeva __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bhbDeva"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBhbDeva", "__Internal")] + IntPtr _BhbDeva { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bhoDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBhoDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bhoDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBhoDevaIn", "__Internal")] + IntPtr _BhoDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.biLatnVu) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBiLatnVu __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.biLatnVu"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBiLatnVu", "__Internal")] + IntPtr _BiLatnVu { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bikLatnPh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBikLatnPh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bikLatnPh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBikLatnPh", "__Internal")] + IntPtr _BikLatnPh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bjjDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBjjDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bjjDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBjjDevaIn", "__Internal")] + IntPtr _BjjDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bjnLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBjnLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bjnLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBjnLatnId", "__Internal")] + IntPtr _BjnLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBn", "__Internal")] + IntPtr _Bn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bnLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBnLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bnLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBnLatn", "__Internal")] + IntPtr _BnLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.boTibt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBoTibt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.boTibt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBoTibt", "__Internal")] + IntPtr _BoTibt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bomLatnNg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBomLatnNg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bomLatnNg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBomLatnNg", "__Internal")] + IntPtr _BomLatnNg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.brxDeva) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBrxDeva __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.brxDeva"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBrxDeva", "__Internal")] + IntPtr _BrxDeva { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.brxLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBrxLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.brxLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBrxLatn", "__Internal")] + IntPtr _BrxLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bs) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bs"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBs", "__Internal")] + IntPtr _Bs { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.btoLatnPh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBtoLatnPh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.btoLatnPh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBtoLatnPh", "__Internal")] + IntPtr _BtoLatnPh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.btzLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBtzLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.btzLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBtzLatnId", "__Internal")] + IntPtr _BtzLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.bzcLatnMg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierBzcLatnMg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.bzcLatnMg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierBzcLatnMg", "__Internal")] + IntPtr _BzcLatnMg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ca) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierCa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ca"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierCa", "__Internal")] + IntPtr _Ca { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.cebLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierCebLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.cebLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierCebLatn", "__Internal")] + IntPtr _CebLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.cggLatnUg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierCggLatnUg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.cggLatnUg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierCggLatnUg", "__Internal")] + IntPtr _CggLatnUg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.chGu) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierChGu __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.chGu"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierChGu", "__Internal")] + IntPtr _ChGu { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.cjkLatnCd) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierCjkLatnCd __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.cjkLatnCd"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierCjkLatnCd", "__Internal")] + IntPtr _CjkLatnCd { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.coLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierCoLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.coLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierCoLatn", "__Internal")] + IntPtr _CoLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.cpsLatnPh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierCpsLatnPh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.cpsLatnPh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierCpsLatnPh", "__Internal")] + IntPtr _CpsLatnPh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.crsLatnSc) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierCrsLatnSc __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.crsLatnSc"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierCrsLatnSc", "__Internal")] + IntPtr _CrsLatnSc { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.cs) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierCs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.cs"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierCs", "__Internal")] + IntPtr _Cs { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.cy) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierCy __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.cy"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierCy", "__Internal")] + IntPtr _Cy { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.cyoLatnPh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierCyoLatnPh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.cyoLatnPh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierCyoLatnPh", "__Internal")] + IntPtr _CyoLatnPh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.da) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierDa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.da"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierDa", "__Internal")] + IntPtr _Da { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.de) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierDe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.de"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierDe", "__Internal")] + IntPtr _De { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.deAt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierDeAt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.deAt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierDeAt", "__Internal")] + IntPtr _DeAt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.deBe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierDeBe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.deBe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierDeBe", "__Internal")] + IntPtr _DeBe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.deCh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierDeCh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.deCh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierDeCh", "__Internal")] + IntPtr _DeCh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.deDe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierDeDe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.deDe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierDeDe", "__Internal")] + IntPtr _DeDe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.deLu) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierDeLu __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.deLu"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierDeLu", "__Internal")] + IntPtr _DeLu { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.dnjLatnCi) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierDnjLatnCi __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.dnjLatnCi"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierDnjLatnCi", "__Internal")] + IntPtr _DnjLatnCi { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.doiDeva) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierDoiDeva __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.doiDeva"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierDoiDeva", "__Internal")] + IntPtr _DoiDeva { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.doiLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierDoiLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.doiLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierDoiLatn", "__Internal")] + IntPtr _DoiLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.drsLatnEt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierDrsLatnEt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.drsLatnEt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierDrsLatnEt", "__Internal")] + IntPtr _DrsLatnEt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.drtLatnNl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierDrtLatnNl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.drtLatnNl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierDrtLatnNl", "__Internal")] + IntPtr _DrtLatnNl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.dsbDe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierDsbDe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.dsbDe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierDsbDe", "__Internal")] + IntPtr _DsbDe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.el) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.el"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEl", "__Internal")] + IntPtr _El { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.en) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.en"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEn", "__Internal")] + IntPtr _En { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.enAu) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEnAu __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.enAu"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEnAu", "__Internal")] + IntPtr _EnAu { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.enCa) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEnCa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.enCa"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEnCa", "__Internal")] + IntPtr _EnCa { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.enGb) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEnGb __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.enGb"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEnGb", "__Internal")] + IntPtr _EnGb { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.enIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEnIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.enIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEnIn", "__Internal")] + IntPtr _EnIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.enKe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEnKe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.enKe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEnKe", "__Internal")] + IntPtr _EnKe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.enNg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEnNg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.enNg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEnNg", "__Internal")] + IntPtr _EnNg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.enPh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEnPh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.enPh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEnPh", "__Internal")] + IntPtr _EnPh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.enUs) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEnUs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.enUs"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEnUs", "__Internal")] + IntPtr _EnUs { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.enZa) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEnZa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.enZa"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEnZa", "__Internal")] + IntPtr _EnZa { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.eo) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEo __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.eo"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEo", "__Internal")] + IntPtr _Eo { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.es) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.es"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEs", "__Internal")] + IntPtr _Es { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.esAr) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEsAr __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.esAr"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEsAr", "__Internal")] + IntPtr _EsAr { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.esEs) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEsEs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.esEs"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEsEs", "__Internal")] + IntPtr _EsEs { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.esMx) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEsMx __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.esMx"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEsMx", "__Internal")] + IntPtr _EsMx { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.esUs) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEsUs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.esUs"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEsUs", "__Internal")] + IntPtr _EsUs { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.et) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.et"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEt", "__Internal")] + IntPtr _Et { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.etEe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEtEe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.etEe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEtEe", "__Internal")] + IntPtr _EtEe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.eu) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEu __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.eu"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEu", "__Internal")] + IntPtr _Eu { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.euEs) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierEuEs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.euEs"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierEuEs", "__Internal")] + IntPtr _EuEs { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.extLatnEs) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierExtLatnEs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.extLatnEs"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierExtLatnEs", "__Internal")] + IntPtr _ExtLatnEs { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.fa) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierFa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.fa"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierFa", "__Internal")] + IntPtr _Fa { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.fanLatnGq) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierFanLatnGq __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.fanLatnGq"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierFanLatnGq", "__Internal")] + IntPtr _FanLatnGq { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.fi) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierFi __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.fi"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierFi", "__Internal")] + IntPtr _Fi { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.filLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierFilLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.filLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierFilLatn", "__Internal")] + IntPtr _FilLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.fjFj) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierFjFj __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.fjFj"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierFjFj", "__Internal")] + IntPtr _FjFj { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.foFo) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierFoFo __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.foFo"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierFoFo", "__Internal")] + IntPtr _FoFo { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.fr) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierFr __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.fr"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierFr", "__Internal")] + IntPtr _Fr { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.fr002) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierFr002 __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.fr002"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierFr002", "__Internal")] + IntPtr _Fr002 { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.frBe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierFrBe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.frBe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierFrBe", "__Internal")] + IntPtr _FrBe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.frCa) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierFrCa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.frCa"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierFrCa", "__Internal")] + IntPtr _FrCa { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.frCh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierFrCh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.frCh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierFrCh", "__Internal")] + IntPtr _FrCh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.frFr) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierFrFr __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.frFr"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierFrFr", "__Internal")] + IntPtr _FrFr { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.fy) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierFy __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.fy"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierFy", "__Internal")] + IntPtr _Fy { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ga) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ga"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGa", "__Internal")] + IntPtr _Ga { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gaxLatnEt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGaxLatnEt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gaxLatnEt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGaxLatnEt", "__Internal")] + IntPtr _GaxLatnEt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gayLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGayLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gayLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGayLatnId", "__Internal")] + IntPtr _GayLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gbmDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGbmDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gbmDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGbmDevaIn", "__Internal")] + IntPtr _GbmDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gcrLatnGf) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGcrLatnGf __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gcrLatnGf"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGcrLatnGf", "__Internal")] + IntPtr _GcrLatnGf { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gdLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGdLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gdLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGdLatn", "__Internal")] + IntPtr _GdLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gdLatnGb) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGdLatnGb __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gdLatnGb"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGdLatnGb", "__Internal")] + IntPtr _GdLatnGb { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gdxDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGdxDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gdxDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGdxDevaIn", "__Internal")] + IntPtr _GdxDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gjuDeva) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGjuDeva __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gjuDeva"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGjuDeva", "__Internal")] + IntPtr _GjuDeva { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGl", "__Internal")] + IntPtr _Gl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.glEs) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGlEs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.glEs"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGlEs", "__Internal")] + IntPtr _GlEs { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gosLatnNl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGosLatnNl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gosLatnNl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGosLatnNl", "__Internal")] + IntPtr _GosLatnNl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gpeLatnGh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGpeLatnGh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gpeLatnGh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGpeLatnGh", "__Internal")] + IntPtr _GpeLatnGh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gswCh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGswCh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gswCh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGswCh", "__Internal")] + IntPtr _GswCh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gu) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGu __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gu"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGu", "__Internal")] + IntPtr _Gu { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.guLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGuLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.guLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGuLatn", "__Internal")] + IntPtr _GuLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gv) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGv __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gv"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGv", "__Internal")] + IntPtr _Gv { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.gynLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierGynLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.gynLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierGynLatn", "__Internal")] + IntPtr _GynLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.haqLatnTz) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHaqLatnTz __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.haqLatnTz"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHaqLatnTz", "__Internal")] + IntPtr _HaqLatnTz { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hawLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHawLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hawLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHawLatn", "__Internal")] + IntPtr _HawLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hdyLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHdyLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hdyLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHdyLatn", "__Internal")] + IntPtr _HdyLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.he) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.he"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHe", "__Internal")] + IntPtr _He { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hi) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHi __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hi"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHi", "__Internal")] + IntPtr _Hi { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hiLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHiLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hiLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHiLatn", "__Internal")] + IntPtr _HiLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hifDeva) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHifDeva __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hifDeva"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHifDeva", "__Internal")] + IntPtr _HifDeva { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hilLatnPh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHilLatnPh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hilLatnPh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHilLatnPh", "__Internal")] + IntPtr _HilLatnPh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hmnLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHmnLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hmnLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHmnLatn", "__Internal")] + IntPtr _HmnLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hneDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHneDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hneDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHneDevaIn", "__Internal")] + IntPtr _HneDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hniLatnCn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHniLatnCn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hniLatnCn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHniLatnCn", "__Internal")] + IntPtr _HniLatnCn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hoLatnPg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHoLatnPg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hoLatnPg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHoLatnPg", "__Internal")] + IntPtr _HoLatnPg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hojDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHojDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hojDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHojDevaIn", "__Internal")] + IntPtr _HojDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hr) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHr __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hr"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHr", "__Internal")] + IntPtr _Hr { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hrxLatnBr) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHrxLatnBr __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hrxLatnBr"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHrxLatnBr", "__Internal")] + IntPtr _HrxLatnBr { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ht) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ht"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHt", "__Internal")] + IntPtr _Ht { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hu) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHu __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hu"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHu", "__Internal")] + IntPtr _Hu { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.hy) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierHy __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.hy"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierHy", "__Internal")] + IntPtr _Hy { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.id) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.id"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierId", "__Internal")] + IntPtr _Id { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.igbLatnNg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierIgbLatnNg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.igbLatnNg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierIgbLatnNg", "__Internal")] + IntPtr _IgbLatnNg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.iiLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierIiLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.iiLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierIiLatn", "__Internal")] + IntPtr _IiLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.iloLatnPh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierIloLatnPh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.iloLatnPh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierIloLatnPh", "__Internal")] + IntPtr _IloLatnPh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.is) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierIs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.is"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierIs", "__Internal")] + IntPtr _Is { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.it) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierIt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.it"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierIt", "__Internal")] + IntPtr _It { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.itCh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierItCh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.itCh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierItCh", "__Internal")] + IntPtr _ItCh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.itIt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierItIt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.itIt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierItIt", "__Internal")] + IntPtr _ItIt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.iumLatnCn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierIumLatnCn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.iumLatnCn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierIumLatnCn", "__Internal")] + IntPtr _IumLatnCn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ja) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierJa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ja"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierJa", "__Internal")] + IntPtr _Ja { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.jamLatnJm) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierJamLatnJm __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.jamLatnJm"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierJamLatnJm", "__Internal")] + IntPtr _JamLatnJm { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.jaxLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierJaxLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.jaxLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierJaxLatnId", "__Internal")] + IntPtr _JaxLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.jboLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierJboLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.jboLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierJboLatn", "__Internal")] + IntPtr _JboLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.jvLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierJvLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.jvLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierJvLatn", "__Internal")] + IntPtr _JvLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ka) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ka"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKa", "__Internal")] + IntPtr _Ka { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kdeLatnTz) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKdeLatnTz __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kdeLatnTz"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKdeLatnTz", "__Internal")] + IntPtr _KdeLatnTz { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kfrDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKfrDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kfrDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKfrDevaIn", "__Internal")] + IntPtr _KfrDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kfyDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKfyDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kfyDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKfyDevaIn", "__Internal")] + IntPtr _KfyDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kgeLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKgeLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kgeLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKgeLatnId", "__Internal")] + IntPtr _KgeLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.khaLatnIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKhaLatnIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.khaLatnIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKhaLatnIn", "__Internal")] + IntPtr _KhaLatnIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kjLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKjLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kjLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKjLatn", "__Internal")] + IntPtr _KjLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kk) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKk __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kk"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKk", "__Internal")] + IntPtr _Kk { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKl", "__Internal")] + IntPtr _Kl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.km) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKm __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.km"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKm", "__Internal")] + IntPtr _Km { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kmbLatnAo) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKmbLatnAo __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kmbLatnAo"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKmbLatnAo", "__Internal")] + IntPtr _KmbLatnAo { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kmzLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKmzLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kmzLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKmzLatn", "__Internal")] + IntPtr _KmzLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKn", "__Internal")] + IntPtr _Kn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.knLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKnLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.knLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKnLatn", "__Internal")] + IntPtr _KnLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ko) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKo __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ko"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKo", "__Internal")] + IntPtr _Ko { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kok) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKok __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kok"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKok", "__Internal")] + IntPtr _Kok { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kokIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKokIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kokIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKokIn", "__Internal")] + IntPtr _KokIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kokLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKokLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kokLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKokLatn", "__Internal")] + IntPtr _KokLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kruDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKruDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kruDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKruDevaIn", "__Internal")] + IntPtr _KruDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ksDeva) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKsDeva __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ksDeva"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKsDeva", "__Internal")] + IntPtr _KsDeva { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ksLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKsLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ksLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKsLatn", "__Internal")] + IntPtr _KsLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kshLatnDe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKshLatnDe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kshLatnDe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKshLatnDe", "__Internal")] + IntPtr _KshLatnDe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ktbLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKtbLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ktbLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKtbLatn", "__Internal")] + IntPtr _KtbLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ktuLatnCd) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKtuLatnCd __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ktuLatnCd"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKtuLatnCd", "__Internal")] + IntPtr _KtuLatnCd { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kuLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKuLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kuLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKuLatn", "__Internal")] + IntPtr _KuLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kwLatnGb) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKwLatnGb __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kwLatnGb"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKwLatnGb", "__Internal")] + IntPtr _KwLatnGb { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.kyCyrl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierKyCyrl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.kyCyrl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierKyCyrl", "__Internal")] + IntPtr _KyCyrl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.la) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierLa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.la"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierLa", "__Internal")] + IntPtr _La { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ladLatnBa) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierLadLatnBa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ladLatnBa"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierLadLatnBa", "__Internal")] + IntPtr _LadLatnBa { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.lajLatnUg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierLajLatnUg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.lajLatnUg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierLajLatnUg", "__Internal")] + IntPtr _LajLatnUg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.lb) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierLb __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.lb"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierLb", "__Internal")] + IntPtr _Lb { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ledLatnCd) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierLedLatnCd __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ledLatnCd"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierLedLatnCd", "__Internal")] + IntPtr _LedLatnCd { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.lldLatnIt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierLldLatnIt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.lldLatnIt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierLldLatnIt", "__Internal")] + IntPtr _LldLatnIt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.lmnDeva) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierLmnDeva __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.lmnDeva"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierLmnDeva", "__Internal")] + IntPtr _LmnDeva { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.lo) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierLo __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.lo"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierLo", "__Internal")] + IntPtr _Lo { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.lonLatnMw) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierLonLatnMw __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.lonLatnMw"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierLonLatnMw", "__Internal")] + IntPtr _LonLatnMw { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.lt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierLt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.lt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierLt", "__Internal")] + IntPtr _Lt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.luyLatnKe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierLuyLatnKe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.luyLatnKe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierLuyLatnKe", "__Internal")] + IntPtr _LuyLatnKe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.lv) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierLv __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.lv"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierLv", "__Internal")] + IntPtr _Lv { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.madLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMadLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.madLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMadLatnId", "__Internal")] + IntPtr _MadLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.magDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMagDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.magDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMagDevaIn", "__Internal")] + IntPtr _MagDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.maiIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMaiIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.maiIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMaiIn", "__Internal")] + IntPtr _MaiIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.maiLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMaiLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.maiLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMaiLatn", "__Internal")] + IntPtr _MaiLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.masLatnKe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMasLatnKe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.masLatnKe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMasLatnKe", "__Internal")] + IntPtr _MasLatnKe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.maxLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMaxLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.maxLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMaxLatnId", "__Internal")] + IntPtr _MaxLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mdhLatnPh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMdhLatnPh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mdhLatnPh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMdhLatnPh", "__Internal")] + IntPtr _MdhLatnPh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.melLatnMy) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMelLatnMy __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.melLatnMy"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMelLatnMy", "__Internal")] + IntPtr _MelLatnMy { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.meoLatnMy) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMeoLatnMy __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.meoLatnMy"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMeoLatnMy", "__Internal")] + IntPtr _MeoLatnMy { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mfbLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMfbLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mfbLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMfbLatnId", "__Internal")] + IntPtr _MfbLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mfpLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMfpLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mfpLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMfpLatnId", "__Internal")] + IntPtr _MfpLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMg", "__Internal")] + IntPtr _Mg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.miLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMiLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.miLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMiLatn", "__Internal")] + IntPtr _MiLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.minLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMinLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.minLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMinLatnId", "__Internal")] + IntPtr _MinLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mk) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMk __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mk"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMk", "__Internal")] + IntPtr _Mk { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ml) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ml"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMl", "__Internal")] + IntPtr _Ml { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mlLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMlLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mlLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMlLatn", "__Internal")] + IntPtr _MlLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mnCyrl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMnCyrl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mnCyrl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMnCyrl", "__Internal")] + IntPtr _MnCyrl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mniLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMniLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mniLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMniLatn", "__Internal")] + IntPtr _MniLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mqyLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMqyLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mqyLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMqyLatnId", "__Internal")] + IntPtr _MqyLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mr) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMr __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mr"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMr", "__Internal")] + IntPtr _Mr { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mrIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMrIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mrIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMrIn", "__Internal")] + IntPtr _MrIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mrLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMrLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mrLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMrLatn", "__Internal")] + IntPtr _MrLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mrwLatnPh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMrwLatnPh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mrwLatnPh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMrwLatnPh", "__Internal")] + IntPtr _MrwLatnPh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ms) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ms"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMs", "__Internal")] + IntPtr _Ms { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.msBn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMsBn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.msBn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMsBn", "__Internal")] + IntPtr _MsBn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.msMy) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMsMy __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.msMy"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMsMy", "__Internal")] + IntPtr _MsMy { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.msiLatnMy) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMsiLatnMy __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.msiLatnMy"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMsiLatnMy", "__Internal")] + IntPtr _MsiLatnMy { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMt", "__Internal")] + IntPtr _Mt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mtrDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMtrDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mtrDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMtrDevaIn", "__Internal")] + IntPtr _MtrDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.muiLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMuiLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.muiLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMuiLatnId", "__Internal")] + IntPtr _MuiLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mupDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMupDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mupDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMupDevaIn", "__Internal")] + IntPtr _MupDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mveDevaPk) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMveDevaPk __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mveDevaPk"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMveDevaPk", "__Internal")] + IntPtr _MveDevaPk { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mwrDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMwrDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mwrDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMwrDevaIn", "__Internal")] + IntPtr _MwrDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.mwwLatnCn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMwwLatnCn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.mwwLatnCn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMwwLatnCn", "__Internal")] + IntPtr _MwwLatnCn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.my) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMy __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.my"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMy", "__Internal")] + IntPtr _My { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.myxLatnUg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierMyxLatnUg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.myxLatnUg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierMyxLatnUg", "__Internal")] + IntPtr _MyxLatnUg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.nahLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNahLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.nahLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNahLatn", "__Internal")] + IntPtr _NahLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.napLatnIt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNapLatnIt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.napLatnIt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNapLatnIt", "__Internal")] + IntPtr _NapLatnIt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ndcLatnZw) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNdcLatnZw __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ndcLatnZw"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNdcLatnZw", "__Internal")] + IntPtr _NdcLatnZw { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ne) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ne"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNe", "__Internal")] + IntPtr _Ne { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.neIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNeIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.neIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNeIn", "__Internal")] + IntPtr _NeIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.neLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNeLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.neLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNeLatn", "__Internal")] + IntPtr _NeLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.neNp) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNeNp __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.neNp"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNeNp", "__Internal")] + IntPtr _NeNp { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.newDevaNp) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNewDevaNp __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.newDevaNp"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNewDevaNp", "__Internal")] + IntPtr _NewDevaNp { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ngLatnNa) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNgLatnNa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ngLatnNa"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNgLatnNa", "__Internal")] + IntPtr _NgLatnNa { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ngaLatnCd) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNgaLatnCd __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ngaLatnCd"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNgaLatnCd", "__Internal")] + IntPtr _NgaLatnCd { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.niqLatnKe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNiqLatnKe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.niqLatnKe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNiqLatnKe", "__Internal")] + IntPtr _NiqLatnKe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.nlBe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNlBe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.nlBe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNlBe", "__Internal")] + IntPtr _NlBe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.nlNl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNlNl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.nlNl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNlNl", "__Internal")] + IntPtr _NlNl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.nnNo) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNnNo __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.nnNo"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNnNo", "__Internal")] + IntPtr _NnNo { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.no) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNo __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.no"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNo", "__Internal")] + IntPtr _No { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.noeDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNoeDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.noeDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNoeDevaIn", "__Internal")] + IntPtr _NoeDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.nrZa) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNrZa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.nrZa"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNrZa", "__Internal")] + IntPtr _NrZa { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.nso) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNso __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.nso"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNso", "__Internal")] + IntPtr _Nso { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ny) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNy __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ny"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNy", "__Internal")] + IntPtr _Ny { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.nymLatnTz) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNymLatnTz __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.nymLatnTz"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNymLatnTz", "__Internal")] + IntPtr _NymLatnTz { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.nyoLatnUg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierNyoLatnUg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.nyoLatnUg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierNyoLatnUg", "__Internal")] + IntPtr _NyoLatnUg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ocLatnFr) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierOcLatnFr __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ocLatnFr"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierOcLatnFr", "__Internal")] + IntPtr _OcLatnFr { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ojLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierOjLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ojLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierOjLatn", "__Internal")] + IntPtr _OjLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.oloLatnRu) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierOloLatnRu __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.oloLatnRu"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierOloLatnRu", "__Internal")] + IntPtr _OloLatnRu { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.om) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierOm __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.om"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierOm", "__Internal")] + IntPtr _Om { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.or) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierOr __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.or"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierOr", "__Internal")] + IntPtr _Or { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.orLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierOrLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.orLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierOrLatn", "__Internal")] + IntPtr _OrLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.pa) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.pa"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPa", "__Internal")] + IntPtr _Pa { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.paLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPaLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.paLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPaLatn", "__Internal")] + IntPtr _PaLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.pagLatnPh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPagLatnPh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.pagLatnPh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPagLatnPh", "__Internal")] + IntPtr _PagLatnPh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.pamLatnPh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPamLatnPh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.pamLatnPh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPamLatnPh", "__Internal")] + IntPtr _PamLatnPh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.papLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPapLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.papLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPapLatn", "__Internal")] + IntPtr _PapLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.pccLatnCn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPccLatnCn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.pccLatnCn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPccLatnCn", "__Internal")] + IntPtr _PccLatnCn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.pcdLatnBe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPcdLatnBe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.pcdLatnBe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPcdLatnBe", "__Internal")] + IntPtr _PcdLatnBe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.pcmLatnNg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPcmLatnNg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.pcmLatnNg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPcmLatnNg", "__Internal")] + IntPtr _PcmLatnNg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.pkoLatnKe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPkoLatnKe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.pkoLatnKe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPkoLatnKe", "__Internal")] + IntPtr _PkoLatnKe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.pl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.pl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPl", "__Internal")] + IntPtr _Pl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.pmsLatnIt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPmsLatnIt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.pmsLatnIt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPmsLatnIt", "__Internal")] + IntPtr _PmsLatnIt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.pmyLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPmyLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.pmyLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPmyLatnId", "__Internal")] + IntPtr _PmyLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.povLatnGw) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPovLatnGw __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.povLatnGw"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPovLatnGw", "__Internal")] + IntPtr _PovLatnGw { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.prkLatnMm) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPrkLatnMm __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.prkLatnMm"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPrkLatnMm", "__Internal")] + IntPtr _PrkLatnMm { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.pseLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPseLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.pseLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPseLatnId", "__Internal")] + IntPtr _PseLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.pt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.pt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPt", "__Internal")] + IntPtr _Pt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.pt002) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPt002 __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.pt002"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPt002", "__Internal")] + IntPtr _Pt002 { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ptBr) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPtBr __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ptBr"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPtBr", "__Internal")] + IntPtr _PtBr { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ptPt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierPtPt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ptPt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierPtPt", "__Internal")] + IntPtr _PtPt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.quPe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierQuPe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.quPe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierQuPe", "__Internal")] + IntPtr _QuPe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.qucLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierQucLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.qucLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierQucLatn", "__Internal")] + IntPtr _QucLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.rcfLatnRe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierRcfLatnRe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.rcfLatnRe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierRcfLatnRe", "__Internal")] + IntPtr _RcfLatnRe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.rktDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierRktDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.rktDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierRktDevaIn", "__Internal")] + IntPtr _RktDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.rmCh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierRmCh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.rmCh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierRmCh", "__Internal")] + IntPtr _RmCh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.rnBi) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierRnBi __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.rnBi"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierRnBi", "__Internal")] + IntPtr _RnBi { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.roRo) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierRoRo __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.roRo"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierRoRo", "__Internal")] + IntPtr _RoRo { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ru) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierRu __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ru"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierRu", "__Internal")] + IntPtr _Ru { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.rwrDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierRwrDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.rwrDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierRwrDevaIn", "__Internal")] + IntPtr _RwrDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.saDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSaDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.saDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSaDevaIn", "__Internal")] + IntPtr _SaDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.saLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSaLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.saLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSaLatn", "__Internal")] + IntPtr _SaLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.satDeva) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSatDeva __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.satDeva"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSatDeva", "__Internal")] + IntPtr _SatDeva { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.satLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSatLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.satLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSatLatn", "__Internal")] + IntPtr _SatLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.scLatnIt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierScLatnIt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.scLatnIt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierScLatnIt", "__Internal")] + IntPtr _ScLatnIt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sckDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSckDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sckDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSckDevaIn", "__Internal")] + IntPtr _SckDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.scoLatnGb) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierScoLatnGb __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.scoLatnGb"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierScoLatnGb", "__Internal")] + IntPtr _ScoLatnGb { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sdDeva) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSdDeva __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sdDeva"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSdDeva", "__Internal")] + IntPtr _SdDeva { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sdLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSdLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sdLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSdLatn", "__Internal")] + IntPtr _SdLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sdcLatnIt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSdcLatnIt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sdcLatnIt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSdcLatnIt", "__Internal")] + IntPtr _SdcLatnIt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sgCf) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSgCf __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sgCf"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSgCf", "__Internal")] + IntPtr _SgCf { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sgcLatnKe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSgcLatnKe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sgcLatnKe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSgcLatnKe", "__Internal")] + IntPtr _SgcLatnKe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sgjDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSgjDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sgjDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSgjDevaIn", "__Internal")] + IntPtr _SgjDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sgsLatnLt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSgsLatnLt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sgsLatnLt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSgsLatnLt", "__Internal")] + IntPtr _SgsLatnLt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.si) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSi __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.si"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSi", "__Internal")] + IntPtr _Si { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sk) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSk __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sk"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSk", "__Internal")] + IntPtr _Sk { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.skgLatnMg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSkgLatnMg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.skgLatnMg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSkgLatnMg", "__Internal")] + IntPtr _SkgLatnMg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSl", "__Internal")] + IntPtr _Sl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sm) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSm __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sm"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSm", "__Internal")] + IntPtr _Sm { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.snLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSnLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.snLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSnLatn", "__Internal")] + IntPtr _SnLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.so) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSo __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.so"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSo", "__Internal")] + IntPtr _So { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sq) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSq __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sq"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSq", "__Internal")] + IntPtr _Sq { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.srCyrl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSrCyrl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.srCyrl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSrCyrl", "__Internal")] + IntPtr _SrCyrl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.srLatnRs) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSrLatnRs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.srLatnRs"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSrLatnRs", "__Internal")] + IntPtr _SrLatnRs { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ssSz) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSsSz __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ssSz"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSsSz", "__Internal")] + IntPtr _SsSz { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.stvLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierStvLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.stvLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierStvLatn", "__Internal")] + IntPtr _StvLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.suLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSuLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.suLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSuLatn", "__Internal")] + IntPtr _SuLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sukLatnTz) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSukLatnTz __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sukLatnTz"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSukLatnTz", "__Internal")] + IntPtr _SukLatnTz { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.svFi) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSvFi __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.svFi"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSvFi", "__Internal")] + IntPtr _SvFi { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.svSe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSvSe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.svSe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSvSe", "__Internal")] + IntPtr _SvSe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sw) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSw __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sw"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSw", "__Internal")] + IntPtr _Sw { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.swvDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSwvDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.swvDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSwvDevaIn", "__Internal")] + IntPtr _SwvDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sxuLatnDe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSxuLatnDe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sxuLatnDe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSxuLatnDe", "__Internal")] + IntPtr _SxuLatnDe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.sylLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierSylLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.sylLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierSylLatn", "__Internal")] + IntPtr _SylLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ta) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTa __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ta"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTa", "__Internal")] + IntPtr _Ta { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.taLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTaLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.taLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTaLatn", "__Internal")] + IntPtr _TaLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.tdxLatnMg) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTdxLatnMg __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.tdxLatnMg"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTdxLatnMg", "__Internal")] + IntPtr _TdxLatnMg { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.te) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.te"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTe", "__Internal")] + IntPtr _Te { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.teLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTeLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.teLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTeLatn", "__Internal")] + IntPtr _TeLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.tetLatnTl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTetLatnTl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.tetLatnTl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTetLatnTl", "__Internal")] + IntPtr _TetLatnTl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.tgCyrl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTgCyrl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.tgCyrl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTgCyrl", "__Internal")] + IntPtr _TgCyrl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.th) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.th"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTh", "__Internal")] + IntPtr _Th { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ti) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTi __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ti"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTi", "__Internal")] + IntPtr _Ti { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.tkLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTkLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.tkLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTkLatn", "__Internal")] + IntPtr _TkLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.tnBw) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTnBw __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.tnBw"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTnBw", "__Internal")] + IntPtr _TnBw { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.tpi) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTpi __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.tpi"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTpi", "__Internal")] + IntPtr _Tpi { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.trTr) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTrTr __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.trTr"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTrTr", "__Internal")] + IntPtr _TrTr { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.trfLatnTt) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTrfLatnTt __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.trfLatnTt"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTrfLatnTt", "__Internal")] + IntPtr _TrfLatnTt { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.trpLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTrpLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.trpLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTrpLatn", "__Internal")] + IntPtr _TrpLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ts) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTs __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ts"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTs", "__Internal")] + IntPtr _Ts { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.tsgLatnPh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTsgLatnPh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.tsgLatnPh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTsgLatnPh", "__Internal")] + IntPtr _TsgLatnPh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.tumLatnMw) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTumLatnMw __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.tumLatnMw"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTumLatnMw", "__Internal")] + IntPtr _TumLatnMw { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.tuvLatnKe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTuvLatnKe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.tuvLatnKe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTuvLatnKe", "__Internal")] + IntPtr _TuvLatnKe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.twdLatnNl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierTwdLatnNl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.twdLatnNl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierTwdLatnNl", "__Internal")] + IntPtr _TwdLatnNl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.uk) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierUk __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.uk"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierUk", "__Internal")] + IntPtr _Uk { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.unrDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierUnrDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.unrDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierUnrDevaIn", "__Internal")] + IntPtr _UnrDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.unrLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierUnrLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.unrLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierUnrLatn", "__Internal")] + IntPtr _UnrLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ur) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierUr __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ur"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierUr", "__Internal")] + IntPtr _Ur { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.urLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierUrLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.urLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierUrLatn", "__Internal")] + IntPtr _UrLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.urPk) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierUrPk __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.urPk"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierUrPk", "__Internal")] + IntPtr _UrPk { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.uzLatn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierUzLatn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.uzLatn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierUzLatn", "__Internal")] + IntPtr _UzLatn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.velLatnNl) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierVelLatnNl __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.velLatnNl"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierVelLatnNl", "__Internal")] + IntPtr _VelLatnNl { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.vepLatnRu) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierVepLatnRu __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.vepLatnRu"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierVepLatnRu", "__Internal")] + IntPtr _VepLatnRu { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.vi) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierVi __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.vi"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierVi", "__Internal")] + IntPtr _Vi { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.vktLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierVktLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.vktLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierVktLatnId", "__Internal")] + IntPtr _VktLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.waLatnBe) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierWaLatnBe __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.waLatnBe"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierWaLatnBe", "__Internal")] + IntPtr _WaLatnBe { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.wbrDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierWbrDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.wbrDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierWbrDevaIn", "__Internal")] + IntPtr _WbrDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.wryDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierWryDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.wryDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierWryDevaIn", "__Internal")] + IntPtr _WryDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.xh) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierXh __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.xh"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierXh", "__Internal")] + IntPtr _Xh { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.xmmLatnId) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierXmmLatnId __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.xmmLatnId"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierXmmLatnId", "__Internal")] + IntPtr _XmmLatnId { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.xnrDevaIn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierXnrDevaIn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.xnrDevaIn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierXnrDevaIn", "__Internal")] + IntPtr _XnrDevaIn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.ymmLatnSo) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierYmmLatnSo __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.ymmLatnSo"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierYmmLatnSo", "__Internal")] + IntPtr _YmmLatnSo { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.zaLatnCn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierZaLatnCn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.zaLatnCn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierZaLatnCn", "__Internal")] + IntPtr _ZaLatnCn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.zhHani) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierZhHani __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.zhHani"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierZhHani", "__Internal")] + IntPtr _ZhHani { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.zhHaniCn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierZhHaniCn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.zhHaniCn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierZhHaniCn", "__Internal")] + IntPtr _ZhHaniCn { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.zhHaniHk) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierZhHaniHk __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.zhHaniHk"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierZhHaniHk", "__Internal")] + IntPtr _ZhHaniHk { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.zhHaniTw) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierZhHaniTw __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.zhHaniTw"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierZhHaniTw", "__Internal")] + IntPtr _ZhHaniTw { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.zu) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierZu __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.zu"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierZu", "__Internal")] + IntPtr _Zu { get; } + + // extern NS_SWIFT_NAME(DigitalInkRecognitionModelIdentifier.zyjLatnCn) MLKDigitalInkRecognitionModelIdentifier *const MLKDigitalInkRecognitionModelIdentifierZyjLatnCn __attribute__((swift_name("DigitalInkRecognitionModelIdentifier.zyjLatnCn"))); + [Internal] + [Field ("MLKDigitalInkRecognitionModelIdentifierZyjLatnCn", "__Internal")] + IntPtr _ZyjLatnCn { get; } + } + #endregion + + // @interface MLKDigitalInkRecognitionCandidate : NSObject + [BaseType (typeof (NSObject), Name = "MLKDigitalInkRecognitionCandidate")] + [DisableDefaultCtor] + interface DigitalInkRecognitionCandidate { + // @property (readonly, nonatomic) NSString * _Nonnull text; + [Export ("text")] + string Text { get; } + + // @property (readonly, nonatomic) NSNumber * _Nullable score; + [NullAllowed, Export ("score")] + NSNumber Score { get; } + } + + // @interface MLKDigitalInkRecognitionContext : NSObject + [BaseType (typeof (NSObject), Name = "MLKDigitalInkRecognitionContext")] + [DisableDefaultCtor] + interface DigitalInkRecognitionContext { + // @property (readonly, nonatomic) NSString * _Nullable preContext; + [NullAllowed, Export ("preContext")] + string PreContext { get; } + + // @property (readonly, nonatomic) MLKWritingArea * _Nullable writingArea; + [NullAllowed, Export ("writingArea")] + WritingArea WritingArea { get; } + + // -(instancetype _Nonnull)initWithPreContext:(NSString * _Nullable)preContext writingArea:(MLKWritingArea * _Nullable)writingArea __attribute__((objc_designated_initializer)); + [Export ("initWithPreContext:writingArea:")] + [DesignatedInitializer] + IntPtr Constructor ([NullAllowed] string preContext, [NullAllowed] WritingArea writingArea); + } + + // @interface MLKDigitalInkRecognitionModelIdentifier : NSObject + [BaseType (typeof (NSObject), Name = "MLKDigitalInkRecognitionModelIdentifier")] + [DisableDefaultCtor] + interface DigitalInkRecognitionModelIdentifier : INativeObject { + // @property (readonly, nonatomic) NSString * _Nonnull languageTag; + [Export ("languageTag")] + string LanguageTag { get; } + + // @property (readonly, nonatomic) NSString * _Nonnull languageSubtag; + [Export ("languageSubtag")] + string LanguageSubtag { get; } + + // @property (readonly, nonatomic) NSString * _Nullable scriptSubtag; + [NullAllowed, Export ("scriptSubtag")] + string ScriptSubtag { get; } + + // @property (readonly, nonatomic) NSString * _Nullable regionSubtag; + [NullAllowed, Export ("regionSubtag")] + string RegionSubtag { get; } + + // +(MLKDigitalInkRecognitionModelIdentifier * _Nullable)modelIdentifierFromLanguageTag:(NSString * _Nonnull)languageTag error:(NSError * _Nullable * _Nullable)error __attribute__((swift_name("from(languageTag:)"))); + [Static] + [Export ("modelIdentifierFromLanguageTag:error:")] + [return: NullAllowed] + DigitalInkRecognitionModelIdentifier ModelIdentifierFromLanguageTag (string languageTag, [NullAllowed] out NSError error); + + // +(MLKDigitalInkRecognitionModelIdentifier * _Nullable)modelIdentifierForLanguageTag:(NSString * _Nonnull)languageTag; + [Static] + [Export ("modelIdentifierForLanguageTag:")] + [return: NullAllowed] + DigitalInkRecognitionModelIdentifier ModelIdentifierForLanguageTag (string languageTag); + + // +(NSSet * _Nonnull)allModelIdentifiers; + [Static] + [Export ("allModelIdentifiers")] + NSSet AllModelIdentifiers { get; } + + // +(NSSet * _Nonnull)modelIdentifiersForLanguageSubtag:(NSString * _Nonnull)languageSubtag; + [Static] + [Export ("modelIdentifiersForLanguageSubtag:")] + NSSet ModelIdentifiersForLanguageSubtag (string languageSubtag); + + // +(NSSet * _Nonnull)modelIdentifiersForScriptSubtag:(NSString * _Nonnull)scriptSubtag; + [Static] + [Export ("modelIdentifiersForScriptSubtag:")] + NSSet ModelIdentifiersForScriptSubtag (string scriptSubtag); + + // +(NSSet * _Nonnull)modelIdentifiersForRegionSubtag:(NSString * _Nonnull)regionSubtag; + [Static] + [Export ("modelIdentifiersForRegionSubtag:")] + NSSet ModelIdentifiersForRegionSubtag (string regionSubtag); + } + + // @interface MLKDigitalInkRecognitionModel : MLKRemoteModel + [BaseType (typeof (RemoteModel), Name = "MLKDigitalInkRecognitionModel")] + [DisableDefaultCtor] + interface DigitalInkRecognitionModel { + // @property (readonly, nonatomic) MLKDigitalInkRecognitionModelIdentifier * _Nonnull modelIdentifier; + [Export ("modelIdentifier")] + DigitalInkRecognitionModelIdentifier ModelIdentifier { get; } + + // -(instancetype _Nonnull)initWithModelIdentifier:(MLKDigitalInkRecognitionModelIdentifier * _Nonnull)modelIdentifier __attribute__((swift_name("init(modelIdentifier:)"))); + [Export ("initWithModelIdentifier:")] + IntPtr Constructor (DigitalInkRecognitionModelIdentifier modelIdentifier); + } + + // @interface MLKDigitalInkRecognitionResult : NSObject + [BaseType (typeof (NSObject), Name = "MLKDigitalInkRecognitionResult")] + [DisableDefaultCtor] + interface DigitalInkRecognitionResult { + // @property (readonly, nonatomic) NSArray * _Nonnull candidates; + [Export ("candidates")] + DigitalInkRecognitionCandidate [] Candidates { get; } + } + + // typedef void (^MLKDigitalInkRecognizerCallback)(MLKDigitalInkRecognitionResult * _Nullable, NSError * _Nullable); + delegate void DigitalInkRecognizerCallback ([NullAllowed] DigitalInkRecognitionResult result, [NullAllowed] NSError error); + + // @interface MLKDigitalInkRecognizer : NSObject + [BaseType (typeof (NSObject), Name = "MLKDigitalInkRecognizer")] + [DisableDefaultCtor] + interface DigitalInkRecognizer { + // +(MLKDigitalInkRecognizer * _Nonnull)digitalInkRecognizerWithOptions:(MLKDigitalInkRecognizerOptions * _Nonnull)options __attribute__((swift_name("digitalInkRecognizer(options:)"))); + [Static] + [Export ("digitalInkRecognizerWithOptions:")] + DigitalInkRecognizer DigitalInkRecognizerWithOptions (DigitalInkRecognizerOptions options); + + // -(void)recognizeInk:(MLKInk * _Nonnull)ink completion:(MLKDigitalInkRecognizerCallback _Nonnull)completion __attribute__((swift_name("recognize(ink:completion:)"))); + [Export ("recognizeInk:completion:")] + void RecognizeInk (Ink ink, DigitalInkRecognizerCallback completion); + + // -(void)recognizeInk:(MLKInk * _Nonnull)ink context:(MLKDigitalInkRecognitionContext * _Nonnull)context completion:(MLKDigitalInkRecognizerCallback _Nonnull)completion __attribute__((swift_name("recognize(ink:context:completion:)"))); + [Export ("recognizeInk:context:completion:")] + void RecognizeInk (Ink ink, DigitalInkRecognitionContext context, DigitalInkRecognizerCallback completion); + } + + // @interface MLKDigitalInkRecognizerOptions : NSObject + [BaseType (typeof (NSObject), Name = "MLKDigitalInkRecognizerOptions")] + [DisableDefaultCtor] + interface DigitalInkRecognizerOptions { + // @property (readonly, nonatomic) MLKDigitalInkRecognitionModel * _Nonnull model; + [Export ("model")] + DigitalInkRecognitionModel Model { get; } + + // @property (nonatomic) int maxResultCount; + [Export ("maxResultCount")] + int MaxResultCount { get; set; } + + // -(instancetype _Nonnull)initWithModel:(MLKDigitalInkRecognitionModel * _Nonnull)model __attribute__((objc_designated_initializer)); + [Export ("initWithModel:")] + [DesignatedInitializer] + IntPtr Constructor (DigitalInkRecognitionModel model); + } + + // @interface MLKStrokePoint : NSObject + [BaseType (typeof (NSObject), Name = "MLKStrokePoint")] + [DisableDefaultCtor] + interface StrokePoint { + // @property (readonly, nonatomic) float x; + [Export ("x")] + float X { get; } + + // @property (readonly, nonatomic) float y; + [Export ("y")] + float Y { get; } + + // @property (readonly, nonatomic) NSNumber * _Nullable t; + [NullAllowed, Export ("t")] + NSNumber T { get; } + + // -(instancetype _Nonnull)initWithX:(float)x y:(float)y t:(long)t; + [Export ("initWithX:y:t:")] + IntPtr Constructor (float x, float y, nint t); + + // -(instancetype _Nonnull)initWithX:(float)x y:(float)y; + [Export ("initWithX:y:")] + IntPtr Constructor (float x, float y); + } + + // @interface MLKStroke : NSObject + [BaseType (typeof (NSObject), Name = "MLKStroke")] + [DisableDefaultCtor] + interface Stroke { + // @property (readonly, nonatomic) NSArray * _Nonnull points; + [Export ("points")] + StrokePoint [] Points { get; } + + // -(instancetype _Nonnull)initWithPoints:(NSArray * _Nonnull)points __attribute__((objc_designated_initializer)); + [Export ("initWithPoints:")] + [DesignatedInitializer] + IntPtr Constructor (StrokePoint [] points); + } + + // @interface MLKInk : NSObject + [BaseType (typeof (NSObject), Name = "MLKInk")] + [DisableDefaultCtor] + interface Ink { + // @property (readonly, nonatomic) NSArray * _Nonnull strokes; + [Export ("strokes")] + Stroke [] Strokes { get; } + + // -(instancetype _Nonnull)initWithStrokes:(NSArray * _Nonnull)strokes __attribute__((objc_designated_initializer)); + [Export ("initWithStrokes:")] + [DesignatedInitializer] + IntPtr Constructor (Stroke [] strokes); + } + + // @interface MLKWritingArea : NSObject + [BaseType (typeof (NSObject), Name = "MLKWritingArea")] + [DisableDefaultCtor] + interface WritingArea { + // @property (readonly, nonatomic) float width; + [Export ("width")] + float Width { get; } + + // @property (readonly, nonatomic) float height; + [Export ("height")] + float Height { get; } + + // -(instancetype _Nonnull)initWithWidth:(float)width height:(float)height __attribute__((objc_designated_initializer)); + [Export ("initWithWidth:height:")] + [DesignatedInitializer] + IntPtr Constructor (float width, float height); + } +} diff --git a/source/MLKit/DigitalInkRecognition/DigitalInkRecognition.csproj b/source/MLKit/DigitalInkRecognition/DigitalInkRecognition.csproj new file mode 100644 index 000000000..d98012643 --- /dev/null +++ b/source/MLKit/DigitalInkRecognition/DigitalInkRecognition.csproj @@ -0,0 +1,67 @@ + + + + Xamarin.iOS10 + true + MLKit.DigitalInkRecognition + MLKit.DigitalInkRecognition + 1.0.0.0 + 1.0.0 + Resources + true + + + + Xamarin.MLKit.iOS.DigitalInkRecognition + MLKit APIs Digital Ink Recognition iOS Library + C# bindings for MLKit APIs Digital Ink Recognition iOS Library + C# bindings for MLKit APIs Digital Ink Recognition iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseioscore_128x128.png + https://go.microsoft.com/fwlink/?linkid=2007321 + License.md + true + 1.0.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/MLKit/DigitalInkRecognition/DigitalInkRecognition.targets b/source/MLKit/DigitalInkRecognition/DigitalInkRecognition.targets new file mode 100644 index 000000000..b97ae623a --- /dev/null +++ b/source/MLKit/DigitalInkRecognition/DigitalInkRecognition.targets @@ -0,0 +1,38 @@ + + + + <_MLKitInkAssemblyName>MLKit.DigitalInkRecognition, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_MLKitInkItemsFolder>MLKInk-1.5.0 + <_MLKitInkSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitInkItemsFolder)\ + <_MLKitInkResourcesFolder>$(XamarinBuildDownloadDir)$(_MLKitInkItemsFolder)\Resources\MLKitDigitalInkRecognition_resource\ + + + + https://dl.google.com/dl/cpdc/1a57efb28f1de779/MLKitDigitalInkRecognition-1.5.0.tar.gz + Tgz + + + + + + + + Framework + True + True + -lc++ -lz + Foundation + + + + + MLKitDigitalInkRecognition_resource.bundle\manifest.json + False + + + MLKitDigitalInkRecognition_resource.bundle\packmapping.pb + False + + + + \ No newline at end of file diff --git a/source/MLKit/DigitalInkRecognition/Enums.cs b/source/MLKit/DigitalInkRecognition/Enums.cs new file mode 100644 index 000000000..2e5945e47 --- /dev/null +++ b/source/MLKit/DigitalInkRecognition/Enums.cs @@ -0,0 +1,5 @@ +using System; +using ObjCRuntime; + +namespace MLKit.DigitalInkRecognition { +} diff --git a/source/MLKit/DigitalInkRecognition/Extensions.cs b/source/MLKit/DigitalInkRecognition/Extensions.cs new file mode 100644 index 000000000..62feb62c8 --- /dev/null +++ b/source/MLKit/DigitalInkRecognition/Extensions.cs @@ -0,0 +1,1111 @@ +using System; +using System.Collections.Generic; + +using Foundation; +using CoreGraphics; +using UIKit; + +namespace MLKit.DigitalInkRecognition { + public partial class ModelIdentifiers { + static DigitalInkRecognitionModelIdentifier _autodraw; + public static DigitalInkRecognitionModelIdentifier Autodraw => GetModelIdentifier (ref _autodraw, ModelIdentifiers._Autodraw); + + static DigitalInkRecognitionModelIdentifier _emoji; + public static DigitalInkRecognitionModelIdentifier Emoji => GetModelIdentifier (ref _emoji, ModelIdentifiers._Emoji); + + static DigitalInkRecognitionModelIdentifier _shapes; + public static DigitalInkRecognitionModelIdentifier Shapes => GetModelIdentifier (ref _shapes, ModelIdentifiers._Shapes); + + static DigitalInkRecognitionModelIdentifier _aaLatn; + public static DigitalInkRecognitionModelIdentifier AaLatn => GetModelIdentifier (ref _aaLatn, ModelIdentifiers._AaLatn); + + static DigitalInkRecognitionModelIdentifier _absLatnId; + public static DigitalInkRecognitionModelIdentifier AbsLatnId => GetModelIdentifier (ref _absLatnId, ModelIdentifiers._AbsLatnId); + + static DigitalInkRecognitionModelIdentifier _aceLatnId; + public static DigitalInkRecognitionModelIdentifier AceLatnId => GetModelIdentifier (ref _aceLatnId, ModelIdentifiers._AceLatnId); + + static DigitalInkRecognitionModelIdentifier _actLatnNl; + public static DigitalInkRecognitionModelIdentifier ActLatnNl => GetModelIdentifier (ref _actLatnNl, ModelIdentifiers._ActLatnNl); + + static DigitalInkRecognitionModelIdentifier _af; + public static DigitalInkRecognitionModelIdentifier Af => GetModelIdentifier (ref _af, ModelIdentifiers._Af); + + static DigitalInkRecognitionModelIdentifier _am; + public static DigitalInkRecognitionModelIdentifier Am => GetModelIdentifier (ref _am, ModelIdentifiers._Am); + + static DigitalInkRecognitionModelIdentifier _anLatnEs; + public static DigitalInkRecognitionModelIdentifier AnLatnEs => GetModelIdentifier (ref _anLatnEs, ModelIdentifiers._AnLatnEs); + + static DigitalInkRecognitionModelIdentifier _anwLatnNg; + public static DigitalInkRecognitionModelIdentifier AnwLatnNg => GetModelIdentifier (ref _anwLatnNg, ModelIdentifiers._AnwLatnNg); + + static DigitalInkRecognitionModelIdentifier _ar; + public static DigitalInkRecognitionModelIdentifier Ar => GetModelIdentifier (ref _ar, ModelIdentifiers._Ar); + + static DigitalInkRecognitionModelIdentifier _as; + public static DigitalInkRecognitionModelIdentifier As => GetModelIdentifier (ref _as, ModelIdentifiers._As); + + static DigitalInkRecognitionModelIdentifier _awaDevaIn; + public static DigitalInkRecognitionModelIdentifier AwaDevaIn => GetModelIdentifier (ref _awaDevaIn, ModelIdentifiers._AwaDevaIn); + + static DigitalInkRecognitionModelIdentifier _azLatnAz; + public static DigitalInkRecognitionModelIdentifier AzLatnAz => GetModelIdentifier (ref _azLatnAz, ModelIdentifiers._AzLatnAz); + + static DigitalInkRecognitionModelIdentifier _bahLatnBs; + public static DigitalInkRecognitionModelIdentifier BahLatnBs => GetModelIdentifier (ref _bahLatnBs, ModelIdentifiers._BahLatnBs); + + static DigitalInkRecognitionModelIdentifier _barLatnAt; + public static DigitalInkRecognitionModelIdentifier BarLatnAt => GetModelIdentifier (ref _barLatnAt, ModelIdentifiers._BarLatnAt); + + static DigitalInkRecognitionModelIdentifier _bcqLatnEt; + public static DigitalInkRecognitionModelIdentifier BcqLatnEt => GetModelIdentifier (ref _bcqLatnEt, ModelIdentifiers._BcqLatnEt); + + static DigitalInkRecognitionModelIdentifier _be; + public static DigitalInkRecognitionModelIdentifier Be => GetModelIdentifier (ref _be, ModelIdentifiers._Be); + + static DigitalInkRecognitionModelIdentifier _berLatn; + public static DigitalInkRecognitionModelIdentifier BerLatn => GetModelIdentifier (ref _berLatn, ModelIdentifiers._BerLatn); + + static DigitalInkRecognitionModelIdentifier _bewLatnId; + public static DigitalInkRecognitionModelIdentifier BewLatnId => GetModelIdentifier (ref _bewLatnId, ModelIdentifiers._BewLatnId); + + static DigitalInkRecognitionModelIdentifier _bfyDevaIn; + public static DigitalInkRecognitionModelIdentifier BfyDevaIn => GetModelIdentifier (ref _bfyDevaIn, ModelIdentifiers._BfyDevaIn); + + static DigitalInkRecognitionModelIdentifier _bfzDevaIn; + public static DigitalInkRecognitionModelIdentifier BfzDevaIn => GetModelIdentifier (ref _bfzDevaIn, ModelIdentifiers._BfzDevaIn); + + static DigitalInkRecognitionModelIdentifier _bg; + public static DigitalInkRecognitionModelIdentifier Bg => GetModelIdentifier (ref _bg, ModelIdentifiers._Bg); + + static DigitalInkRecognitionModelIdentifier _bgcDevaIn; + public static DigitalInkRecognitionModelIdentifier BgcDevaIn => GetModelIdentifier (ref _bgcDevaIn, ModelIdentifiers._BgcDevaIn); + + static DigitalInkRecognitionModelIdentifier _bgqDevaIn; + public static DigitalInkRecognitionModelIdentifier BgqDevaIn => GetModelIdentifier (ref _bgqDevaIn, ModelIdentifiers._BgqDevaIn); + + static DigitalInkRecognitionModelIdentifier _bgqDevaPk; + public static DigitalInkRecognitionModelIdentifier BgqDevaPk => GetModelIdentifier (ref _bgqDevaPk, ModelIdentifiers._BgqDevaPk); + + static DigitalInkRecognitionModelIdentifier _bgxLatnTr; + public static DigitalInkRecognitionModelIdentifier BgxLatnTr => GetModelIdentifier (ref _bgxLatnTr, ModelIdentifiers._BgxLatnTr); + + static DigitalInkRecognitionModelIdentifier _bgzLatnId; + public static DigitalInkRecognitionModelIdentifier BgzLatnId => GetModelIdentifier (ref _bgzLatnId, ModelIdentifiers._BgzLatnId); + + static DigitalInkRecognitionModelIdentifier _bhbDeva; + public static DigitalInkRecognitionModelIdentifier BhbDeva => GetModelIdentifier (ref _bhbDeva, ModelIdentifiers._BhbDeva); + + static DigitalInkRecognitionModelIdentifier _bhoDevaIn; + public static DigitalInkRecognitionModelIdentifier BhoDevaIn => GetModelIdentifier (ref _bhoDevaIn, ModelIdentifiers._BhoDevaIn); + + static DigitalInkRecognitionModelIdentifier _biLatnVu; + public static DigitalInkRecognitionModelIdentifier BiLatnVu => GetModelIdentifier (ref _biLatnVu, ModelIdentifiers._BiLatnVu); + + static DigitalInkRecognitionModelIdentifier _bikLatnPh; + public static DigitalInkRecognitionModelIdentifier BikLatnPh => GetModelIdentifier (ref _bikLatnPh, ModelIdentifiers._BikLatnPh); + + static DigitalInkRecognitionModelIdentifier _bjjDevaIn; + public static DigitalInkRecognitionModelIdentifier BjjDevaIn => GetModelIdentifier (ref _bjjDevaIn, ModelIdentifiers._BjjDevaIn); + + static DigitalInkRecognitionModelIdentifier _bjnLatnId; + public static DigitalInkRecognitionModelIdentifier BjnLatnId => GetModelIdentifier (ref _bjnLatnId, ModelIdentifiers._BjnLatnId); + + static DigitalInkRecognitionModelIdentifier _bn; + public static DigitalInkRecognitionModelIdentifier Bn => GetModelIdentifier (ref _bn, ModelIdentifiers._Bn); + + static DigitalInkRecognitionModelIdentifier _bnLatn; + public static DigitalInkRecognitionModelIdentifier BnLatn => GetModelIdentifier (ref _bnLatn, ModelIdentifiers._BnLatn); + + static DigitalInkRecognitionModelIdentifier _boTibt; + public static DigitalInkRecognitionModelIdentifier BoTibt => GetModelIdentifier (ref _boTibt, ModelIdentifiers._BoTibt); + + static DigitalInkRecognitionModelIdentifier _bomLatnNg; + public static DigitalInkRecognitionModelIdentifier BomLatnNg => GetModelIdentifier (ref _bomLatnNg, ModelIdentifiers._BomLatnNg); + + static DigitalInkRecognitionModelIdentifier _brxDeva; + public static DigitalInkRecognitionModelIdentifier BrxDeva => GetModelIdentifier (ref _brxDeva, ModelIdentifiers._BrxDeva); + + static DigitalInkRecognitionModelIdentifier _brxLatn; + public static DigitalInkRecognitionModelIdentifier BrxLatn => GetModelIdentifier (ref _brxLatn, ModelIdentifiers._BrxLatn); + + static DigitalInkRecognitionModelIdentifier _bs; + public static DigitalInkRecognitionModelIdentifier Bs => GetModelIdentifier (ref _bs, ModelIdentifiers._Bs); + + static DigitalInkRecognitionModelIdentifier _btoLatnPh; + public static DigitalInkRecognitionModelIdentifier BtoLatnPh => GetModelIdentifier (ref _btoLatnPh, ModelIdentifiers._BtoLatnPh); + + static DigitalInkRecognitionModelIdentifier _btzLatnId; + public static DigitalInkRecognitionModelIdentifier BtzLatnId => GetModelIdentifier (ref _btzLatnId, ModelIdentifiers._BtzLatnId); + + static DigitalInkRecognitionModelIdentifier _bzcLatnMg; + public static DigitalInkRecognitionModelIdentifier BzcLatnMg => GetModelIdentifier (ref _bzcLatnMg, ModelIdentifiers._BzcLatnMg); + + static DigitalInkRecognitionModelIdentifier _ca; + public static DigitalInkRecognitionModelIdentifier Ca => GetModelIdentifier (ref _ca, ModelIdentifiers._Ca); + + static DigitalInkRecognitionModelIdentifier _cebLatn; + public static DigitalInkRecognitionModelIdentifier CebLatn => GetModelIdentifier (ref _cebLatn, ModelIdentifiers._CebLatn); + + static DigitalInkRecognitionModelIdentifier _cggLatnUg; + public static DigitalInkRecognitionModelIdentifier CggLatnUg => GetModelIdentifier (ref _cggLatnUg, ModelIdentifiers._CggLatnUg); + + static DigitalInkRecognitionModelIdentifier _chGu; + public static DigitalInkRecognitionModelIdentifier ChGu => GetModelIdentifier (ref _chGu, ModelIdentifiers._ChGu); + + static DigitalInkRecognitionModelIdentifier _cjkLatnCd; + public static DigitalInkRecognitionModelIdentifier CjkLatnCd => GetModelIdentifier (ref _cjkLatnCd, ModelIdentifiers._CjkLatnCd); + + static DigitalInkRecognitionModelIdentifier _coLatn; + public static DigitalInkRecognitionModelIdentifier CoLatn => GetModelIdentifier (ref _coLatn, ModelIdentifiers._CoLatn); + + static DigitalInkRecognitionModelIdentifier _cpsLatnPh; + public static DigitalInkRecognitionModelIdentifier CpsLatnPh => GetModelIdentifier (ref _cpsLatnPh, ModelIdentifiers._CpsLatnPh); + + static DigitalInkRecognitionModelIdentifier _crsLatnSc; + public static DigitalInkRecognitionModelIdentifier CrsLatnSc => GetModelIdentifier (ref _crsLatnSc, ModelIdentifiers._CrsLatnSc); + + static DigitalInkRecognitionModelIdentifier _cs; + public static DigitalInkRecognitionModelIdentifier Cs => GetModelIdentifier (ref _cs, ModelIdentifiers._Cs); + + static DigitalInkRecognitionModelIdentifier _cy; + public static DigitalInkRecognitionModelIdentifier Cy => GetModelIdentifier (ref _cy, ModelIdentifiers._Cy); + + static DigitalInkRecognitionModelIdentifier _cyoLatnPh; + public static DigitalInkRecognitionModelIdentifier CyoLatnPh => GetModelIdentifier (ref _cyoLatnPh, ModelIdentifiers._CyoLatnPh); + + static DigitalInkRecognitionModelIdentifier _da; + public static DigitalInkRecognitionModelIdentifier Da => GetModelIdentifier (ref _da, ModelIdentifiers._Da); + + static DigitalInkRecognitionModelIdentifier _de; + public static DigitalInkRecognitionModelIdentifier De => GetModelIdentifier (ref _de, ModelIdentifiers._De); + + static DigitalInkRecognitionModelIdentifier _deAt; + public static DigitalInkRecognitionModelIdentifier DeAt => GetModelIdentifier (ref _deAt, ModelIdentifiers._DeAt); + + static DigitalInkRecognitionModelIdentifier _deBe; + public static DigitalInkRecognitionModelIdentifier DeBe => GetModelIdentifier (ref _deBe, ModelIdentifiers._DeBe); + + static DigitalInkRecognitionModelIdentifier _deCh; + public static DigitalInkRecognitionModelIdentifier DeCh => GetModelIdentifier (ref _deCh, ModelIdentifiers._DeCh); + + static DigitalInkRecognitionModelIdentifier _deDe; + public static DigitalInkRecognitionModelIdentifier DeDe => GetModelIdentifier (ref _deDe, ModelIdentifiers._DeDe); + + static DigitalInkRecognitionModelIdentifier _deLu; + public static DigitalInkRecognitionModelIdentifier DeLu => GetModelIdentifier (ref _deLu, ModelIdentifiers._DeLu); + + static DigitalInkRecognitionModelIdentifier _dnjLatnCi; + public static DigitalInkRecognitionModelIdentifier DnjLatnCi => GetModelIdentifier (ref _dnjLatnCi, ModelIdentifiers._DnjLatnCi); + + static DigitalInkRecognitionModelIdentifier _doiDeva; + public static DigitalInkRecognitionModelIdentifier DoiDeva => GetModelIdentifier (ref _doiDeva, ModelIdentifiers._DoiDeva); + + static DigitalInkRecognitionModelIdentifier _doiLatn; + public static DigitalInkRecognitionModelIdentifier DoiLatn => GetModelIdentifier (ref _doiLatn, ModelIdentifiers._DoiLatn); + + static DigitalInkRecognitionModelIdentifier _drsLatnEt; + public static DigitalInkRecognitionModelIdentifier DrsLatnEt => GetModelIdentifier (ref _drsLatnEt, ModelIdentifiers._DrsLatnEt); + + static DigitalInkRecognitionModelIdentifier _drtLatnNl; + public static DigitalInkRecognitionModelIdentifier DrtLatnNl => GetModelIdentifier (ref _drtLatnNl, ModelIdentifiers._DrtLatnNl); + + static DigitalInkRecognitionModelIdentifier _dsbDe; + public static DigitalInkRecognitionModelIdentifier DsbDe => GetModelIdentifier (ref _dsbDe, ModelIdentifiers._DsbDe); + + static DigitalInkRecognitionModelIdentifier _el; + public static DigitalInkRecognitionModelIdentifier El => GetModelIdentifier (ref _el, ModelIdentifiers._El); + + static DigitalInkRecognitionModelIdentifier _en; + public static DigitalInkRecognitionModelIdentifier En => GetModelIdentifier (ref _en, ModelIdentifiers._En); + + static DigitalInkRecognitionModelIdentifier _enAu; + public static DigitalInkRecognitionModelIdentifier EnAu => GetModelIdentifier (ref _enAu, ModelIdentifiers._EnAu); + + static DigitalInkRecognitionModelIdentifier _enCa; + public static DigitalInkRecognitionModelIdentifier EnCa => GetModelIdentifier (ref _enCa, ModelIdentifiers._EnCa); + + static DigitalInkRecognitionModelIdentifier _enGb; + public static DigitalInkRecognitionModelIdentifier EnGb => GetModelIdentifier (ref _enGb, ModelIdentifiers._EnGb); + + static DigitalInkRecognitionModelIdentifier _enIn; + public static DigitalInkRecognitionModelIdentifier EnIn => GetModelIdentifier (ref _enIn, ModelIdentifiers._EnIn); + + static DigitalInkRecognitionModelIdentifier _enKe; + public static DigitalInkRecognitionModelIdentifier EnKe => GetModelIdentifier (ref _enKe, ModelIdentifiers._EnKe); + + static DigitalInkRecognitionModelIdentifier _enNg; + public static DigitalInkRecognitionModelIdentifier EnNg => GetModelIdentifier (ref _enNg, ModelIdentifiers._EnNg); + + static DigitalInkRecognitionModelIdentifier _enPh; + public static DigitalInkRecognitionModelIdentifier EnPh => GetModelIdentifier (ref _enPh, ModelIdentifiers._EnPh); + + static DigitalInkRecognitionModelIdentifier _enUs; + public static DigitalInkRecognitionModelIdentifier EnUs => GetModelIdentifier (ref _enUs, ModelIdentifiers._EnUs); + + static DigitalInkRecognitionModelIdentifier _enZa; + public static DigitalInkRecognitionModelIdentifier EnZa => GetModelIdentifier (ref _enZa, ModelIdentifiers._EnZa); + + static DigitalInkRecognitionModelIdentifier _eo; + public static DigitalInkRecognitionModelIdentifier Eo => GetModelIdentifier (ref _eo, ModelIdentifiers._Eo); + + static DigitalInkRecognitionModelIdentifier _es; + public static DigitalInkRecognitionModelIdentifier Es => GetModelIdentifier (ref _es, ModelIdentifiers._Es); + + static DigitalInkRecognitionModelIdentifier _esAr; + public static DigitalInkRecognitionModelIdentifier EsAr => GetModelIdentifier (ref _esAr, ModelIdentifiers._EsAr); + + static DigitalInkRecognitionModelIdentifier _esEs; + public static DigitalInkRecognitionModelIdentifier EsEs => GetModelIdentifier (ref _esEs, ModelIdentifiers._EsEs); + + static DigitalInkRecognitionModelIdentifier _esMx; + public static DigitalInkRecognitionModelIdentifier EsMx => GetModelIdentifier (ref _esMx, ModelIdentifiers._EsMx); + + static DigitalInkRecognitionModelIdentifier _esUs; + public static DigitalInkRecognitionModelIdentifier EsUs => GetModelIdentifier (ref _esUs, ModelIdentifiers._EsUs); + + static DigitalInkRecognitionModelIdentifier _et; + public static DigitalInkRecognitionModelIdentifier Et => GetModelIdentifier (ref _et, ModelIdentifiers._Et); + + static DigitalInkRecognitionModelIdentifier _etEe; + public static DigitalInkRecognitionModelIdentifier EtEe => GetModelIdentifier (ref _etEe, ModelIdentifiers._EtEe); + + static DigitalInkRecognitionModelIdentifier _eu; + public static DigitalInkRecognitionModelIdentifier Eu => GetModelIdentifier (ref _eu, ModelIdentifiers._Eu); + + static DigitalInkRecognitionModelIdentifier _euEs; + public static DigitalInkRecognitionModelIdentifier EuEs => GetModelIdentifier (ref _euEs, ModelIdentifiers._EuEs); + + static DigitalInkRecognitionModelIdentifier _extLatnEs; + public static DigitalInkRecognitionModelIdentifier ExtLatnEs => GetModelIdentifier (ref _extLatnEs, ModelIdentifiers._ExtLatnEs); + + static DigitalInkRecognitionModelIdentifier _fa; + public static DigitalInkRecognitionModelIdentifier Fa => GetModelIdentifier (ref _fa, ModelIdentifiers._Fa); + + static DigitalInkRecognitionModelIdentifier _fanLatnGq; + public static DigitalInkRecognitionModelIdentifier FanLatnGq => GetModelIdentifier (ref _fanLatnGq, ModelIdentifiers._FanLatnGq); + + static DigitalInkRecognitionModelIdentifier _fi; + public static DigitalInkRecognitionModelIdentifier Fi => GetModelIdentifier (ref _fi, ModelIdentifiers._Fi); + + static DigitalInkRecognitionModelIdentifier _filLatn; + public static DigitalInkRecognitionModelIdentifier FilLatn => GetModelIdentifier (ref _filLatn, ModelIdentifiers._FilLatn); + + static DigitalInkRecognitionModelIdentifier _fjFj; + public static DigitalInkRecognitionModelIdentifier FjFj => GetModelIdentifier (ref _fjFj, ModelIdentifiers._FjFj); + + static DigitalInkRecognitionModelIdentifier _foFo; + public static DigitalInkRecognitionModelIdentifier FoFo => GetModelIdentifier (ref _foFo, ModelIdentifiers._FoFo); + + static DigitalInkRecognitionModelIdentifier _fr; + public static DigitalInkRecognitionModelIdentifier Fr => GetModelIdentifier (ref _fr, ModelIdentifiers._Fr); + + static DigitalInkRecognitionModelIdentifier _fr002; + public static DigitalInkRecognitionModelIdentifier Fr002 => GetModelIdentifier (ref _fr002, ModelIdentifiers._Fr002); + + static DigitalInkRecognitionModelIdentifier _frBe; + public static DigitalInkRecognitionModelIdentifier FrBe => GetModelIdentifier (ref _frBe, ModelIdentifiers._FrBe); + + static DigitalInkRecognitionModelIdentifier _frCa; + public static DigitalInkRecognitionModelIdentifier FrCa => GetModelIdentifier (ref _frCa, ModelIdentifiers._FrCa); + + static DigitalInkRecognitionModelIdentifier _frCh; + public static DigitalInkRecognitionModelIdentifier FrCh => GetModelIdentifier (ref _frCh, ModelIdentifiers._FrCh); + + static DigitalInkRecognitionModelIdentifier _frFr; + public static DigitalInkRecognitionModelIdentifier FrFr => GetModelIdentifier (ref _frFr, ModelIdentifiers._FrFr); + + static DigitalInkRecognitionModelIdentifier _fy; + public static DigitalInkRecognitionModelIdentifier Fy => GetModelIdentifier (ref _fy, ModelIdentifiers._Fy); + + static DigitalInkRecognitionModelIdentifier _ga; + public static DigitalInkRecognitionModelIdentifier Ga => GetModelIdentifier (ref _ga, ModelIdentifiers._Ga); + + static DigitalInkRecognitionModelIdentifier _gaxLatnEt; + public static DigitalInkRecognitionModelIdentifier GaxLatnEt => GetModelIdentifier (ref _gaxLatnEt, ModelIdentifiers._GaxLatnEt); + + static DigitalInkRecognitionModelIdentifier _gayLatnId; + public static DigitalInkRecognitionModelIdentifier GayLatnId => GetModelIdentifier (ref _gayLatnId, ModelIdentifiers._GayLatnId); + + static DigitalInkRecognitionModelIdentifier _gbmDevaIn; + public static DigitalInkRecognitionModelIdentifier GbmDevaIn => GetModelIdentifier (ref _gbmDevaIn, ModelIdentifiers._GbmDevaIn); + + static DigitalInkRecognitionModelIdentifier _gcrLatnGf; + public static DigitalInkRecognitionModelIdentifier GcrLatnGf => GetModelIdentifier (ref _gcrLatnGf, ModelIdentifiers._GcrLatnGf); + + static DigitalInkRecognitionModelIdentifier _gdLatn; + public static DigitalInkRecognitionModelIdentifier GdLatn => GetModelIdentifier (ref _gdLatn, ModelIdentifiers._GdLatn); + + static DigitalInkRecognitionModelIdentifier _gdLatnGb; + public static DigitalInkRecognitionModelIdentifier GdLatnGb => GetModelIdentifier (ref _gdLatnGb, ModelIdentifiers._GdLatnGb); + + static DigitalInkRecognitionModelIdentifier _gdxDevaIn; + public static DigitalInkRecognitionModelIdentifier GdxDevaIn => GetModelIdentifier (ref _gdxDevaIn, ModelIdentifiers._GdxDevaIn); + + static DigitalInkRecognitionModelIdentifier _gjuDeva; + public static DigitalInkRecognitionModelIdentifier GjuDeva => GetModelIdentifier (ref _gjuDeva, ModelIdentifiers._GjuDeva); + + static DigitalInkRecognitionModelIdentifier _gl; + public static DigitalInkRecognitionModelIdentifier Gl => GetModelIdentifier (ref _gl, ModelIdentifiers._Gl); + + static DigitalInkRecognitionModelIdentifier _glEs; + public static DigitalInkRecognitionModelIdentifier GlEs => GetModelIdentifier (ref _glEs, ModelIdentifiers._GlEs); + + static DigitalInkRecognitionModelIdentifier _gosLatnNl; + public static DigitalInkRecognitionModelIdentifier GosLatnNl => GetModelIdentifier (ref _gosLatnNl, ModelIdentifiers._GosLatnNl); + + static DigitalInkRecognitionModelIdentifier _gpeLatnGh; + public static DigitalInkRecognitionModelIdentifier GpeLatnGh => GetModelIdentifier (ref _gpeLatnGh, ModelIdentifiers._GpeLatnGh); + + static DigitalInkRecognitionModelIdentifier _gswCh; + public static DigitalInkRecognitionModelIdentifier GswCh => GetModelIdentifier (ref _gswCh, ModelIdentifiers._GswCh); + + static DigitalInkRecognitionModelIdentifier _gu; + public static DigitalInkRecognitionModelIdentifier Gu => GetModelIdentifier (ref _gu, ModelIdentifiers._Gu); + + static DigitalInkRecognitionModelIdentifier _guLatn; + public static DigitalInkRecognitionModelIdentifier GuLatn => GetModelIdentifier (ref _guLatn, ModelIdentifiers._GuLatn); + + static DigitalInkRecognitionModelIdentifier _gv; + public static DigitalInkRecognitionModelIdentifier Gv => GetModelIdentifier (ref _gv, ModelIdentifiers._Gv); + + static DigitalInkRecognitionModelIdentifier _gynLatn; + public static DigitalInkRecognitionModelIdentifier GynLatn => GetModelIdentifier (ref _gynLatn, ModelIdentifiers._GynLatn); + + static DigitalInkRecognitionModelIdentifier _haqLatnTz; + public static DigitalInkRecognitionModelIdentifier HaqLatnTz => GetModelIdentifier (ref _haqLatnTz, ModelIdentifiers._HaqLatnTz); + + static DigitalInkRecognitionModelIdentifier _hawLatn; + public static DigitalInkRecognitionModelIdentifier HawLatn => GetModelIdentifier (ref _hawLatn, ModelIdentifiers._HawLatn); + + static DigitalInkRecognitionModelIdentifier _hdyLatn; + public static DigitalInkRecognitionModelIdentifier HdyLatn => GetModelIdentifier (ref _hdyLatn, ModelIdentifiers._HdyLatn); + + static DigitalInkRecognitionModelIdentifier _he; + public static DigitalInkRecognitionModelIdentifier He => GetModelIdentifier (ref _he, ModelIdentifiers._He); + + static DigitalInkRecognitionModelIdentifier _hi; + public static DigitalInkRecognitionModelIdentifier Hi => GetModelIdentifier (ref _hi, ModelIdentifiers._Hi); + + static DigitalInkRecognitionModelIdentifier _hiLatn; + public static DigitalInkRecognitionModelIdentifier HiLatn => GetModelIdentifier (ref _hiLatn, ModelIdentifiers._HiLatn); + + static DigitalInkRecognitionModelIdentifier _hifDeva; + public static DigitalInkRecognitionModelIdentifier HifDeva => GetModelIdentifier (ref _hifDeva, ModelIdentifiers._HifDeva); + + static DigitalInkRecognitionModelIdentifier _hilLatnPh; + public static DigitalInkRecognitionModelIdentifier HilLatnPh => GetModelIdentifier (ref _hilLatnPh, ModelIdentifiers._HilLatnPh); + + static DigitalInkRecognitionModelIdentifier _hmnLatn; + public static DigitalInkRecognitionModelIdentifier HmnLatn => GetModelIdentifier (ref _hmnLatn, ModelIdentifiers._HmnLatn); + + static DigitalInkRecognitionModelIdentifier _hneDevaIn; + public static DigitalInkRecognitionModelIdentifier HneDevaIn => GetModelIdentifier (ref _hneDevaIn, ModelIdentifiers._HneDevaIn); + + static DigitalInkRecognitionModelIdentifier _hniLatnCn; + public static DigitalInkRecognitionModelIdentifier HniLatnCn => GetModelIdentifier (ref _hniLatnCn, ModelIdentifiers._HniLatnCn); + + static DigitalInkRecognitionModelIdentifier _hoLatnPg; + public static DigitalInkRecognitionModelIdentifier HoLatnPg => GetModelIdentifier (ref _hoLatnPg, ModelIdentifiers._HoLatnPg); + + static DigitalInkRecognitionModelIdentifier _hojDevaIn; + public static DigitalInkRecognitionModelIdentifier HojDevaIn => GetModelIdentifier (ref _hojDevaIn, ModelIdentifiers._HojDevaIn); + + static DigitalInkRecognitionModelIdentifier _hr; + public static DigitalInkRecognitionModelIdentifier Hr => GetModelIdentifier (ref _hr, ModelIdentifiers._Hr); + + static DigitalInkRecognitionModelIdentifier _hrxLatnBr; + public static DigitalInkRecognitionModelIdentifier HrxLatnBr => GetModelIdentifier (ref _hrxLatnBr, ModelIdentifiers._HrxLatnBr); + + static DigitalInkRecognitionModelIdentifier _ht; + public static DigitalInkRecognitionModelIdentifier Ht => GetModelIdentifier (ref _ht, ModelIdentifiers._Ht); + + static DigitalInkRecognitionModelIdentifier _hu; + public static DigitalInkRecognitionModelIdentifier Hu => GetModelIdentifier (ref _hu, ModelIdentifiers._Hu); + + static DigitalInkRecognitionModelIdentifier _hy; + public static DigitalInkRecognitionModelIdentifier Hy => GetModelIdentifier (ref _hy, ModelIdentifiers._Hy); + + static DigitalInkRecognitionModelIdentifier _id; + public static DigitalInkRecognitionModelIdentifier Id => GetModelIdentifier (ref _id, ModelIdentifiers._Id); + + static DigitalInkRecognitionModelIdentifier _igbLatnNg; + public static DigitalInkRecognitionModelIdentifier IgbLatnNg => GetModelIdentifier (ref _igbLatnNg, ModelIdentifiers._IgbLatnNg); + + static DigitalInkRecognitionModelIdentifier _iiLatn; + public static DigitalInkRecognitionModelIdentifier IiLatn => GetModelIdentifier (ref _iiLatn, ModelIdentifiers._IiLatn); + + static DigitalInkRecognitionModelIdentifier _iloLatnPh; + public static DigitalInkRecognitionModelIdentifier IloLatnPh => GetModelIdentifier (ref _iloLatnPh, ModelIdentifiers._IloLatnPh); + + static DigitalInkRecognitionModelIdentifier _is; + public static DigitalInkRecognitionModelIdentifier Is => GetModelIdentifier (ref _is, ModelIdentifiers._Is); + + static DigitalInkRecognitionModelIdentifier _it; + public static DigitalInkRecognitionModelIdentifier It => GetModelIdentifier (ref _it, ModelIdentifiers._It); + + static DigitalInkRecognitionModelIdentifier _itCh; + public static DigitalInkRecognitionModelIdentifier ItCh => GetModelIdentifier (ref _itCh, ModelIdentifiers._ItCh); + + static DigitalInkRecognitionModelIdentifier _itIt; + public static DigitalInkRecognitionModelIdentifier ItIt => GetModelIdentifier (ref _itIt, ModelIdentifiers._ItIt); + + static DigitalInkRecognitionModelIdentifier _iumLatnCn; + public static DigitalInkRecognitionModelIdentifier IumLatnCn => GetModelIdentifier (ref _iumLatnCn, ModelIdentifiers._IumLatnCn); + + static DigitalInkRecognitionModelIdentifier _ja; + public static DigitalInkRecognitionModelIdentifier Ja => GetModelIdentifier (ref _ja, ModelIdentifiers._Ja); + + static DigitalInkRecognitionModelIdentifier _jamLatnJm; + public static DigitalInkRecognitionModelIdentifier JamLatnJm => GetModelIdentifier (ref _jamLatnJm, ModelIdentifiers._JamLatnJm); + + static DigitalInkRecognitionModelIdentifier _jaxLatnId; + public static DigitalInkRecognitionModelIdentifier JaxLatnId => GetModelIdentifier (ref _jaxLatnId, ModelIdentifiers._JaxLatnId); + + static DigitalInkRecognitionModelIdentifier _jboLatn; + public static DigitalInkRecognitionModelIdentifier JboLatn => GetModelIdentifier (ref _jboLatn, ModelIdentifiers._JboLatn); + + static DigitalInkRecognitionModelIdentifier _jvLatn; + public static DigitalInkRecognitionModelIdentifier JvLatn => GetModelIdentifier (ref _jvLatn, ModelIdentifiers._JvLatn); + + static DigitalInkRecognitionModelIdentifier _ka; + public static DigitalInkRecognitionModelIdentifier Ka => GetModelIdentifier (ref _ka, ModelIdentifiers._Ka); + + static DigitalInkRecognitionModelIdentifier _kdeLatnTz; + public static DigitalInkRecognitionModelIdentifier KdeLatnTz => GetModelIdentifier (ref _kdeLatnTz, ModelIdentifiers._KdeLatnTz); + + static DigitalInkRecognitionModelIdentifier _kfrDevaIn; + public static DigitalInkRecognitionModelIdentifier KfrDevaIn => GetModelIdentifier (ref _kfrDevaIn, ModelIdentifiers._KfrDevaIn); + + static DigitalInkRecognitionModelIdentifier _kfyDevaIn; + public static DigitalInkRecognitionModelIdentifier KfyDevaIn => GetModelIdentifier (ref _kfyDevaIn, ModelIdentifiers._KfyDevaIn); + + static DigitalInkRecognitionModelIdentifier _kgeLatnId; + public static DigitalInkRecognitionModelIdentifier KgeLatnId => GetModelIdentifier (ref _kgeLatnId, ModelIdentifiers._KgeLatnId); + + static DigitalInkRecognitionModelIdentifier _khaLatnIn; + public static DigitalInkRecognitionModelIdentifier KhaLatnIn => GetModelIdentifier (ref _khaLatnIn, ModelIdentifiers._KhaLatnIn); + + static DigitalInkRecognitionModelIdentifier _kjLatn; + public static DigitalInkRecognitionModelIdentifier KjLatn => GetModelIdentifier (ref _kjLatn, ModelIdentifiers._KjLatn); + + static DigitalInkRecognitionModelIdentifier _kk; + public static DigitalInkRecognitionModelIdentifier Kk => GetModelIdentifier (ref _kk, ModelIdentifiers._Kk); + + static DigitalInkRecognitionModelIdentifier _kl; + public static DigitalInkRecognitionModelIdentifier Kl => GetModelIdentifier (ref _kl, ModelIdentifiers._Kl); + + static DigitalInkRecognitionModelIdentifier _km; + public static DigitalInkRecognitionModelIdentifier Km => GetModelIdentifier (ref _km, ModelIdentifiers._Km); + + static DigitalInkRecognitionModelIdentifier _kmbLatnAo; + public static DigitalInkRecognitionModelIdentifier KmbLatnAo => GetModelIdentifier (ref _kmbLatnAo, ModelIdentifiers._KmbLatnAo); + + static DigitalInkRecognitionModelIdentifier _kmzLatn; + public static DigitalInkRecognitionModelIdentifier KmzLatn => GetModelIdentifier (ref _kmzLatn, ModelIdentifiers._KmzLatn); + + static DigitalInkRecognitionModelIdentifier _kn; + public static DigitalInkRecognitionModelIdentifier Kn => GetModelIdentifier (ref _kn, ModelIdentifiers._Kn); + + static DigitalInkRecognitionModelIdentifier _knLatn; + public static DigitalInkRecognitionModelIdentifier KnLatn => GetModelIdentifier (ref _knLatn, ModelIdentifiers._KnLatn); + + static DigitalInkRecognitionModelIdentifier _ko; + public static DigitalInkRecognitionModelIdentifier Ko => GetModelIdentifier (ref _ko, ModelIdentifiers._Ko); + + static DigitalInkRecognitionModelIdentifier _kok; + public static DigitalInkRecognitionModelIdentifier Kok => GetModelIdentifier (ref _kok, ModelIdentifiers._Kok); + + static DigitalInkRecognitionModelIdentifier _kokIn; + public static DigitalInkRecognitionModelIdentifier KokIn => GetModelIdentifier (ref _kokIn, ModelIdentifiers._KokIn); + + static DigitalInkRecognitionModelIdentifier _kokLatn; + public static DigitalInkRecognitionModelIdentifier KokLatn => GetModelIdentifier (ref _kokLatn, ModelIdentifiers._KokLatn); + + static DigitalInkRecognitionModelIdentifier _kruDevaIn; + public static DigitalInkRecognitionModelIdentifier KruDevaIn => GetModelIdentifier (ref _kruDevaIn, ModelIdentifiers._KruDevaIn); + + static DigitalInkRecognitionModelIdentifier _ksDeva; + public static DigitalInkRecognitionModelIdentifier KsDeva => GetModelIdentifier (ref _ksDeva, ModelIdentifiers._KsDeva); + + static DigitalInkRecognitionModelIdentifier _ksLatn; + public static DigitalInkRecognitionModelIdentifier KsLatn => GetModelIdentifier (ref _ksLatn, ModelIdentifiers._KsLatn); + + static DigitalInkRecognitionModelIdentifier _kshLatnDe; + public static DigitalInkRecognitionModelIdentifier KshLatnDe => GetModelIdentifier (ref _kshLatnDe, ModelIdentifiers._KshLatnDe); + + static DigitalInkRecognitionModelIdentifier _ktbLatn; + public static DigitalInkRecognitionModelIdentifier KtbLatn => GetModelIdentifier (ref _ktbLatn, ModelIdentifiers._KtbLatn); + + static DigitalInkRecognitionModelIdentifier _ktuLatnCd; + public static DigitalInkRecognitionModelIdentifier KtuLatnCd => GetModelIdentifier (ref _ktuLatnCd, ModelIdentifiers._KtuLatnCd); + + static DigitalInkRecognitionModelIdentifier _kuLatn; + public static DigitalInkRecognitionModelIdentifier KuLatn => GetModelIdentifier (ref _kuLatn, ModelIdentifiers._KuLatn); + + static DigitalInkRecognitionModelIdentifier _kwLatnGb; + public static DigitalInkRecognitionModelIdentifier KwLatnGb => GetModelIdentifier (ref _kwLatnGb, ModelIdentifiers._KwLatnGb); + + static DigitalInkRecognitionModelIdentifier _kyCyrl; + public static DigitalInkRecognitionModelIdentifier KyCyrl => GetModelIdentifier (ref _kyCyrl, ModelIdentifiers._KyCyrl); + + static DigitalInkRecognitionModelIdentifier _la; + public static DigitalInkRecognitionModelIdentifier La => GetModelIdentifier (ref _la, ModelIdentifiers._La); + + static DigitalInkRecognitionModelIdentifier _ladLatnBa; + public static DigitalInkRecognitionModelIdentifier LadLatnBa => GetModelIdentifier (ref _ladLatnBa, ModelIdentifiers._LadLatnBa); + + static DigitalInkRecognitionModelIdentifier _lajLatnUg; + public static DigitalInkRecognitionModelIdentifier LajLatnUg => GetModelIdentifier (ref _lajLatnUg, ModelIdentifiers._LajLatnUg); + + static DigitalInkRecognitionModelIdentifier _lb; + public static DigitalInkRecognitionModelIdentifier Lb => GetModelIdentifier (ref _lb, ModelIdentifiers._Lb); + + static DigitalInkRecognitionModelIdentifier _ledLatnCd; + public static DigitalInkRecognitionModelIdentifier LedLatnCd => GetModelIdentifier (ref _ledLatnCd, ModelIdentifiers._LedLatnCd); + + static DigitalInkRecognitionModelIdentifier _lldLatnIt; + public static DigitalInkRecognitionModelIdentifier LldLatnIt => GetModelIdentifier (ref _lldLatnIt, ModelIdentifiers._LldLatnIt); + + static DigitalInkRecognitionModelIdentifier _lmnDeva; + public static DigitalInkRecognitionModelIdentifier LmnDeva => GetModelIdentifier (ref _lmnDeva, ModelIdentifiers._LmnDeva); + + static DigitalInkRecognitionModelIdentifier _lo; + public static DigitalInkRecognitionModelIdentifier Lo => GetModelIdentifier (ref _lo, ModelIdentifiers._Lo); + + static DigitalInkRecognitionModelIdentifier _lonLatnMw; + public static DigitalInkRecognitionModelIdentifier LonLatnMw => GetModelIdentifier (ref _lonLatnMw, ModelIdentifiers._LonLatnMw); + + static DigitalInkRecognitionModelIdentifier _lt; + public static DigitalInkRecognitionModelIdentifier Lt => GetModelIdentifier (ref _lt, ModelIdentifiers._Lt); + + static DigitalInkRecognitionModelIdentifier _luyLatnKe; + public static DigitalInkRecognitionModelIdentifier LuyLatnKe => GetModelIdentifier (ref _luyLatnKe, ModelIdentifiers._LuyLatnKe); + + static DigitalInkRecognitionModelIdentifier _lv; + public static DigitalInkRecognitionModelIdentifier Lv => GetModelIdentifier (ref _lv, ModelIdentifiers._Lv); + + static DigitalInkRecognitionModelIdentifier _madLatnId; + public static DigitalInkRecognitionModelIdentifier MadLatnId => GetModelIdentifier (ref _madLatnId, ModelIdentifiers._MadLatnId); + + static DigitalInkRecognitionModelIdentifier _magDevaIn; + public static DigitalInkRecognitionModelIdentifier MagDevaIn => GetModelIdentifier (ref _magDevaIn, ModelIdentifiers._MagDevaIn); + + static DigitalInkRecognitionModelIdentifier _maiIn; + public static DigitalInkRecognitionModelIdentifier MaiIn => GetModelIdentifier (ref _maiIn, ModelIdentifiers._MaiIn); + + static DigitalInkRecognitionModelIdentifier _maiLatn; + public static DigitalInkRecognitionModelIdentifier MaiLatn => GetModelIdentifier (ref _maiLatn, ModelIdentifiers._MaiLatn); + + static DigitalInkRecognitionModelIdentifier _masLatnKe; + public static DigitalInkRecognitionModelIdentifier MasLatnKe => GetModelIdentifier (ref _masLatnKe, ModelIdentifiers._MasLatnKe); + + static DigitalInkRecognitionModelIdentifier _maxLatnId; + public static DigitalInkRecognitionModelIdentifier MaxLatnId => GetModelIdentifier (ref _maxLatnId, ModelIdentifiers._MaxLatnId); + + static DigitalInkRecognitionModelIdentifier _mdhLatnPh; + public static DigitalInkRecognitionModelIdentifier MdhLatnPh => GetModelIdentifier (ref _mdhLatnPh, ModelIdentifiers._MdhLatnPh); + + static DigitalInkRecognitionModelIdentifier _melLatnMy; + public static DigitalInkRecognitionModelIdentifier MelLatnMy => GetModelIdentifier (ref _melLatnMy, ModelIdentifiers._MelLatnMy); + + static DigitalInkRecognitionModelIdentifier _meoLatnMy; + public static DigitalInkRecognitionModelIdentifier MeoLatnMy => GetModelIdentifier (ref _meoLatnMy, ModelIdentifiers._MeoLatnMy); + + static DigitalInkRecognitionModelIdentifier _mfbLatnId; + public static DigitalInkRecognitionModelIdentifier MfbLatnId => GetModelIdentifier (ref _mfbLatnId, ModelIdentifiers._MfbLatnId); + + static DigitalInkRecognitionModelIdentifier _mfpLatnId; + public static DigitalInkRecognitionModelIdentifier MfpLatnId => GetModelIdentifier (ref _mfpLatnId, ModelIdentifiers._MfpLatnId); + + static DigitalInkRecognitionModelIdentifier _mg; + public static DigitalInkRecognitionModelIdentifier Mg => GetModelIdentifier (ref _mg, ModelIdentifiers._Mg); + + static DigitalInkRecognitionModelIdentifier _miLatn; + public static DigitalInkRecognitionModelIdentifier MiLatn => GetModelIdentifier (ref _miLatn, ModelIdentifiers._MiLatn); + + static DigitalInkRecognitionModelIdentifier _minLatnId; + public static DigitalInkRecognitionModelIdentifier MinLatnId => GetModelIdentifier (ref _minLatnId, ModelIdentifiers._MinLatnId); + + static DigitalInkRecognitionModelIdentifier _mk; + public static DigitalInkRecognitionModelIdentifier Mk => GetModelIdentifier (ref _mk, ModelIdentifiers._Mk); + + static DigitalInkRecognitionModelIdentifier _ml; + public static DigitalInkRecognitionModelIdentifier Ml => GetModelIdentifier (ref _ml, ModelIdentifiers._Ml); + + static DigitalInkRecognitionModelIdentifier _mlLatn; + public static DigitalInkRecognitionModelIdentifier MlLatn => GetModelIdentifier (ref _mlLatn, ModelIdentifiers._MlLatn); + + static DigitalInkRecognitionModelIdentifier _mnCyrl; + public static DigitalInkRecognitionModelIdentifier MnCyrl => GetModelIdentifier (ref _mnCyrl, ModelIdentifiers._MnCyrl); + + static DigitalInkRecognitionModelIdentifier _mniLatn; + public static DigitalInkRecognitionModelIdentifier MniLatn => GetModelIdentifier (ref _mniLatn, ModelIdentifiers._MniLatn); + + static DigitalInkRecognitionModelIdentifier _mqyLatnId; + public static DigitalInkRecognitionModelIdentifier MqyLatnId => GetModelIdentifier (ref _mqyLatnId, ModelIdentifiers._MqyLatnId); + + static DigitalInkRecognitionModelIdentifier _mr; + public static DigitalInkRecognitionModelIdentifier Mr => GetModelIdentifier (ref _mr, ModelIdentifiers._Mr); + + static DigitalInkRecognitionModelIdentifier _mrIn; + public static DigitalInkRecognitionModelIdentifier MrIn => GetModelIdentifier (ref _mrIn, ModelIdentifiers._MrIn); + + static DigitalInkRecognitionModelIdentifier _mrLatn; + public static DigitalInkRecognitionModelIdentifier MrLatn => GetModelIdentifier (ref _mrLatn, ModelIdentifiers._MrLatn); + + static DigitalInkRecognitionModelIdentifier _mrwLatnPh; + public static DigitalInkRecognitionModelIdentifier MrwLatnPh => GetModelIdentifier (ref _mrwLatnPh, ModelIdentifiers._MrwLatnPh); + + static DigitalInkRecognitionModelIdentifier _ms; + public static DigitalInkRecognitionModelIdentifier Ms => GetModelIdentifier (ref _ms, ModelIdentifiers._Ms); + + static DigitalInkRecognitionModelIdentifier _msBn; + public static DigitalInkRecognitionModelIdentifier MsBn => GetModelIdentifier (ref _msBn, ModelIdentifiers._MsBn); + + static DigitalInkRecognitionModelIdentifier _msMy; + public static DigitalInkRecognitionModelIdentifier MsMy => GetModelIdentifier (ref _msMy, ModelIdentifiers._MsMy); + + static DigitalInkRecognitionModelIdentifier _msiLatnMy; + public static DigitalInkRecognitionModelIdentifier MsiLatnMy => GetModelIdentifier (ref _msiLatnMy, ModelIdentifiers._MsiLatnMy); + + static DigitalInkRecognitionModelIdentifier _mt; + public static DigitalInkRecognitionModelIdentifier Mt => GetModelIdentifier (ref _mt, ModelIdentifiers._Mt); + + static DigitalInkRecognitionModelIdentifier _mtrDevaIn; + public static DigitalInkRecognitionModelIdentifier MtrDevaIn => GetModelIdentifier (ref _mtrDevaIn, ModelIdentifiers._MtrDevaIn); + + static DigitalInkRecognitionModelIdentifier _muiLatnId; + public static DigitalInkRecognitionModelIdentifier MuiLatnId => GetModelIdentifier (ref _muiLatnId, ModelIdentifiers._MuiLatnId); + + static DigitalInkRecognitionModelIdentifier _mupDevaIn; + public static DigitalInkRecognitionModelIdentifier MupDevaIn => GetModelIdentifier (ref _mupDevaIn, ModelIdentifiers._MupDevaIn); + + static DigitalInkRecognitionModelIdentifier _mveDevaPk; + public static DigitalInkRecognitionModelIdentifier MveDevaPk => GetModelIdentifier (ref _mveDevaPk, ModelIdentifiers._MveDevaPk); + + static DigitalInkRecognitionModelIdentifier _mwrDevaIn; + public static DigitalInkRecognitionModelIdentifier MwrDevaIn => GetModelIdentifier (ref _mwrDevaIn, ModelIdentifiers._MwrDevaIn); + + static DigitalInkRecognitionModelIdentifier _mwwLatnCn; + public static DigitalInkRecognitionModelIdentifier MwwLatnCn => GetModelIdentifier (ref _mwwLatnCn, ModelIdentifiers._MwwLatnCn); + + static DigitalInkRecognitionModelIdentifier _my; + public static DigitalInkRecognitionModelIdentifier My => GetModelIdentifier (ref _my, ModelIdentifiers._My); + + static DigitalInkRecognitionModelIdentifier _myxLatnUg; + public static DigitalInkRecognitionModelIdentifier MyxLatnUg => GetModelIdentifier (ref _myxLatnUg, ModelIdentifiers._MyxLatnUg); + + static DigitalInkRecognitionModelIdentifier _nahLatn; + public static DigitalInkRecognitionModelIdentifier NahLatn => GetModelIdentifier (ref _nahLatn, ModelIdentifiers._NahLatn); + + static DigitalInkRecognitionModelIdentifier _napLatnIt; + public static DigitalInkRecognitionModelIdentifier NapLatnIt => GetModelIdentifier (ref _napLatnIt, ModelIdentifiers._NapLatnIt); + + static DigitalInkRecognitionModelIdentifier _ndcLatnZw; + public static DigitalInkRecognitionModelIdentifier NdcLatnZw => GetModelIdentifier (ref _ndcLatnZw, ModelIdentifiers._NdcLatnZw); + + static DigitalInkRecognitionModelIdentifier _ne; + public static DigitalInkRecognitionModelIdentifier Ne => GetModelIdentifier (ref _ne, ModelIdentifiers._Ne); + + static DigitalInkRecognitionModelIdentifier _neIn; + public static DigitalInkRecognitionModelIdentifier NeIn => GetModelIdentifier (ref _neIn, ModelIdentifiers._NeIn); + + static DigitalInkRecognitionModelIdentifier _neLatn; + public static DigitalInkRecognitionModelIdentifier NeLatn => GetModelIdentifier (ref _neLatn, ModelIdentifiers._NeLatn); + + static DigitalInkRecognitionModelIdentifier _neNp; + public static DigitalInkRecognitionModelIdentifier NeNp => GetModelIdentifier (ref _neNp, ModelIdentifiers._NeNp); + + static DigitalInkRecognitionModelIdentifier _newDevaNp; + public static DigitalInkRecognitionModelIdentifier NewDevaNp => GetModelIdentifier (ref _newDevaNp, ModelIdentifiers._NewDevaNp); + + static DigitalInkRecognitionModelIdentifier _ngLatnNa; + public static DigitalInkRecognitionModelIdentifier NgLatnNa => GetModelIdentifier (ref _ngLatnNa, ModelIdentifiers._NgLatnNa); + + static DigitalInkRecognitionModelIdentifier _ngaLatnCd; + public static DigitalInkRecognitionModelIdentifier NgaLatnCd => GetModelIdentifier (ref _ngaLatnCd, ModelIdentifiers._NgaLatnCd); + + static DigitalInkRecognitionModelIdentifier _niqLatnKe; + public static DigitalInkRecognitionModelIdentifier NiqLatnKe => GetModelIdentifier (ref _niqLatnKe, ModelIdentifiers._NiqLatnKe); + + static DigitalInkRecognitionModelIdentifier _nlBe; + public static DigitalInkRecognitionModelIdentifier NlBe => GetModelIdentifier (ref _nlBe, ModelIdentifiers._NlBe); + + static DigitalInkRecognitionModelIdentifier _nlNl; + public static DigitalInkRecognitionModelIdentifier NlNl => GetModelIdentifier (ref _nlNl, ModelIdentifiers._NlNl); + + static DigitalInkRecognitionModelIdentifier _nnNo; + public static DigitalInkRecognitionModelIdentifier NnNo => GetModelIdentifier (ref _nnNo, ModelIdentifiers._NnNo); + + static DigitalInkRecognitionModelIdentifier _no; + public static DigitalInkRecognitionModelIdentifier No => GetModelIdentifier (ref _no, ModelIdentifiers._No); + + static DigitalInkRecognitionModelIdentifier _noeDevaIn; + public static DigitalInkRecognitionModelIdentifier NoeDevaIn => GetModelIdentifier (ref _noeDevaIn, ModelIdentifiers._NoeDevaIn); + + static DigitalInkRecognitionModelIdentifier _nrZa; + public static DigitalInkRecognitionModelIdentifier NrZa => GetModelIdentifier (ref _nrZa, ModelIdentifiers._NrZa); + + static DigitalInkRecognitionModelIdentifier _nso; + public static DigitalInkRecognitionModelIdentifier Nso => GetModelIdentifier (ref _nso, ModelIdentifiers._Nso); + + static DigitalInkRecognitionModelIdentifier _ny; + public static DigitalInkRecognitionModelIdentifier Ny => GetModelIdentifier (ref _ny, ModelIdentifiers._Ny); + + static DigitalInkRecognitionModelIdentifier _nymLatnTz; + public static DigitalInkRecognitionModelIdentifier NymLatnTz => GetModelIdentifier (ref _nymLatnTz, ModelIdentifiers._NymLatnTz); + + static DigitalInkRecognitionModelIdentifier _nyoLatnUg; + public static DigitalInkRecognitionModelIdentifier NyoLatnUg => GetModelIdentifier (ref _nyoLatnUg, ModelIdentifiers._NyoLatnUg); + + static DigitalInkRecognitionModelIdentifier _ocLatnFr; + public static DigitalInkRecognitionModelIdentifier OcLatnFr => GetModelIdentifier (ref _ocLatnFr, ModelIdentifiers._OcLatnFr); + + static DigitalInkRecognitionModelIdentifier _ojLatn; + public static DigitalInkRecognitionModelIdentifier OjLatn => GetModelIdentifier (ref _ojLatn, ModelIdentifiers._OjLatn); + + static DigitalInkRecognitionModelIdentifier _oloLatnRu; + public static DigitalInkRecognitionModelIdentifier OloLatnRu => GetModelIdentifier (ref _oloLatnRu, ModelIdentifiers._OloLatnRu); + + static DigitalInkRecognitionModelIdentifier _om; + public static DigitalInkRecognitionModelIdentifier Om => GetModelIdentifier (ref _om, ModelIdentifiers._Om); + + static DigitalInkRecognitionModelIdentifier _or; + public static DigitalInkRecognitionModelIdentifier Or => GetModelIdentifier (ref _or, ModelIdentifiers._Or); + + static DigitalInkRecognitionModelIdentifier _orLatn; + public static DigitalInkRecognitionModelIdentifier OrLatn => GetModelIdentifier (ref _orLatn, ModelIdentifiers._OrLatn); + + static DigitalInkRecognitionModelIdentifier _pa; + public static DigitalInkRecognitionModelIdentifier Pa => GetModelIdentifier (ref _pa, ModelIdentifiers._Pa); + + static DigitalInkRecognitionModelIdentifier _paLatn; + public static DigitalInkRecognitionModelIdentifier PaLatn => GetModelIdentifier (ref _paLatn, ModelIdentifiers._PaLatn); + + static DigitalInkRecognitionModelIdentifier _pagLatnPh; + public static DigitalInkRecognitionModelIdentifier PagLatnPh => GetModelIdentifier (ref _pagLatnPh, ModelIdentifiers._PagLatnPh); + + static DigitalInkRecognitionModelIdentifier _pamLatnPh; + public static DigitalInkRecognitionModelIdentifier PamLatnPh => GetModelIdentifier (ref _pamLatnPh, ModelIdentifiers._PamLatnPh); + + static DigitalInkRecognitionModelIdentifier _papLatn; + public static DigitalInkRecognitionModelIdentifier PapLatn => GetModelIdentifier (ref _papLatn, ModelIdentifiers._PapLatn); + + static DigitalInkRecognitionModelIdentifier _pccLatnCn; + public static DigitalInkRecognitionModelIdentifier PccLatnCn => GetModelIdentifier (ref _pccLatnCn, ModelIdentifiers._PccLatnCn); + + static DigitalInkRecognitionModelIdentifier _pcdLatnBe; + public static DigitalInkRecognitionModelIdentifier PcdLatnBe => GetModelIdentifier (ref _pcdLatnBe, ModelIdentifiers._PcdLatnBe); + + static DigitalInkRecognitionModelIdentifier _pcmLatnNg; + public static DigitalInkRecognitionModelIdentifier PcmLatnNg => GetModelIdentifier (ref _pcmLatnNg, ModelIdentifiers._PcmLatnNg); + + static DigitalInkRecognitionModelIdentifier _pkoLatnKe; + public static DigitalInkRecognitionModelIdentifier PkoLatnKe => GetModelIdentifier (ref _pkoLatnKe, ModelIdentifiers._PkoLatnKe); + + static DigitalInkRecognitionModelIdentifier _pl; + public static DigitalInkRecognitionModelIdentifier Pl => GetModelIdentifier (ref _pl, ModelIdentifiers._Pl); + + static DigitalInkRecognitionModelIdentifier _pmsLatnIt; + public static DigitalInkRecognitionModelIdentifier PmsLatnIt => GetModelIdentifier (ref _pmsLatnIt, ModelIdentifiers._PmsLatnIt); + + static DigitalInkRecognitionModelIdentifier _pmyLatnId; + public static DigitalInkRecognitionModelIdentifier PmyLatnId => GetModelIdentifier (ref _pmyLatnId, ModelIdentifiers._PmyLatnId); + + static DigitalInkRecognitionModelIdentifier _povLatnGw; + public static DigitalInkRecognitionModelIdentifier PovLatnGw => GetModelIdentifier (ref _povLatnGw, ModelIdentifiers._PovLatnGw); + + static DigitalInkRecognitionModelIdentifier _prkLatnMm; + public static DigitalInkRecognitionModelIdentifier PrkLatnMm => GetModelIdentifier (ref _prkLatnMm, ModelIdentifiers._PrkLatnMm); + + static DigitalInkRecognitionModelIdentifier _pseLatnId; + public static DigitalInkRecognitionModelIdentifier PseLatnId => GetModelIdentifier (ref _pseLatnId, ModelIdentifiers._PseLatnId); + + static DigitalInkRecognitionModelIdentifier _pt; + public static DigitalInkRecognitionModelIdentifier Pt => GetModelIdentifier (ref _pt, ModelIdentifiers._Pt); + + static DigitalInkRecognitionModelIdentifier _pt002; + public static DigitalInkRecognitionModelIdentifier Pt002 => GetModelIdentifier (ref _pt002, ModelIdentifiers._Pt002); + + static DigitalInkRecognitionModelIdentifier _ptBr; + public static DigitalInkRecognitionModelIdentifier PtBr => GetModelIdentifier (ref _ptBr, ModelIdentifiers._PtBr); + + static DigitalInkRecognitionModelIdentifier _ptPt; + public static DigitalInkRecognitionModelIdentifier PtPt => GetModelIdentifier (ref _ptPt, ModelIdentifiers._PtPt); + + static DigitalInkRecognitionModelIdentifier _quPe; + public static DigitalInkRecognitionModelIdentifier QuPe => GetModelIdentifier (ref _quPe, ModelIdentifiers._QuPe); + + static DigitalInkRecognitionModelIdentifier _qucLatn; + public static DigitalInkRecognitionModelIdentifier QucLatn => GetModelIdentifier (ref _qucLatn, ModelIdentifiers._QucLatn); + + static DigitalInkRecognitionModelIdentifier _rcfLatnRe; + public static DigitalInkRecognitionModelIdentifier RcfLatnRe => GetModelIdentifier (ref _rcfLatnRe, ModelIdentifiers._RcfLatnRe); + + static DigitalInkRecognitionModelIdentifier _rktDevaIn; + public static DigitalInkRecognitionModelIdentifier RktDevaIn => GetModelIdentifier (ref _rktDevaIn, ModelIdentifiers._RktDevaIn); + + static DigitalInkRecognitionModelIdentifier _rmCh; + public static DigitalInkRecognitionModelIdentifier RmCh => GetModelIdentifier (ref _rmCh, ModelIdentifiers._RmCh); + + static DigitalInkRecognitionModelIdentifier _rnBi; + public static DigitalInkRecognitionModelIdentifier RnBi => GetModelIdentifier (ref _rnBi, ModelIdentifiers._RnBi); + + static DigitalInkRecognitionModelIdentifier _roRo; + public static DigitalInkRecognitionModelIdentifier RoRo => GetModelIdentifier (ref _roRo, ModelIdentifiers._RoRo); + + static DigitalInkRecognitionModelIdentifier _ru; + public static DigitalInkRecognitionModelIdentifier Ru => GetModelIdentifier (ref _ru, ModelIdentifiers._Ru); + + static DigitalInkRecognitionModelIdentifier _rwrDevaIn; + public static DigitalInkRecognitionModelIdentifier RwrDevaIn => GetModelIdentifier (ref _rwrDevaIn, ModelIdentifiers._RwrDevaIn); + + static DigitalInkRecognitionModelIdentifier _saDevaIn; + public static DigitalInkRecognitionModelIdentifier SaDevaIn => GetModelIdentifier (ref _saDevaIn, ModelIdentifiers._SaDevaIn); + + static DigitalInkRecognitionModelIdentifier _saLatn; + public static DigitalInkRecognitionModelIdentifier SaLatn => GetModelIdentifier (ref _saLatn, ModelIdentifiers._SaLatn); + + static DigitalInkRecognitionModelIdentifier _satDeva; + public static DigitalInkRecognitionModelIdentifier SatDeva => GetModelIdentifier (ref _satDeva, ModelIdentifiers._SatDeva); + + static DigitalInkRecognitionModelIdentifier _satLatn; + public static DigitalInkRecognitionModelIdentifier SatLatn => GetModelIdentifier (ref _satLatn, ModelIdentifiers._SatLatn); + + static DigitalInkRecognitionModelIdentifier _scLatnIt; + public static DigitalInkRecognitionModelIdentifier ScLatnIt => GetModelIdentifier (ref _scLatnIt, ModelIdentifiers._ScLatnIt); + + static DigitalInkRecognitionModelIdentifier _sckDevaIn; + public static DigitalInkRecognitionModelIdentifier SckDevaIn => GetModelIdentifier (ref _sckDevaIn, ModelIdentifiers._SckDevaIn); + + static DigitalInkRecognitionModelIdentifier _scoLatnGb; + public static DigitalInkRecognitionModelIdentifier ScoLatnGb => GetModelIdentifier (ref _scoLatnGb, ModelIdentifiers._ScoLatnGb); + + static DigitalInkRecognitionModelIdentifier _sdDeva; + public static DigitalInkRecognitionModelIdentifier SdDeva => GetModelIdentifier (ref _sdDeva, ModelIdentifiers._SdDeva); + + static DigitalInkRecognitionModelIdentifier _sdLatn; + public static DigitalInkRecognitionModelIdentifier SdLatn => GetModelIdentifier (ref _sdLatn, ModelIdentifiers._SdLatn); + + static DigitalInkRecognitionModelIdentifier _sdcLatnIt; + public static DigitalInkRecognitionModelIdentifier SdcLatnIt => GetModelIdentifier (ref _sdcLatnIt, ModelIdentifiers._SdcLatnIt); + + static DigitalInkRecognitionModelIdentifier _sgCf; + public static DigitalInkRecognitionModelIdentifier SgCf => GetModelIdentifier (ref _sgCf, ModelIdentifiers._SgCf); + + static DigitalInkRecognitionModelIdentifier _sgcLatnKe; + public static DigitalInkRecognitionModelIdentifier SgcLatnKe => GetModelIdentifier (ref _sgcLatnKe, ModelIdentifiers._SgcLatnKe); + + static DigitalInkRecognitionModelIdentifier _sgjDevaIn; + public static DigitalInkRecognitionModelIdentifier SgjDevaIn => GetModelIdentifier (ref _sgjDevaIn, ModelIdentifiers._SgjDevaIn); + + static DigitalInkRecognitionModelIdentifier _sgsLatnLt; + public static DigitalInkRecognitionModelIdentifier SgsLatnLt => GetModelIdentifier (ref _sgsLatnLt, ModelIdentifiers._SgsLatnLt); + + static DigitalInkRecognitionModelIdentifier _si; + public static DigitalInkRecognitionModelIdentifier Si => GetModelIdentifier (ref _si, ModelIdentifiers._Si); + + static DigitalInkRecognitionModelIdentifier _sk; + public static DigitalInkRecognitionModelIdentifier Sk => GetModelIdentifier (ref _sk, ModelIdentifiers._Sk); + + static DigitalInkRecognitionModelIdentifier _skgLatnMg; + public static DigitalInkRecognitionModelIdentifier SkgLatnMg => GetModelIdentifier (ref _skgLatnMg, ModelIdentifiers._SkgLatnMg); + + static DigitalInkRecognitionModelIdentifier _sl; + public static DigitalInkRecognitionModelIdentifier Sl => GetModelIdentifier (ref _sl, ModelIdentifiers._Sl); + + static DigitalInkRecognitionModelIdentifier _sm; + public static DigitalInkRecognitionModelIdentifier Sm => GetModelIdentifier (ref _sm, ModelIdentifiers._Sm); + + static DigitalInkRecognitionModelIdentifier _snLatn; + public static DigitalInkRecognitionModelIdentifier SnLatn => GetModelIdentifier (ref _snLatn, ModelIdentifiers._SnLatn); + + static DigitalInkRecognitionModelIdentifier _so; + public static DigitalInkRecognitionModelIdentifier So => GetModelIdentifier (ref _so, ModelIdentifiers._So); + + static DigitalInkRecognitionModelIdentifier _sq; + public static DigitalInkRecognitionModelIdentifier Sq => GetModelIdentifier (ref _sq, ModelIdentifiers._Sq); + + static DigitalInkRecognitionModelIdentifier _srCyrl; + public static DigitalInkRecognitionModelIdentifier SrCyrl => GetModelIdentifier (ref _srCyrl, ModelIdentifiers._SrCyrl); + + static DigitalInkRecognitionModelIdentifier _srLatnRs; + public static DigitalInkRecognitionModelIdentifier SrLatnRs => GetModelIdentifier (ref _srLatnRs, ModelIdentifiers._SrLatnRs); + + static DigitalInkRecognitionModelIdentifier _ssSz; + public static DigitalInkRecognitionModelIdentifier SsSz => GetModelIdentifier (ref _ssSz, ModelIdentifiers._SsSz); + + static DigitalInkRecognitionModelIdentifier _stvLatn; + public static DigitalInkRecognitionModelIdentifier StvLatn => GetModelIdentifier (ref _stvLatn, ModelIdentifiers._StvLatn); + + static DigitalInkRecognitionModelIdentifier _suLatn; + public static DigitalInkRecognitionModelIdentifier SuLatn => GetModelIdentifier (ref _suLatn, ModelIdentifiers._SuLatn); + + static DigitalInkRecognitionModelIdentifier _sukLatnTz; + public static DigitalInkRecognitionModelIdentifier SukLatnTz => GetModelIdentifier (ref _sukLatnTz, ModelIdentifiers._SukLatnTz); + + static DigitalInkRecognitionModelIdentifier _svFi; + public static DigitalInkRecognitionModelIdentifier SvFi => GetModelIdentifier (ref _svFi, ModelIdentifiers._SvFi); + + static DigitalInkRecognitionModelIdentifier _svSe; + public static DigitalInkRecognitionModelIdentifier SvSe => GetModelIdentifier (ref _svSe, ModelIdentifiers._SvSe); + + static DigitalInkRecognitionModelIdentifier _sw; + public static DigitalInkRecognitionModelIdentifier Sw => GetModelIdentifier (ref _sw, ModelIdentifiers._Sw); + + static DigitalInkRecognitionModelIdentifier _swvDevaIn; + public static DigitalInkRecognitionModelIdentifier SwvDevaIn => GetModelIdentifier (ref _swvDevaIn, ModelIdentifiers._SwvDevaIn); + + static DigitalInkRecognitionModelIdentifier _sxuLatnDe; + public static DigitalInkRecognitionModelIdentifier SxuLatnDe => GetModelIdentifier (ref _sxuLatnDe, ModelIdentifiers._SxuLatnDe); + + static DigitalInkRecognitionModelIdentifier _sylLatn; + public static DigitalInkRecognitionModelIdentifier SylLatn => GetModelIdentifier (ref _sylLatn, ModelIdentifiers._SylLatn); + + static DigitalInkRecognitionModelIdentifier _ta; + public static DigitalInkRecognitionModelIdentifier Ta => GetModelIdentifier (ref _ta, ModelIdentifiers._Ta); + + static DigitalInkRecognitionModelIdentifier _taLatn; + public static DigitalInkRecognitionModelIdentifier TaLatn => GetModelIdentifier (ref _taLatn, ModelIdentifiers._TaLatn); + + static DigitalInkRecognitionModelIdentifier _tdxLatnMg; + public static DigitalInkRecognitionModelIdentifier TdxLatnMg => GetModelIdentifier (ref _tdxLatnMg, ModelIdentifiers._TdxLatnMg); + + static DigitalInkRecognitionModelIdentifier _te; + public static DigitalInkRecognitionModelIdentifier Te => GetModelIdentifier (ref _te, ModelIdentifiers._Te); + + static DigitalInkRecognitionModelIdentifier _teLatn; + public static DigitalInkRecognitionModelIdentifier TeLatn => GetModelIdentifier (ref _teLatn, ModelIdentifiers._TeLatn); + + static DigitalInkRecognitionModelIdentifier _tetLatnTl; + public static DigitalInkRecognitionModelIdentifier TetLatnTl => GetModelIdentifier (ref _tetLatnTl, ModelIdentifiers._TetLatnTl); + + static DigitalInkRecognitionModelIdentifier _tgCyrl; + public static DigitalInkRecognitionModelIdentifier TgCyrl => GetModelIdentifier (ref _tgCyrl, ModelIdentifiers._TgCyrl); + + static DigitalInkRecognitionModelIdentifier _th; + public static DigitalInkRecognitionModelIdentifier Th => GetModelIdentifier (ref _th, ModelIdentifiers._Th); + + static DigitalInkRecognitionModelIdentifier _ti; + public static DigitalInkRecognitionModelIdentifier Ti => GetModelIdentifier (ref _ti, ModelIdentifiers._Ti); + + static DigitalInkRecognitionModelIdentifier _tkLatn; + public static DigitalInkRecognitionModelIdentifier TkLatn => GetModelIdentifier (ref _tkLatn, ModelIdentifiers._TkLatn); + + static DigitalInkRecognitionModelIdentifier _tnBw; + public static DigitalInkRecognitionModelIdentifier TnBw => GetModelIdentifier (ref _tnBw, ModelIdentifiers._TnBw); + + static DigitalInkRecognitionModelIdentifier _tpi; + public static DigitalInkRecognitionModelIdentifier Tpi => GetModelIdentifier (ref _tpi, ModelIdentifiers._Tpi); + + static DigitalInkRecognitionModelIdentifier _trTr; + public static DigitalInkRecognitionModelIdentifier TrTr => GetModelIdentifier (ref _trTr, ModelIdentifiers._TrTr); + + static DigitalInkRecognitionModelIdentifier _trfLatnTt; + public static DigitalInkRecognitionModelIdentifier TrfLatnTt => GetModelIdentifier (ref _trfLatnTt, ModelIdentifiers._TrfLatnTt); + + static DigitalInkRecognitionModelIdentifier _trpLatn; + public static DigitalInkRecognitionModelIdentifier TrpLatn => GetModelIdentifier (ref _trpLatn, ModelIdentifiers._TrpLatn); + + static DigitalInkRecognitionModelIdentifier _ts; + public static DigitalInkRecognitionModelIdentifier Ts => GetModelIdentifier (ref _ts, ModelIdentifiers._Ts); + + static DigitalInkRecognitionModelIdentifier _tsgLatnPh; + public static DigitalInkRecognitionModelIdentifier TsgLatnPh => GetModelIdentifier (ref _tsgLatnPh, ModelIdentifiers._TsgLatnPh); + + static DigitalInkRecognitionModelIdentifier _tumLatnMw; + public static DigitalInkRecognitionModelIdentifier TumLatnMw => GetModelIdentifier (ref _tumLatnMw, ModelIdentifiers._TumLatnMw); + + static DigitalInkRecognitionModelIdentifier _tuvLatnKe; + public static DigitalInkRecognitionModelIdentifier TuvLatnKe => GetModelIdentifier (ref _tuvLatnKe, ModelIdentifiers._TuvLatnKe); + + static DigitalInkRecognitionModelIdentifier _twdLatnNl; + public static DigitalInkRecognitionModelIdentifier TwdLatnNl => GetModelIdentifier (ref _twdLatnNl, ModelIdentifiers._TwdLatnNl); + + static DigitalInkRecognitionModelIdentifier _uk; + public static DigitalInkRecognitionModelIdentifier Uk => GetModelIdentifier (ref _uk, ModelIdentifiers._Uk); + + static DigitalInkRecognitionModelIdentifier _unrDevaIn; + public static DigitalInkRecognitionModelIdentifier UnrDevaIn => GetModelIdentifier (ref _unrDevaIn, ModelIdentifiers._UnrDevaIn); + + static DigitalInkRecognitionModelIdentifier _unrLatn; + public static DigitalInkRecognitionModelIdentifier UnrLatn => GetModelIdentifier (ref _unrLatn, ModelIdentifiers._UnrLatn); + + static DigitalInkRecognitionModelIdentifier _ur; + public static DigitalInkRecognitionModelIdentifier Ur => GetModelIdentifier (ref _ur, ModelIdentifiers._Ur); + + static DigitalInkRecognitionModelIdentifier _urLatn; + public static DigitalInkRecognitionModelIdentifier UrLatn => GetModelIdentifier (ref _urLatn, ModelIdentifiers._UrLatn); + + static DigitalInkRecognitionModelIdentifier _urPk; + public static DigitalInkRecognitionModelIdentifier UrPk => GetModelIdentifier (ref _urPk, ModelIdentifiers._UrPk); + + static DigitalInkRecognitionModelIdentifier _uzLatn; + public static DigitalInkRecognitionModelIdentifier UzLatn => GetModelIdentifier (ref _uzLatn, ModelIdentifiers._UzLatn); + + static DigitalInkRecognitionModelIdentifier _velLatnNl; + public static DigitalInkRecognitionModelIdentifier VelLatnNl => GetModelIdentifier (ref _velLatnNl, ModelIdentifiers._VelLatnNl); + + static DigitalInkRecognitionModelIdentifier _vepLatnRu; + public static DigitalInkRecognitionModelIdentifier VepLatnRu => GetModelIdentifier (ref _vepLatnRu, ModelIdentifiers._VepLatnRu); + + static DigitalInkRecognitionModelIdentifier _vi; + public static DigitalInkRecognitionModelIdentifier Vi => GetModelIdentifier (ref _vi, ModelIdentifiers._Vi); + + static DigitalInkRecognitionModelIdentifier _vktLatnId; + public static DigitalInkRecognitionModelIdentifier VktLatnId => GetModelIdentifier (ref _vktLatnId, ModelIdentifiers._VktLatnId); + + static DigitalInkRecognitionModelIdentifier _waLatnBe; + public static DigitalInkRecognitionModelIdentifier WaLatnBe => GetModelIdentifier (ref _waLatnBe, ModelIdentifiers._WaLatnBe); + + static DigitalInkRecognitionModelIdentifier _wbrDevaIn; + public static DigitalInkRecognitionModelIdentifier WbrDevaIn => GetModelIdentifier (ref _wbrDevaIn, ModelIdentifiers._WbrDevaIn); + + static DigitalInkRecognitionModelIdentifier _wryDevaIn; + public static DigitalInkRecognitionModelIdentifier WryDevaIn => GetModelIdentifier (ref _wryDevaIn, ModelIdentifiers._WryDevaIn); + + static DigitalInkRecognitionModelIdentifier _xh; + public static DigitalInkRecognitionModelIdentifier Xh => GetModelIdentifier (ref _xh, ModelIdentifiers._Xh); + + static DigitalInkRecognitionModelIdentifier _xmmLatnId; + public static DigitalInkRecognitionModelIdentifier XmmLatnId => GetModelIdentifier (ref _xmmLatnId, ModelIdentifiers._XmmLatnId); + + static DigitalInkRecognitionModelIdentifier _xnrDevaIn; + public static DigitalInkRecognitionModelIdentifier XnrDevaIn => GetModelIdentifier (ref _xnrDevaIn, ModelIdentifiers._XnrDevaIn); + + static DigitalInkRecognitionModelIdentifier _ymmLatnSo; + public static DigitalInkRecognitionModelIdentifier YmmLatnSo => GetModelIdentifier (ref _ymmLatnSo, ModelIdentifiers._YmmLatnSo); + + static DigitalInkRecognitionModelIdentifier _zaLatnCn; + public static DigitalInkRecognitionModelIdentifier ZaLatnCn => GetModelIdentifier (ref _zaLatnCn, ModelIdentifiers._ZaLatnCn); + + static DigitalInkRecognitionModelIdentifier _zhHani; + public static DigitalInkRecognitionModelIdentifier ZhHani => GetModelIdentifier (ref _zhHani, ModelIdentifiers._ZhHani); + + static DigitalInkRecognitionModelIdentifier _zhHaniCn; + public static DigitalInkRecognitionModelIdentifier ZhHaniCn => GetModelIdentifier (ref _zhHaniCn, ModelIdentifiers._ZhHaniCn); + + static DigitalInkRecognitionModelIdentifier _zhHaniHk; + public static DigitalInkRecognitionModelIdentifier ZhHaniHk => GetModelIdentifier (ref _zhHaniHk, ModelIdentifiers._ZhHaniHk); + + static DigitalInkRecognitionModelIdentifier _zhHaniTw; + public static DigitalInkRecognitionModelIdentifier ZhHaniTw => GetModelIdentifier (ref _zhHaniTw, ModelIdentifiers._ZhHaniTw); + + static DigitalInkRecognitionModelIdentifier _zu; + public static DigitalInkRecognitionModelIdentifier Zu => GetModelIdentifier (ref _zu, ModelIdentifiers._Zu); + + static DigitalInkRecognitionModelIdentifier _zyjLatnCn; + public static DigitalInkRecognitionModelIdentifier ZyjLatnCn => GetModelIdentifier (ref _zyjLatnCn, ModelIdentifiers._ZyjLatnCn); + + static DigitalInkRecognitionModelIdentifier GetModelIdentifier (ref DigitalInkRecognitionModelIdentifier identifier, IntPtr intPtr) + { + if (identifier == null && intPtr != null) { + identifier = ObjCRuntime.Runtime.GetNSObject (intPtr); + } + + return identifier; + } + } +} diff --git a/source/MLKit/DigitalInkRecognition/External-Dependency-Info.txt b/source/MLKit/DigitalInkRecognition/External-Dependency-Info.txt new file mode 100644 index 000000000..f6708b6b6 --- /dev/null +++ b/source/MLKit/DigitalInkRecognition/External-Dependency-Info.txt @@ -0,0 +1,1179 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for MLKit APIs Core iOS Library incorporates third party +material from the projects listed below. The original copyright notice and +the license under which Microsoft received such third party material are set +forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# MLKit iOS SDK +# https://developers.google.com/ml-kit +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK +######################################## + +######################################## +# Firebase iOS SDK - Google Utilities +# https://github.com/firebase/firebase-ios-sdk/tree/master/GoogleUtilities +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK - Google Utilities +######################################## + +######################################## +# Google Toolbox for Mac +# https://github.com/google/google-toolbox-for-mac +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac +######################################## + +######################################## +# Nanopb - Protocol Buffers for Embedded Systems +# https://github.com/nanopb/nanopb +######################################## + + +Copyright (c) 2011 Petteri Aimonen + +This software is provided 'as-is', without any express or +implied warranty. In no event will the authors be held liable +for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use + this software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. + +######################################## +# end - Nanopb - Protocol Buffers for Embedded Systems +######################################## + +######################################## +# Google Toolbox for Mac - Session Fetcher +# https://github.com/google/gtm-session-fetcher +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac - Session Fetcher +######################################## + +######################################## +# Protobuf +# https://github.com/google/protobuf +######################################## + + +Copyright 2014, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +######################################## +# end - Protobuf +######################################## + +######################################## +# LevelDB +# https://github.com/google/leveldb +######################################## + + +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +######################################## +# end - LevelDB +######################################## + +######################################## +# Google APIs Client Library for Objective-C (REST) +# https://github.com/google/google-api-objectivec-client-for-rest +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +######################################## +# end - Google APIs Client Library for Objective-C (REST) +######################################## diff --git a/source/MLKit/DigitalInkRecognition/License.md b/source/MLKit/DigitalInkRecognition/License.md new file mode 100755 index 000000000..7b2fc24c9 --- /dev/null +++ b/source/MLKit/DigitalInkRecognition/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [MLKit Digital Ink Recognition for iOS](https://developers.google.com/ml-kit/guides), which is subject to the [Terms of Service for MLKit](https://developers.google.com/ml-kit/terms). + +### Xamarin Component for MLKit Digital Ink Recognition for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/MLKit/FaceDetection/ApiDefinition.cs b/source/MLKit/FaceDetection/ApiDefinition.cs new file mode 100644 index 000000000..51b56f41e --- /dev/null +++ b/source/MLKit/FaceDetection/ApiDefinition.cs @@ -0,0 +1,281 @@ +using System; + +using UIKit; +using Foundation; +using CoreGraphics; +using ObjCRuntime; + +using MLKit.Core; + +namespace MLKit.FaceDetection { + + [Static] + partial interface FaceContours { + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeFace; + [Field ("MLKFaceContourTypeFace", "__Internal")] + NSString Face { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeLeftEyebrowTop; + [Field ("MLKFaceContourTypeLeftEyebrowTop", "__Internal")] + NSString LeftEyebrowTop { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeLeftEyebrowBottom; + [Field ("MLKFaceContourTypeLeftEyebrowBottom", "__Internal")] + NSString eftEyebrowBottom { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeRightEyebrowTop; + [Field ("MLKFaceContourTypeRightEyebrowTop", "__Internal")] + NSString RightEyebrowTop { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeRightEyebrowBottom; + [Field ("MLKFaceContourTypeRightEyebrowBottom", "__Internal")] + NSString RightEyebrowBottom { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeLeftEye; + [Field ("MLKFaceContourTypeLeftEye", "__Internal")] + NSString LeftEye { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeRightEye; + [Field ("MLKFaceContourTypeRightEye", "__Internal")] + NSString RightEye { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeUpperLipTop; + [Field ("MLKFaceContourTypeUpperLipTop", "__Internal")] + NSString UpperLipTop { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeUpperLipBottom; + [Field ("MLKFaceContourTypeUpperLipBottom", "__Internal")] + NSString UpperLipBottom { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeLowerLipTop; + [Field ("MLKFaceContourTypeLowerLipTop", "__Internal")] + NSString LowerLipTop { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeLowerLipBottom; + [Field ("MLKFaceContourTypeLowerLipBottom", "__Internal")] + NSString LowerLipBottom { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeNoseBridge; + [Field ("MLKFaceContourTypeNoseBridge", "__Internal")] + NSString NoseBridge { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeNoseBottom; + [Field ("MLKFaceContourTypeNoseBottom", "__Internal")] + NSString NoseBottom { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeLeftCheek; + [Field ("MLKFaceContourTypeLeftCheek", "__Internal")] + NSString LeftCheek { get; } + + // extern const MLKFaceContourType _Nonnull MLKFaceContourTypeRightCheek; + [Field ("MLKFaceContourTypeRightCheek", "__Internal")] + NSString RightCheek { get; } + } + + // @interface MLKFaceContour : NSObject + [BaseType (typeof (NSObject), Name = "MLKFaceContour")] + [DisableDefaultCtor] + interface FaceContour { + // @property (readonly, nonatomic) MLKFaceContourType _Nonnull type; + [Export ("type")] + string Type { get; } + + // @property (readonly, nonatomic) NSArray * _Nonnull points; + [Export ("points")] + VisionPoint [] Points { get; } + } + + [Static] + partial interface FaceLandmarks { + // extern const MLKFaceLandmarkType _Nonnull MLKFaceLandmarkTypeMouthBottom; + [Field ("MLKFaceLandmarkTypeMouthBottom", "__Internal")] + NSString MouthBottom { get; } + + // extern const MLKFaceLandmarkType _Nonnull MLKFaceLandmarkTypeMouthRight; + [Field ("MLKFaceLandmarkTypeMouthRight", "__Internal")] + NSString MouthRight { get; } + + // extern const MLKFaceLandmarkType _Nonnull MLKFaceLandmarkTypeMouthLeft; + [Field ("MLKFaceLandmarkTypeMouthLeft", "__Internal")] + NSString MouthLeft { get; } + + // extern const MLKFaceLandmarkType _Nonnull MLKFaceLandmarkTypeLeftEar; + [Field ("MLKFaceLandmarkTypeLeftEar", "__Internal")] + NSString LeftEar { get; } + + // extern const MLKFaceLandmarkType _Nonnull MLKFaceLandmarkTypeRightEar; + [Field ("MLKFaceLandmarkTypeRightEar", "__Internal")] + NSString RightEar { get; } + + // extern const MLKFaceLandmarkType _Nonnull MLKFaceLandmarkTypeLeftEye; + [Field ("MLKFaceLandmarkTypeLeftEye", "__Internal")] + NSString LeftEye { get; } + + // extern const MLKFaceLandmarkType _Nonnull MLKFaceLandmarkTypeRightEye; + [Field ("MLKFaceLandmarkTypeRightEye", "__Internal")] + NSString RightEye { get; } + + // extern const MLKFaceLandmarkType _Nonnull MLKFaceLandmarkTypeLeftCheek; + [Field ("MLKFaceLandmarkTypeLeftCheek", "__Internal")] + NSString LeftCheek { get; } + + // extern const MLKFaceLandmarkType _Nonnull MLKFaceLandmarkTypeRightCheek; + [Field ("MLKFaceLandmarkTypeRightCheek", "__Internal")] + NSString RightCheek { get; } + + // extern const MLKFaceLandmarkType _Nonnull MLKFaceLandmarkTypeNoseBase; + [Field ("MLKFaceLandmarkTypeNoseBase", "__Internal")] + NSString NoseBase { get; } + } + + // @interface MLKFaceLandmark : NSObject + [BaseType (typeof (NSObject), Name = "MLKFaceLandmark")] + [DisableDefaultCtor] + interface FaceLandmark { + // @property (readonly, nonatomic) MLKFaceLandmarkType _Nonnull type; + [Export ("type")] + string Type { get; } + + // @property (readonly, nonatomic) MLKVisionPoint * _Nonnull position; + [Export ("position")] + VisionPoint Position { get; } + } + + // @interface MLKFace : NSObject + [BaseType (typeof (NSObject), Name = "MLKFace")] + [DisableDefaultCtor] + interface Face { + // @property (readonly, nonatomic) CGRect frame; + [Export ("frame")] + CGRect Frame { get; } + + // @property (readonly, nonatomic) NSArray * _Nonnull landmarks; + [Export ("landmarks")] + FaceLandmark [] Landmarks { get; } + + // @property (readonly, nonatomic) NSArray * _Nonnull contours; + [Export ("contours")] + FaceContour [] Contours { get; } + + // @property (readonly, nonatomic) BOOL hasTrackingID; + [Export ("hasTrackingID")] + bool HasTrackingID { get; } + + // @property (readonly, nonatomic) NSInteger trackingID; + [Export ("trackingID")] + nint TrackingID { get; } + + // @property (readonly, nonatomic) BOOL hasHeadEulerAngleX; + [Export ("hasHeadEulerAngleX")] + bool HasHeadEulerAngleX { get; } + + // @property (readonly, nonatomic) CGFloat headEulerAngleX; + [Export ("headEulerAngleX")] + nfloat HeadEulerAngleX { get; } + + // @property (readonly, nonatomic) BOOL hasHeadEulerAngleY; + [Export ("hasHeadEulerAngleY")] + bool HasHeadEulerAngleY { get; } + + // @property (readonly, nonatomic) CGFloat headEulerAngleY; + [Export ("headEulerAngleY")] + nfloat HeadEulerAngleY { get; } + + // @property (readonly, nonatomic) BOOL hasHeadEulerAngleZ; + [Export ("hasHeadEulerAngleZ")] + bool HasHeadEulerAngleZ { get; } + + // @property (readonly, nonatomic) CGFloat headEulerAngleZ; + [Export ("headEulerAngleZ")] + nfloat HeadEulerAngleZ { get; } + + // @property (readonly, nonatomic) BOOL hasSmilingProbability; + [Export ("hasSmilingProbability")] + bool HasSmilingProbability { get; } + + // @property (readonly, nonatomic) CGFloat smilingProbability; + [Export ("smilingProbability")] + nfloat SmilingProbability { get; } + + // @property (readonly, nonatomic) BOOL hasLeftEyeOpenProbability; + [Export ("hasLeftEyeOpenProbability")] + bool HasLeftEyeOpenProbability { get; } + + // @property (readonly, nonatomic) CGFloat leftEyeOpenProbability; + [Export ("leftEyeOpenProbability")] + nfloat LeftEyeOpenProbability { get; } + + // @property (readonly, nonatomic) BOOL hasRightEyeOpenProbability; + [Export ("hasRightEyeOpenProbability")] + bool HasRightEyeOpenProbability { get; } + + // @property (readonly, nonatomic) CGFloat rightEyeOpenProbability; + [Export ("rightEyeOpenProbability")] + nfloat RightEyeOpenProbability { get; } + + // -(MLKFaceLandmark * _Nullable)landmarkOfType:(MLKFaceLandmarkType _Nonnull)type; + [Export ("landmarkOfType:")] + [return: NullAllowed] + FaceLandmark LandmarkOfType (string type); + + // -(MLKFaceContour * _Nullable)contourOfType:(MLKFaceContourType _Nonnull)type; + [Export ("contourOfType:")] + [return: NullAllowed] + FaceContour ContourOfType (string type); + } + + // typedef void (^MLKFaceDetectionCallback)(NSArray * _Nullable, NSError * _Nullable); + delegate void FaceDetectionCallback ([NullAllowed] Face [] faces, [NullAllowed] NSError error); + + // @interface MLKFaceDetector : NSObject + [BaseType (typeof (NSObject), Name = "MLKFaceDetector")] + [DisableDefaultCtor] + interface FaceDetector { + // +(instancetype _Nonnull)faceDetectorWithOptions:(MLKFaceDetectorOptions * _Nonnull)options __attribute__((swift_name("faceDetector(options:)"))); + [Static] + [Export ("faceDetectorWithOptions:")] + FaceDetector FaceDetectorWithOptions (FaceDetectorOptions options); + + // +(instancetype _Nonnull)faceDetector __attribute__((swift_name("faceDetector()"))); + [Static] + [Export ("faceDetector")] + FaceDetector DefaultInstance { get; } + + // -(void)processImage:(id _Nonnull)image completion:(MLKFaceDetectionCallback _Nonnull)completion __attribute__((swift_name("process(_:completion:)"))); + [Export ("processImage:completion:")] + void ProcessImage (ICompatibleImage image, FaceDetectionCallback completion); + + // -(NSArray * _Nullable)resultsInImage:(id _Nonnull)image error:(NSError * _Nullable * _Nullable)error; + [Export ("resultsInImage:error:")] + [return: NullAllowed] + Face [] ResultsInImage (ICompatibleImage image, [NullAllowed] out NSError error); + } + + // @interface MLKFaceDetectorOptions : NSObject + [BaseType (typeof (NSObject), Name = "MLKFaceDetectorOptions")] + interface FaceDetectorOptions { + // @property (nonatomic) MLKFaceDetectorClassificationMode classificationMode; + [Export ("classificationMode")] + FaceClassificationMode ClassificationMode { get; set; } + + // @property (nonatomic) MLKFaceDetectorPerformanceMode performanceMode; + [Export ("performanceMode")] + FacePerformanceMode PerformanceMode { get; set; } + + // @property (nonatomic) MLKFaceDetectorLandmarkMode landmarkMode; + [Export ("landmarkMode")] + FaceLandmarkMode LandmarkMode { get; set; } + + // @property (nonatomic) MLKFaceDetectorContourMode contourMode; + [Export ("contourMode")] + FaceContourMode ContourMode { get; set; } + + // @property (nonatomic) CGFloat minFaceSize; + [Export ("minFaceSize")] + nfloat MinFaceSize { get; set; } + + // @property (getter = isTrackingEnabled, nonatomic) BOOL trackingEnabled; + [Export ("trackingEnabled")] + bool TrackingEnabled { [Bind ("isTrackingEnabled")] get; set; } + } +} diff --git a/source/MLKit/FaceDetection/Enums.cs b/source/MLKit/FaceDetection/Enums.cs new file mode 100644 index 000000000..3c7fc1163 --- /dev/null +++ b/source/MLKit/FaceDetection/Enums.cs @@ -0,0 +1,28 @@ +using System; +using ObjCRuntime; + +namespace MLKit.FaceDetection { + [Native] + public enum FaceClassificationMode : long { + None = 1, + All = 2 + } + + [Native] + public enum FacePerformanceMode : long { + Fast = 1, + Accurate = 2 + } + + [Native] + public enum FaceLandmarkMode : long { + None = 1, + All = 2 + } + + [Native] + public enum FaceContourMode : long { + None = 1, + All = 2 + } +} diff --git a/source/MLKit/FaceDetection/External-Dependency-Info.txt b/source/MLKit/FaceDetection/External-Dependency-Info.txt new file mode 100644 index 000000000..f6708b6b6 --- /dev/null +++ b/source/MLKit/FaceDetection/External-Dependency-Info.txt @@ -0,0 +1,1179 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for MLKit APIs Core iOS Library incorporates third party +material from the projects listed below. The original copyright notice and +the license under which Microsoft received such third party material are set +forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# MLKit iOS SDK +# https://developers.google.com/ml-kit +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK +######################################## + +######################################## +# Firebase iOS SDK - Google Utilities +# https://github.com/firebase/firebase-ios-sdk/tree/master/GoogleUtilities +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK - Google Utilities +######################################## + +######################################## +# Google Toolbox for Mac +# https://github.com/google/google-toolbox-for-mac +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac +######################################## + +######################################## +# Nanopb - Protocol Buffers for Embedded Systems +# https://github.com/nanopb/nanopb +######################################## + + +Copyright (c) 2011 Petteri Aimonen + +This software is provided 'as-is', without any express or +implied warranty. In no event will the authors be held liable +for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use + this software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. + +######################################## +# end - Nanopb - Protocol Buffers for Embedded Systems +######################################## + +######################################## +# Google Toolbox for Mac - Session Fetcher +# https://github.com/google/gtm-session-fetcher +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac - Session Fetcher +######################################## + +######################################## +# Protobuf +# https://github.com/google/protobuf +######################################## + + +Copyright 2014, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +######################################## +# end - Protobuf +######################################## + +######################################## +# LevelDB +# https://github.com/google/leveldb +######################################## + + +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +######################################## +# end - LevelDB +######################################## + +######################################## +# Google APIs Client Library for Objective-C (REST) +# https://github.com/google/google-api-objectivec-client-for-rest +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +######################################## +# end - Google APIs Client Library for Objective-C (REST) +######################################## diff --git a/source/MLKit/FaceDetection/FaceDetection.csproj b/source/MLKit/FaceDetection/FaceDetection.csproj new file mode 100644 index 000000000..628f11003 --- /dev/null +++ b/source/MLKit/FaceDetection/FaceDetection.csproj @@ -0,0 +1,67 @@ + + + + Xamarin.iOS10 + true + MLKit.FaceDetection + MLKit.FaceDetection + 1.0.0.0 + 1.5.0 + Resources + true + + + + Xamarin.MLKit.iOS.FaceDetection + MLKit APIs Face Detection iOS Library + C# bindings for MLKit APIs Face Detection iOS Library + C# bindings for MLKit APIs Face Detection iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseioscore_128x128.png + https://go.microsoft.com/fwlink/?linkid=2007321 + License.md + true + 1.5.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/MLKit/FaceDetection/FaceDetection.targets b/source/MLKit/FaceDetection/FaceDetection.targets new file mode 100644 index 000000000..bd2ee0113 --- /dev/null +++ b/source/MLKit/FaceDetection/FaceDetection.targets @@ -0,0 +1,78 @@ + + + + <_MLKitFaceAssemblyName>MLKit.FaceDetection, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_MLKitFaceItemsFolder>MLKFace-1.5.0 + <_MLKitFaceSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitFaceItemsFolder)\ + <_MLKitFaceResourcesFolder>$(XamarinBuildDownloadDir)$(_MLKitFaceItemsFolder)\Resources\GoogleMVFaceDetectorResources\ + + + + https://dl.google.com/dl/cpdc/36b88d3c882c11ed/MLKitFaceDetection-1.5.0.tar.gz + Tgz + + + + + + + + Framework + True + True + -lc++ + Accelerate AVFoundation CoreGraphics CoreMedia CoreVideo Foundation UIKit + + + + + GoogleMVFaceDetectorResources.bundle\BCLjoy_200.emd + False + + + GoogleMVFaceDetectorResources.bundle\BCLlefteyeclosed_200.emd + False + + + GoogleMVFaceDetectorResources.bundle\BCLrighteyeclosed_200.emd + False + + + GoogleMVFaceDetectorResources.bundle\blazeface.tfl + False + + + GoogleMVFaceDetectorResources.bundle\contours.tfl + False + + + GoogleMVFaceDetectorResources.bundle\fssd_25_8bit_gray_v1.tflite + False + + + GoogleMVFaceDetectorResources.bundle\fssd_25_8bit_v1.tflite + False + + + GoogleMVFaceDetectorResources.bundle\fssd_100_8bit_gray_v1.tflite + False + + + GoogleMVFaceDetectorResources.bundle\fssd_100_8bit_v1.tflite + False + + + GoogleMVFaceDetectorResources.bundle\LMprec_600.emd + False + + + GoogleMVFaceDetectorResources.bundle\MFT_fssd_accgray.pb + False + + + GoogleMVFaceDetectorResources.bundle\MFT_fssd_fastgray.pb + False + + + + \ No newline at end of file diff --git a/source/MLKit/FaceDetection/License.md b/source/MLKit/FaceDetection/License.md new file mode 100755 index 000000000..be3d15b53 --- /dev/null +++ b/source/MLKit/FaceDetection/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [MLKit Face Detection for iOS](https://developers.google.com/ml-kit/guides), which is subject to the [Terms of Service for MLKit](https://developers.google.com/ml-kit/terms). + +### Xamarin Component for MLKit Face Detection for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/MLKit/ImageLabeling/ApiDefinition.cs b/source/MLKit/ImageLabeling/ApiDefinition.cs new file mode 100644 index 000000000..653b38fef --- /dev/null +++ b/source/MLKit/ImageLabeling/ApiDefinition.cs @@ -0,0 +1,16 @@ +using System; + +using UIKit; +using Foundation; +using CoreGraphics; +using ObjCRuntime; + +using MLKit.Core; +using MLKit.Vision; + +namespace MLKit.ImageLabeling { + // @interface MLKImageLabelerOptions : MLKCommonImageLabelerOptions + [BaseType (typeof (CommonImageLabelerOptions), Name = "MLKImageLabelerOptions")] + interface ImageLabelerOptions { + } +} diff --git a/source/MLKit/ImageLabeling/Enums.cs b/source/MLKit/ImageLabeling/Enums.cs new file mode 100644 index 000000000..3ca0086e1 --- /dev/null +++ b/source/MLKit/ImageLabeling/Enums.cs @@ -0,0 +1,6 @@ +using System; +using ObjCRuntime; + +namespace MLKit.ImageLabeling { + +} diff --git a/source/MLKit/ImageLabeling/External-Dependency-Info.txt b/source/MLKit/ImageLabeling/External-Dependency-Info.txt new file mode 100644 index 000000000..f6708b6b6 --- /dev/null +++ b/source/MLKit/ImageLabeling/External-Dependency-Info.txt @@ -0,0 +1,1179 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for MLKit APIs Core iOS Library incorporates third party +material from the projects listed below. The original copyright notice and +the license under which Microsoft received such third party material are set +forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# MLKit iOS SDK +# https://developers.google.com/ml-kit +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK +######################################## + +######################################## +# Firebase iOS SDK - Google Utilities +# https://github.com/firebase/firebase-ios-sdk/tree/master/GoogleUtilities +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK - Google Utilities +######################################## + +######################################## +# Google Toolbox for Mac +# https://github.com/google/google-toolbox-for-mac +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac +######################################## + +######################################## +# Nanopb - Protocol Buffers for Embedded Systems +# https://github.com/nanopb/nanopb +######################################## + + +Copyright (c) 2011 Petteri Aimonen + +This software is provided 'as-is', without any express or +implied warranty. In no event will the authors be held liable +for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use + this software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. + +######################################## +# end - Nanopb - Protocol Buffers for Embedded Systems +######################################## + +######################################## +# Google Toolbox for Mac - Session Fetcher +# https://github.com/google/gtm-session-fetcher +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac - Session Fetcher +######################################## + +######################################## +# Protobuf +# https://github.com/google/protobuf +######################################## + + +Copyright 2014, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +######################################## +# end - Protobuf +######################################## + +######################################## +# LevelDB +# https://github.com/google/leveldb +######################################## + + +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +######################################## +# end - LevelDB +######################################## + +######################################## +# Google APIs Client Library for Objective-C (REST) +# https://github.com/google/google-api-objectivec-client-for-rest +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +######################################## +# end - Google APIs Client Library for Objective-C (REST) +######################################## diff --git a/source/MLKit/ImageLabeling/ImageLabeling.csproj b/source/MLKit/ImageLabeling/ImageLabeling.csproj new file mode 100644 index 000000000..bca6d08ef --- /dev/null +++ b/source/MLKit/ImageLabeling/ImageLabeling.csproj @@ -0,0 +1,68 @@ + + + + Xamarin.iOS10 + true + MLKit.ImageLabeling + MLKit.ImageLabeling + 1.0.0.0 + 1.5.0 + Resources + true + + + + Xamarin.MLKit.iOS.ImageLabeling + MLKit APIs Image Labeling iOS Library + C# bindings for MLKit APIs Image Labeling iOS Library + C# bindings for MLKit APIs Image Labeling iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseioscore_128x128.png + https://go.microsoft.com/fwlink/?linkid=2007321 + License.md + true + 1.5.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/MLKit/ImageLabeling/ImageLabeling.targets b/source/MLKit/ImageLabeling/ImageLabeling.targets new file mode 100644 index 000000000..ac8083b3a --- /dev/null +++ b/source/MLKit/ImageLabeling/ImageLabeling.targets @@ -0,0 +1,34 @@ + + + + <_MLKitVisionRecogCoreAssemblyName>MLKit.ImageLabeling, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_MLKitImgLblItemsFolder>MLKImgLbl-1.5.0 + <_MLKitImgLblSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitImgLblItemsFolder)\ + <_MLKitImgLblResourcesFolder>$(XamarinBuildDownloadDir)$(_MLKitImgLblItemsFolder)\Resources\MLKitImageLabelingResources\ + + + + https://dl.google.com/dl/cpdc/4c38b40cab50dfae/MLKitImageLabeling-1.5.0.tar.gz + Tgz + + + + + + + + Framework + True + True + -lc++ + CoreGraphics CoreLocation CoreVideo Foundation UIKit + + + + + MLKitImageLabelingResources.bundle\mobile_ica_8bit_with_metadata.tflite + False + + + + \ No newline at end of file diff --git a/source/MLKit/ImageLabeling/License.md b/source/MLKit/ImageLabeling/License.md new file mode 100755 index 000000000..a78f07eac --- /dev/null +++ b/source/MLKit/ImageLabeling/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [MLKit Image Labeling for iOS](https://developers.google.com/ml-kit/guides), which is subject to the [Terms of Service for MLKit](https://developers.google.com/ml-kit/terms). + +### Xamarin Component for MLKit Image Labeling for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/MLKit/ObjectDetection/ApiDefinition.cs b/source/MLKit/ObjectDetection/ApiDefinition.cs new file mode 100644 index 000000000..e1abdcd9f --- /dev/null +++ b/source/MLKit/ObjectDetection/ApiDefinition.cs @@ -0,0 +1,39 @@ +using System; + +using UIKit; +using Foundation; +using CoreGraphics; +using ObjCRuntime; + +using MLKit.Core; +using MLKit.Vision; + +namespace MLKit.ObjectDetection { + [Static] + interface DetectedObjectLabel { + // extern const MLKDetectedObjectLabel _Nonnull MLKDetectedObjectLabelFashionGood; + [Field ("MLKDetectedObjectLabelFashionGood", "__Internal")] + NSString FashionGood { get; } + + // extern const MLKDetectedObjectLabel _Nonnull MLKDetectedObjectLabelHomeGood; + [Field ("MLKDetectedObjectLabelHomeGood", "__Internal")] + NSString HomeGood { get; } + + // extern const MLKDetectedObjectLabel _Nonnull MLKDetectedObjectLabelFood; + [Field ("MLKDetectedObjectLabelFood", "__Internal")] + NSString Food { get; } + + // extern const MLKDetectedObjectLabel _Nonnull MLKDetectedObjectLabelPlace; + [Field ("MLKDetectedObjectLabelPlace", "__Internal")] + NSString Place { get; } + + // extern const MLKDetectedObjectLabel _Nonnull MLKDetectedObjectLabelPlant; + [Field ("MLKDetectedObjectLabelPlant", "__Internal")] + NSString Plant { get; } + } + + // @interface MLKObjectDetectorOptions : MLKCommonObjectDetectorOptions + [BaseType (typeof (CommonObjectDetectorOptions), Name = "MLKObjectDetectorOptions")] + interface ObjectDetectorOptions { + } +} diff --git a/source/MLKit/ObjectDetection/Enums.cs b/source/MLKit/ObjectDetection/Enums.cs new file mode 100644 index 000000000..b021b3a10 --- /dev/null +++ b/source/MLKit/ObjectDetection/Enums.cs @@ -0,0 +1,13 @@ +using System; +using ObjCRuntime; + +namespace MLKit.ObjectDetection { + [Native] + public enum DetectedObjectLabelIndex : long { + FashionGood = 0, + HomeGood = 1, + Food = 2, + Place = 3, + Plant = 4 + } +} diff --git a/source/MLKit/ObjectDetection/External-Dependency-Info.txt b/source/MLKit/ObjectDetection/External-Dependency-Info.txt new file mode 100644 index 000000000..f6708b6b6 --- /dev/null +++ b/source/MLKit/ObjectDetection/External-Dependency-Info.txt @@ -0,0 +1,1179 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for MLKit APIs Core iOS Library incorporates third party +material from the projects listed below. The original copyright notice and +the license under which Microsoft received such third party material are set +forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# MLKit iOS SDK +# https://developers.google.com/ml-kit +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK +######################################## + +######################################## +# Firebase iOS SDK - Google Utilities +# https://github.com/firebase/firebase-ios-sdk/tree/master/GoogleUtilities +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK - Google Utilities +######################################## + +######################################## +# Google Toolbox for Mac +# https://github.com/google/google-toolbox-for-mac +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac +######################################## + +######################################## +# Nanopb - Protocol Buffers for Embedded Systems +# https://github.com/nanopb/nanopb +######################################## + + +Copyright (c) 2011 Petteri Aimonen + +This software is provided 'as-is', without any express or +implied warranty. In no event will the authors be held liable +for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use + this software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. + +######################################## +# end - Nanopb - Protocol Buffers for Embedded Systems +######################################## + +######################################## +# Google Toolbox for Mac - Session Fetcher +# https://github.com/google/gtm-session-fetcher +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac - Session Fetcher +######################################## + +######################################## +# Protobuf +# https://github.com/google/protobuf +######################################## + + +Copyright 2014, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +######################################## +# end - Protobuf +######################################## + +######################################## +# LevelDB +# https://github.com/google/leveldb +######################################## + + +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +######################################## +# end - LevelDB +######################################## + +######################################## +# Google APIs Client Library for Objective-C (REST) +# https://github.com/google/google-api-objectivec-client-for-rest +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +######################################## +# end - Google APIs Client Library for Objective-C (REST) +######################################## diff --git a/source/MLKit/ObjectDetection/License.md b/source/MLKit/ObjectDetection/License.md new file mode 100755 index 000000000..a8309a1e2 --- /dev/null +++ b/source/MLKit/ObjectDetection/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [MLKit Object Detection and Tracking for iOS](https://developers.google.com/ml-kit/guides), which is subject to the [Terms of Service for MLKit](https://developers.google.com/ml-kit/terms). + +### Xamarin Component for MLKit Detection and Tracking for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/MLKit/ObjectDetection/ObjectDetection.csproj b/source/MLKit/ObjectDetection/ObjectDetection.csproj new file mode 100644 index 000000000..e3774951c --- /dev/null +++ b/source/MLKit/ObjectDetection/ObjectDetection.csproj @@ -0,0 +1,68 @@ + + + + Xamarin.iOS10 + true + MLKit.ObjectDetection + MLKit.ObjectDetection + 1.0.0.0 + 1.5.0 + Resources + true + + + + Xamarin.MLKit.iOS.ObjectDetection + MLKit APIs Object Detection iOS Library + C# bindings for MLKit APIs Object Detection iOS Library + C# bindings for MLKit APIs Object Detection iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseioscore_128x128.png + https://go.microsoft.com/fwlink/?linkid=2007321 + License.md + true + 1.5.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/MLKit/ObjectDetection/ObjectDetection.targets b/source/MLKit/ObjectDetection/ObjectDetection.targets new file mode 100644 index 000000000..e24f0a967 --- /dev/null +++ b/source/MLKit/ObjectDetection/ObjectDetection.targets @@ -0,0 +1,34 @@ + + + + <_MLKitVisionRecogCoreAssemblyName>MLKit.ObjectDetection, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_MLKitObjDectItemsFolder>MLKObjDect-1.5.0 + <_MLKitObjDectSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitObjDectItemsFolder)\ + <_MLKitObjDectResourcesFolder>$(XamarinBuildDownloadDir)$(_MLKitObjDectItemsFolder)\Resources\MLKitObjectDetectionResources\ + + + + https://dl.google.com/dl/cpdc/b89490e0be9de993/MLKitObjectDetection-1.5.0.tar.gz + Tgz + + + + + + + + Framework + True + True + -lc++ + Accelerate CoreGraphics CoreImage CoreMedia CoreVideo Foundation UIKit + + + + + MLKitObjectDetectionResources.bundle\mobile_object_classifier_v0_2_3_with_metadata.tflite + False + + + + \ No newline at end of file diff --git a/source/MLKit/TextRecognition/ApiDefinition.cs b/source/MLKit/TextRecognition/ApiDefinition.cs new file mode 100644 index 000000000..fbee67e56 --- /dev/null +++ b/source/MLKit/TextRecognition/ApiDefinition.cs @@ -0,0 +1,130 @@ +using System; + +using UIKit; +using Foundation; +using CoreGraphics; +using ObjCRuntime; + +using MLKit.Core; + +namespace MLKit.TextRecognition { + // @interface MLKCommonTextRecognizerOptions : NSObject + [BaseType (typeof (NSObject), Name = "MLKCommonTextRecognizerOptions")] + [DisableDefaultCtor] + interface CommonTextRecognizerOptions { + } + + // @interface MLKText : NSObject + [BaseType (typeof (NSObject), Name = "MLKText")] + [DisableDefaultCtor] + interface VisionText { + // @property (readonly, nonatomic) NSString * _Nonnull text; + [Export ("text")] + string Text { get; } + + // @property (readonly, nonatomic) NSArray * _Nonnull blocks; + [Export ("blocks")] + VisionTextBlock [] Blocks { get; } + } + + // @interface MLKTextBlock : NSObject + [BaseType (typeof (NSObject), Name = "MLKTextBlock")] + [DisableDefaultCtor] + interface VisionTextBlock { + // @property (readonly, nonatomic) NSString * _Nonnull text; + [Export ("text")] + string Text { get; } + + // @property (readonly, nonatomic) NSArray * _Nonnull lines; + [Export ("lines")] + VisionTextLine [] Lines { get; } + + // @property (readonly, nonatomic) CGRect frame; + [Export ("frame")] + CGRect Frame { get; } + + // @property (readonly, nonatomic) NSArray * _Nonnull recognizedLanguages; + [Export ("recognizedLanguages")] + TextRecognizedLanguage [] RecognizedLanguages { get; } + + // @property (readonly, nonatomic) NSArray * _Nonnull cornerPoints; + [Export ("cornerPoints")] + NSValue [] CornerPoints { get; } + } + + // @interface MLKTextElement : NSObject + [BaseType (typeof (NSObject), Name = "MLKTextElement")] + [DisableDefaultCtor] + interface VisionTextElement { + // @property (readonly, nonatomic) NSString * _Nonnull text; + [Export ("text")] + string Text { get; } + + // @property (readonly, nonatomic) CGRect frame; + [Export ("frame")] + CGRect Frame { get; } + + // @property (readonly, nonatomic) NSArray * _Nonnull recognizedLanguages; + [Export ("recognizedLanguages")] + TextRecognizedLanguage [] RecognizedLanguages { get; } + + // @property (readonly, nonatomic) NSArray * _Nonnull cornerPoints; + [Export ("cornerPoints")] + NSValue [] CornerPoints { get; } + } + + // @interface MLKTextLine : NSObject + [BaseType (typeof (NSObject), Name = "MLKTextLine")] + [DisableDefaultCtor] + interface VisionTextLine { + // @property (readonly, nonatomic) NSString * _Nonnull text; + [Export ("text")] + string Text { get; } + + // @property (readonly, nonatomic) NSArray * _Nonnull elements; + [Export ("elements")] + VisionTextElement [] Elements { get; } + + // @property (readonly, nonatomic) CGRect frame; + [Export ("frame")] + CGRect Frame { get; } + + // @property (readonly, nonatomic) NSArray * _Nonnull recognizedLanguages; + [Export ("recognizedLanguages")] + TextRecognizedLanguage [] RecognizedLanguages { get; } + + // @property (readonly, nonatomic) NSArray * _Nonnull cornerPoints; + [Export ("cornerPoints")] + NSValue [] CornerPoints { get; } + } + + // @interface MLKTextRecognizedLanguage : NSObject + [BaseType (typeof (NSObject), Name = "MLKTextRecognizedLanguage")] + [DisableDefaultCtor] + interface TextRecognizedLanguage { + // @property (readonly, nonatomic) NSString * _Nullable languageCode; + [NullAllowed, Export ("languageCode")] + string LanguageCode { get; } + } + + // typedef void (^MLKTextRecognitionCallback)(MLKText * _Nullable, NSError * _Nullable); + delegate void TextRecognitionCallback ([NullAllowed] VisionText text, [NullAllowed] NSError error); + + // @interface MLKTextRecognizer : NSObject + [BaseType (typeof (NSObject), Name = "MLKTextRecognizer")] + interface TextRecognizer { + // +(instancetype _Nonnull)textRecognizerWithOptions:(MLKCommonTextRecognizerOptions * _Nonnull)options __attribute__((swift_name("textRecognizer(options:)"))); + [Static] + [Export ("textRecognizerWithOptions:")] + TextRecognizer TextRecognizerWithOptions (CommonTextRecognizerOptions options); + + // -(void)processImage:(id _Nonnull)image completion:(MLKTextRecognitionCallback _Nonnull)completion __attribute__((swift_name("process(_:completion:)"))); + [Export ("processImage:completion:")] + void ProcessImage (ICompatibleImage image, TextRecognitionCallback completion); + + // -(MLKText * _Nullable)resultsInImage:(id _Nonnull)image error:(NSError * _Nullable * _Nullable)error; + [Export ("resultsInImage:error:")] + [return: NullAllowed] + VisionText ResultsInImage (ICompatibleImage image, [NullAllowed] out NSError error); + } +} diff --git a/source/MLKit/TextRecognition/Enums.cs b/source/MLKit/TextRecognition/Enums.cs new file mode 100644 index 000000000..4abfd0a78 --- /dev/null +++ b/source/MLKit/TextRecognition/Enums.cs @@ -0,0 +1,6 @@ +using System; +using ObjCRuntime; + +namespace MLKit.TextRecognition { + +} diff --git a/source/MLKit/TextRecognition/External-Dependency-Info.txt b/source/MLKit/TextRecognition/External-Dependency-Info.txt new file mode 100644 index 000000000..f6708b6b6 --- /dev/null +++ b/source/MLKit/TextRecognition/External-Dependency-Info.txt @@ -0,0 +1,1179 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for MLKit APIs Core iOS Library incorporates third party +material from the projects listed below. The original copyright notice and +the license under which Microsoft received such third party material are set +forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# MLKit iOS SDK +# https://developers.google.com/ml-kit +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK +######################################## + +######################################## +# Firebase iOS SDK - Google Utilities +# https://github.com/firebase/firebase-ios-sdk/tree/master/GoogleUtilities +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK - Google Utilities +######################################## + +######################################## +# Google Toolbox for Mac +# https://github.com/google/google-toolbox-for-mac +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac +######################################## + +######################################## +# Nanopb - Protocol Buffers for Embedded Systems +# https://github.com/nanopb/nanopb +######################################## + + +Copyright (c) 2011 Petteri Aimonen + +This software is provided 'as-is', without any express or +implied warranty. In no event will the authors be held liable +for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use + this software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. + +######################################## +# end - Nanopb - Protocol Buffers for Embedded Systems +######################################## + +######################################## +# Google Toolbox for Mac - Session Fetcher +# https://github.com/google/gtm-session-fetcher +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac - Session Fetcher +######################################## + +######################################## +# Protobuf +# https://github.com/google/protobuf +######################################## + + +Copyright 2014, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +######################################## +# end - Protobuf +######################################## + +######################################## +# LevelDB +# https://github.com/google/leveldb +######################################## + + +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +######################################## +# end - LevelDB +######################################## + +######################################## +# Google APIs Client Library for Objective-C (REST) +# https://github.com/google/google-api-objectivec-client-for-rest +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +######################################## +# end - Google APIs Client Library for Objective-C (REST) +######################################## diff --git a/source/MLKit/TextRecognition/License.md b/source/MLKit/TextRecognition/License.md new file mode 100755 index 000000000..dec39ccd9 --- /dev/null +++ b/source/MLKit/TextRecognition/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [MLKit Text Recognition for iOS](https://developers.google.com/ml-kit/guides), which is subject to the [Terms of Service for MLKit](https://developers.google.com/ml-kit/terms). + +### Xamarin Component for MLKit Text Recognition for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/MLKit/TextRecognition/TextRecognition.csproj b/source/MLKit/TextRecognition/TextRecognition.csproj new file mode 100644 index 000000000..8f044c294 --- /dev/null +++ b/source/MLKit/TextRecognition/TextRecognition.csproj @@ -0,0 +1,67 @@ + + + + Xamarin.iOS10 + true + MLKit.TextRecognition + MLKit.TextRecognition + 1.0.0.0 + 1.0.0.3 + Resources + true + + + + Xamarin.MLKit.iOS.TextRecognition + MLKit APIs Text Recognition iOS Library + C# bindings for MLKit APIs Text Recognition iOS Library + C# bindings for MLKit APIs Text Recognition iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseioscore_128x128.png + https://go.microsoft.com/fwlink/?linkid=2007321 + License.md + true + 1.0.0.3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/MLKit/TextRecognition/TextRecognition.targets b/source/MLKit/TextRecognition/TextRecognition.targets new file mode 100644 index 000000000..1c1b155fa --- /dev/null +++ b/source/MLKit/TextRecognition/TextRecognition.targets @@ -0,0 +1,27 @@ + + + + <_MLKitTextRecogCoreAssemblyName>MLKit.TextRecognition, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_MLKitTextItemsFolder>MLKText-1.0.0beta3 + <_MLKitTextSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitTextItemsFolder)\ + + + + https://dl.google.com/dl/cpdc/1de014d6fd00558f/MLKitTextRecognitionCommon-1.0.0-beta3.tar.gz + Tgz + + + + + + + + Framework + True + True + -lc++ + Accelerate AVFoundation CoreGraphics CoreImage CoreMedia CoreVideo Foundation UIKit + + + + \ No newline at end of file diff --git a/source/MLKit/TextRecognitionChinese/ApiDefinition.cs b/source/MLKit/TextRecognitionChinese/ApiDefinition.cs new file mode 100644 index 000000000..a28d900d0 --- /dev/null +++ b/source/MLKit/TextRecognitionChinese/ApiDefinition.cs @@ -0,0 +1,13 @@ +using System; + +using UIKit; +using Foundation; +using ObjCRuntime; +using CoreGraphics; + +namespace MLKit.TextRecognition { + // @interface MLKTextRecognizerOptions : MLKCommonTextRecognizerOptions + [BaseType (typeof (CommonTextRecognizerOptions), Name = "MLKChineseTextRecognizerOptions")] + interface ChineseTextRecognizerOptions { + } +} diff --git a/source/MLKit/TextRecognitionChinese/Enums.cs b/source/MLKit/TextRecognitionChinese/Enums.cs new file mode 100644 index 000000000..4abfd0a78 --- /dev/null +++ b/source/MLKit/TextRecognitionChinese/Enums.cs @@ -0,0 +1,6 @@ +using System; +using ObjCRuntime; + +namespace MLKit.TextRecognition { + +} diff --git a/source/MLKit/TextRecognitionChinese/External-Dependency-Info.txt b/source/MLKit/TextRecognitionChinese/External-Dependency-Info.txt new file mode 100644 index 000000000..f6708b6b6 --- /dev/null +++ b/source/MLKit/TextRecognitionChinese/External-Dependency-Info.txt @@ -0,0 +1,1179 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for MLKit APIs Core iOS Library incorporates third party +material from the projects listed below. The original copyright notice and +the license under which Microsoft received such third party material are set +forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# MLKit iOS SDK +# https://developers.google.com/ml-kit +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK +######################################## + +######################################## +# Firebase iOS SDK - Google Utilities +# https://github.com/firebase/firebase-ios-sdk/tree/master/GoogleUtilities +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK - Google Utilities +######################################## + +######################################## +# Google Toolbox for Mac +# https://github.com/google/google-toolbox-for-mac +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac +######################################## + +######################################## +# Nanopb - Protocol Buffers for Embedded Systems +# https://github.com/nanopb/nanopb +######################################## + + +Copyright (c) 2011 Petteri Aimonen + +This software is provided 'as-is', without any express or +implied warranty. In no event will the authors be held liable +for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use + this software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. + +######################################## +# end - Nanopb - Protocol Buffers for Embedded Systems +######################################## + +######################################## +# Google Toolbox for Mac - Session Fetcher +# https://github.com/google/gtm-session-fetcher +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac - Session Fetcher +######################################## + +######################################## +# Protobuf +# https://github.com/google/protobuf +######################################## + + +Copyright 2014, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +######################################## +# end - Protobuf +######################################## + +######################################## +# LevelDB +# https://github.com/google/leveldb +######################################## + + +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +######################################## +# end - LevelDB +######################################## + +######################################## +# Google APIs Client Library for Objective-C (REST) +# https://github.com/google/google-api-objectivec-client-for-rest +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +######################################## +# end - Google APIs Client Library for Objective-C (REST) +######################################## diff --git a/source/MLKit/TextRecognitionChinese/License.md b/source/MLKit/TextRecognitionChinese/License.md new file mode 100755 index 000000000..410ded97e --- /dev/null +++ b/source/MLKit/TextRecognitionChinese/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [MLKit Text Recognition Chinese for iOS](https://developers.google.com/ml-kit/guides), which is subject to the [Terms of Service for MLKit](https://developers.google.com/ml-kit/terms). + +### Xamarin Component for MLKit Text Recognition Chinese for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/MLKit/TextRecognitionChinese/TextRecognitionChinese.csproj b/source/MLKit/TextRecognitionChinese/TextRecognitionChinese.csproj new file mode 100644 index 000000000..b53c6755b --- /dev/null +++ b/source/MLKit/TextRecognitionChinese/TextRecognitionChinese.csproj @@ -0,0 +1,68 @@ + + + + Xamarin.iOS10 + true + MLKit.TextRecognition.Chinese + MLKit.TextRecognition.Chinese + 1.0.0.0 + 1.0.0.3 + Resources + true + + + + Xamarin.MLKit.iOS.TextRecognition.Chinese + MLKit APIs Text Recognition Chinese iOS Library + C# bindings for MLKit APIs Text Recognition Chinese iOS Library + C# bindings for MLKit APIs Text Recognition Chinese iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseioscore_128x128.png + https://go.microsoft.com/fwlink/?linkid=2007321 + License.md + true + 1.0.0.3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/MLKit/TextRecognitionChinese/TextRecognitionChinese.targets b/source/MLKit/TextRecognitionChinese/TextRecognitionChinese.targets new file mode 100644 index 000000000..cf4e15473 --- /dev/null +++ b/source/MLKit/TextRecognitionChinese/TextRecognitionChinese.targets @@ -0,0 +1,94 @@ + + + + <_MLKitTextRecogChineseAssemblyName>MLKit.TextRecognition.Chinese, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_MLKitTextChineseItemsFolder>MLKTextChinese-1.0.0beta3 + <_MLKitTextChineseSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitTextChineseItemsFolder)\ + <_MLKitTextChineseResourcesFolder>$(XamarinBuildDownloadDir)$(_MLKitTextChineseItemsFolder)\Resources\ChineseOCRResources\ + + + + https://dl.google.com/dl/cpdc/fbd00c26ffcec6f2/MLKitTextRecognitionChinese-1.0.0-beta3.tar.gz + Tgz + + + + + + + + Framework + True + True + -lc++ + Accelerate AVFoundation CoreGraphics CoreImage CoreMedia CoreVideo Foundation UIKit + + + + + ChineseOCRResources.bundle\region_proposal_text_detector_tflite_vertical.bincfg + False + + + ChineseOCRResources.bundle\rpn_lstm_engine_tflite_zh_la.bincfg + False + + + ChineseOCRResources.bundle\rpn_text_detector_mobile_space_to_depth_quantized_v2.tflite + False + + + ChineseOCRResources.bundle\seastar_lstm_recognizer_zh_0.2.class_lst + False + + + ChineseOCRResources.bundle\tflite_langid.tflite + False + + + ChineseOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.bincfg + False + + + ChineseOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.class_lst + False + + + ChineseOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.conv_model + False + + + ChineseOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.lstm_model + False + + + ChineseOCRResources.bundle\tflite_lstm_recognizer_zh_0.1.bincfg + False + + + ChineseOCRResources.bundle\tflite_lstm_recognizer_zh_0.1.class_lst + False + + + ChineseOCRResources.bundle\tflite_lstm_recognizer_zh_0.1.conv_model + False + + + ChineseOCRResources.bundle\tflite_lstm_recognizer_zh_0.1.lstm_model + False + + + ChineseOCRResources.bundle\tflite_script_detector_0.3.bincfg + False + + + ChineseOCRResources.bundle\tflite_script_detector_0.3.conv_model + False + + + ChineseOCRResources.bundle\tflite_script_detector_0.3.lstm_model + False + + + + \ No newline at end of file diff --git a/source/MLKit/TextRecognitionDevanagari/ApiDefinition.cs b/source/MLKit/TextRecognitionDevanagari/ApiDefinition.cs new file mode 100644 index 000000000..66ec865d5 --- /dev/null +++ b/source/MLKit/TextRecognitionDevanagari/ApiDefinition.cs @@ -0,0 +1,13 @@ +using System; + +using UIKit; +using Foundation; +using ObjCRuntime; +using CoreGraphics; + +namespace MLKit.TextRecognition { + // @interface MLKTextRecognizerOptions : MLKCommonTextRecognizerOptions + [BaseType (typeof (CommonTextRecognizerOptions), Name = "MLKDevanagariTextRecognizerOptions")] + interface DevanagariTextRecognizerOptions { + } +} diff --git a/source/MLKit/TextRecognitionDevanagari/Enums.cs b/source/MLKit/TextRecognitionDevanagari/Enums.cs new file mode 100644 index 000000000..4abfd0a78 --- /dev/null +++ b/source/MLKit/TextRecognitionDevanagari/Enums.cs @@ -0,0 +1,6 @@ +using System; +using ObjCRuntime; + +namespace MLKit.TextRecognition { + +} diff --git a/source/MLKit/TextRecognitionDevanagari/External-Dependency-Info.txt b/source/MLKit/TextRecognitionDevanagari/External-Dependency-Info.txt new file mode 100644 index 000000000..f6708b6b6 --- /dev/null +++ b/source/MLKit/TextRecognitionDevanagari/External-Dependency-Info.txt @@ -0,0 +1,1179 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for MLKit APIs Core iOS Library incorporates third party +material from the projects listed below. The original copyright notice and +the license under which Microsoft received such third party material are set +forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# MLKit iOS SDK +# https://developers.google.com/ml-kit +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK +######################################## + +######################################## +# Firebase iOS SDK - Google Utilities +# https://github.com/firebase/firebase-ios-sdk/tree/master/GoogleUtilities +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK - Google Utilities +######################################## + +######################################## +# Google Toolbox for Mac +# https://github.com/google/google-toolbox-for-mac +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac +######################################## + +######################################## +# Nanopb - Protocol Buffers for Embedded Systems +# https://github.com/nanopb/nanopb +######################################## + + +Copyright (c) 2011 Petteri Aimonen + +This software is provided 'as-is', without any express or +implied warranty. In no event will the authors be held liable +for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use + this software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. + +######################################## +# end - Nanopb - Protocol Buffers for Embedded Systems +######################################## + +######################################## +# Google Toolbox for Mac - Session Fetcher +# https://github.com/google/gtm-session-fetcher +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac - Session Fetcher +######################################## + +######################################## +# Protobuf +# https://github.com/google/protobuf +######################################## + + +Copyright 2014, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +######################################## +# end - Protobuf +######################################## + +######################################## +# LevelDB +# https://github.com/google/leveldb +######################################## + + +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +######################################## +# end - LevelDB +######################################## + +######################################## +# Google APIs Client Library for Objective-C (REST) +# https://github.com/google/google-api-objectivec-client-for-rest +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +######################################## +# end - Google APIs Client Library for Objective-C (REST) +######################################## diff --git a/source/MLKit/TextRecognitionDevanagari/License.md b/source/MLKit/TextRecognitionDevanagari/License.md new file mode 100755 index 000000000..04d5e2de9 --- /dev/null +++ b/source/MLKit/TextRecognitionDevanagari/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [MLKit Text Recognition Devanagari for iOS](https://developers.google.com/ml-kit/guides), which is subject to the [Terms of Service for MLKit](https://developers.google.com/ml-kit/terms). + +### Xamarin Component for MLKit Text Recognition Devanagari for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/MLKit/TextRecognitionDevanagari/TextRecognitionDevanagari.csproj b/source/MLKit/TextRecognitionDevanagari/TextRecognitionDevanagari.csproj new file mode 100644 index 000000000..4f11bae7c --- /dev/null +++ b/source/MLKit/TextRecognitionDevanagari/TextRecognitionDevanagari.csproj @@ -0,0 +1,68 @@ + + + + Xamarin.iOS10 + true + MLKit.TextRecognition.Devanagari + MLKit.TextRecognition.Devanagari + 1.0.0.0 + 1.0.0.3 + Resources + true + + + + Xamarin.MLKit.iOS.TextRecognition.Devanagari + MLKit APIs Text Recognition Devanagari iOS Library + C# bindings for MLKit APIs Text Recognition Devanagari iOS Library + C# bindings for MLKit APIs Text Recognition Devanagari iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseioscore_128x128.png + https://go.microsoft.com/fwlink/?linkid=2007321 + License.md + true + 1.0.0.3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/MLKit/TextRecognitionDevanagari/TextRecognitionDevanagari.targets b/source/MLKit/TextRecognitionDevanagari/TextRecognitionDevanagari.targets new file mode 100644 index 000000000..182d3037d --- /dev/null +++ b/source/MLKit/TextRecognitionDevanagari/TextRecognitionDevanagari.targets @@ -0,0 +1,90 @@ + + + + <_MLKitTextRecogDevanagariAssemblyName>MLKit.TextRecognition.Devanagari, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_MLKitTextDevanagariItemsFolder>MLKTextDevanagari-1.0.0beta3 + <_MLKitTextDevanagariSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitTextDevanagariItemsFolder)\ + <_MLKitTextDevanagariResourcesFolder>$(XamarinBuildDownloadDir)$(_MLKitTextDevanagariItemsFolder)\Resources\DevanagariOCRResources\ + + + + https://dl.google.com/dl/cpdc/7151c80b8a92402f/MLKitTextRecognitionDevanagari-1.0.0-beta3.tar.gz + Tgz + + + + + + + + Framework + True + True + -lc++ + Accelerate AVFoundation CoreGraphics CoreImage CoreMedia CoreVideo Foundation UIKit + + + + + DevanagariOCRResources.bundle\region_proposal_text_detector_tflite_vertical.bincfg + False + + + DevanagariOCRResources.bundle\rpn_lstm_engine_tflite_devanagari_la.bincfg + False + + + DevanagariOCRResources.bundle\rpn_text_detector_mobile_space_to_depth_quantized_v2.tflite + False + + + DevanagariOCRResources.bundle\tflite_langid.tflite + False + + + DevanagariOCRResources.bundle\tflite_lstm_recognizer_devanagari_0.1.bincfg + False + + + DevanagariOCRResources.bundle\tflite_lstm_recognizer_devanagari_0.1.class_lst + False + + + DevanagariOCRResources.bundle\tflite_lstm_recognizer_devanagari_0.1.conv_model + False + + + DevanagariOCRResources.bundle\tflite_lstm_recognizer_devanagari_0.1.lstm_model + False + + + DevanagariOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.bincfg + False + + + DevanagariOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.class_lst + False + + + DevanagariOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.conv_model + False + + + DevanagariOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.lstm_model + False + + + DevanagariOCRResources.bundle\tflite_script_detector_0.3.bincfg + False + + + DevanagariOCRResources.bundle\tflite_script_detector_0.3.conv_model + False + + + DevanagariOCRResources.bundle\tflite_script_detector_0.3.lstm_model + False + + + + \ No newline at end of file diff --git a/source/MLKit/TextRecognitionJapanese/ApiDefinition.cs b/source/MLKit/TextRecognitionJapanese/ApiDefinition.cs new file mode 100644 index 000000000..13c9fa387 --- /dev/null +++ b/source/MLKit/TextRecognitionJapanese/ApiDefinition.cs @@ -0,0 +1,13 @@ +using System; + +using UIKit; +using Foundation; +using ObjCRuntime; +using CoreGraphics; + +namespace MLKit.TextRecognition { + // @interface MLKTextRecognizerOptions : MLKCommonTextRecognizerOptions + [BaseType (typeof (CommonTextRecognizerOptions), Name = "MLKJapaneseTextRecognizerOptions")] + interface JapaneseTextRecognizerOptions { + } +} diff --git a/source/MLKit/TextRecognitionJapanese/Enums.cs b/source/MLKit/TextRecognitionJapanese/Enums.cs new file mode 100644 index 000000000..4abfd0a78 --- /dev/null +++ b/source/MLKit/TextRecognitionJapanese/Enums.cs @@ -0,0 +1,6 @@ +using System; +using ObjCRuntime; + +namespace MLKit.TextRecognition { + +} diff --git a/source/MLKit/TextRecognitionJapanese/External-Dependency-Info.txt b/source/MLKit/TextRecognitionJapanese/External-Dependency-Info.txt new file mode 100644 index 000000000..f6708b6b6 --- /dev/null +++ b/source/MLKit/TextRecognitionJapanese/External-Dependency-Info.txt @@ -0,0 +1,1179 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for MLKit APIs Core iOS Library incorporates third party +material from the projects listed below. The original copyright notice and +the license under which Microsoft received such third party material are set +forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# MLKit iOS SDK +# https://developers.google.com/ml-kit +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK +######################################## + +######################################## +# Firebase iOS SDK - Google Utilities +# https://github.com/firebase/firebase-ios-sdk/tree/master/GoogleUtilities +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK - Google Utilities +######################################## + +######################################## +# Google Toolbox for Mac +# https://github.com/google/google-toolbox-for-mac +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac +######################################## + +######################################## +# Nanopb - Protocol Buffers for Embedded Systems +# https://github.com/nanopb/nanopb +######################################## + + +Copyright (c) 2011 Petteri Aimonen + +This software is provided 'as-is', without any express or +implied warranty. In no event will the authors be held liable +for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use + this software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. + +######################################## +# end - Nanopb - Protocol Buffers for Embedded Systems +######################################## + +######################################## +# Google Toolbox for Mac - Session Fetcher +# https://github.com/google/gtm-session-fetcher +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac - Session Fetcher +######################################## + +######################################## +# Protobuf +# https://github.com/google/protobuf +######################################## + + +Copyright 2014, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +######################################## +# end - Protobuf +######################################## + +######################################## +# LevelDB +# https://github.com/google/leveldb +######################################## + + +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +######################################## +# end - LevelDB +######################################## + +######################################## +# Google APIs Client Library for Objective-C (REST) +# https://github.com/google/google-api-objectivec-client-for-rest +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +######################################## +# end - Google APIs Client Library for Objective-C (REST) +######################################## diff --git a/source/MLKit/TextRecognitionJapanese/License.md b/source/MLKit/TextRecognitionJapanese/License.md new file mode 100755 index 000000000..377d1e5db --- /dev/null +++ b/source/MLKit/TextRecognitionJapanese/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [MLKit Text Recognition Japanese for iOS](https://developers.google.com/ml-kit/guides), which is subject to the [Terms of Service for MLKit](https://developers.google.com/ml-kit/terms). + +### Xamarin Component for MLKit Text Recognition Japanese for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/MLKit/TextRecognitionJapanese/TextRecognitionJapanese.csproj b/source/MLKit/TextRecognitionJapanese/TextRecognitionJapanese.csproj new file mode 100644 index 000000000..d079ebc2e --- /dev/null +++ b/source/MLKit/TextRecognitionJapanese/TextRecognitionJapanese.csproj @@ -0,0 +1,68 @@ + + + + Xamarin.iOS10 + true + MLKit.TextRecognition.Japanese + MLKit.TextRecognition.Japanese + 1.0.0.0 + 1.0.0.3 + Resources + true + + + + Xamarin.MLKit.iOS.TextRecognition.Japanese + MLKit APIs Text Recognition Japanese iOS Library + C# bindings for MLKit APIs Text Recognition Japanese iOS Library + C# bindings for MLKit APIs Text Recognition Japanese iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseioscore_128x128.png + https://go.microsoft.com/fwlink/?linkid=2007321 + License.md + true + 1.0.0.3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/MLKit/TextRecognitionJapanese/TextRecognitionJapanese.targets b/source/MLKit/TextRecognitionJapanese/TextRecognitionJapanese.targets new file mode 100644 index 000000000..717539b0f --- /dev/null +++ b/source/MLKit/TextRecognitionJapanese/TextRecognitionJapanese.targets @@ -0,0 +1,90 @@ + + + + <_MLKitTextRecogJapaneseAssemblyName>MLKit.TextRecognition.Japanese, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_MLKitTextJapaneseItemsFolder>MLKTextJapanese-1.0.0beta3 + <_MLKitTextJapaneseSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitTextJapaneseItemsFolder)\ + <_MLKitTextJapaneseResourcesFolder>$(XamarinBuildDownloadDir)$(_MLKitTextJapaneseItemsFolder)\Resources\JapaneseOCRResources\ + + + + https://dl.google.com/dl/cpdc/094ba2d541a08563/MLKitTextRecognitionJapanese-1.0.0-beta3.tar.gz + Tgz + + + + + + + + Framework + True + True + -lc++ + Accelerate AVFoundation CoreGraphics CoreImage CoreMedia CoreVideo Foundation UIKit + + + + + JapaneseOCRResources.bundle\region_proposal_text_detector_tflite_vertical.bincfg + False + + + JapaneseOCRResources.bundle\rpn_lstm_engine_tflite_ja_la.bincfg + False + + + JapaneseOCRResources.bundle\rpn_text_detector_mobile_space_to_depth_quantized_v2.tflite + False + + + JapaneseOCRResources.bundle\tflite_langid.tflite + False + + + JapaneseOCRResources.bundle\tflite_lstm_recognizer_ja_0.1.bincfg + False + + + JapaneseOCRResources.bundle\tflite_lstm_recognizer_ja_0.1.class_lst + False + + + JapaneseOCRResources.bundle\tflite_lstm_recognizer_ja_0.1.conv_model + False + + + JapaneseOCRResources.bundle\tflite_lstm_recognizer_ja_0.1.lstm_model + False + + + JapaneseOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.bincfg + False + + + JapaneseOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.class_lst + False + + + JapaneseOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.conv_model + False + + + JapaneseOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.lstm_model + False + + + JapaneseOCRResources.bundle\tflite_script_detector_0.3.bincfg + False + + + JapaneseOCRResources.bundle\tflite_script_detector_0.3.conv_model + False + + + JapaneseOCRResources.bundle\tflite_script_detector_0.3.lstm_model + False + + + + \ No newline at end of file diff --git a/source/MLKit/TextRecognitionKorean/ApiDefinition.cs b/source/MLKit/TextRecognitionKorean/ApiDefinition.cs new file mode 100644 index 000000000..6c1321dfd --- /dev/null +++ b/source/MLKit/TextRecognitionKorean/ApiDefinition.cs @@ -0,0 +1,13 @@ +using System; + +using UIKit; +using Foundation; +using ObjCRuntime; +using CoreGraphics; + +namespace MLKit.TextRecognition { + // @interface MLKTextRecognizerOptions : MLKCommonTextRecognizerOptions + [BaseType (typeof (CommonTextRecognizerOptions), Name = "MLKKoreanTextRecognizerOptions")] + interface KoreanTextRecognizerOptions { + } +} diff --git a/source/MLKit/TextRecognitionKorean/Enums.cs b/source/MLKit/TextRecognitionKorean/Enums.cs new file mode 100644 index 000000000..4abfd0a78 --- /dev/null +++ b/source/MLKit/TextRecognitionKorean/Enums.cs @@ -0,0 +1,6 @@ +using System; +using ObjCRuntime; + +namespace MLKit.TextRecognition { + +} diff --git a/source/MLKit/TextRecognitionKorean/External-Dependency-Info.txt b/source/MLKit/TextRecognitionKorean/External-Dependency-Info.txt new file mode 100644 index 000000000..f6708b6b6 --- /dev/null +++ b/source/MLKit/TextRecognitionKorean/External-Dependency-Info.txt @@ -0,0 +1,1179 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for MLKit APIs Core iOS Library incorporates third party +material from the projects listed below. The original copyright notice and +the license under which Microsoft received such third party material are set +forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# MLKit iOS SDK +# https://developers.google.com/ml-kit +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK +######################################## + +######################################## +# Firebase iOS SDK - Google Utilities +# https://github.com/firebase/firebase-ios-sdk/tree/master/GoogleUtilities +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK - Google Utilities +######################################## + +######################################## +# Google Toolbox for Mac +# https://github.com/google/google-toolbox-for-mac +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac +######################################## + +######################################## +# Nanopb - Protocol Buffers for Embedded Systems +# https://github.com/nanopb/nanopb +######################################## + + +Copyright (c) 2011 Petteri Aimonen + +This software is provided 'as-is', without any express or +implied warranty. In no event will the authors be held liable +for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use + this software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. + +######################################## +# end - Nanopb - Protocol Buffers for Embedded Systems +######################################## + +######################################## +# Google Toolbox for Mac - Session Fetcher +# https://github.com/google/gtm-session-fetcher +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac - Session Fetcher +######################################## + +######################################## +# Protobuf +# https://github.com/google/protobuf +######################################## + + +Copyright 2014, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +######################################## +# end - Protobuf +######################################## + +######################################## +# LevelDB +# https://github.com/google/leveldb +######################################## + + +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +######################################## +# end - LevelDB +######################################## + +######################################## +# Google APIs Client Library for Objective-C (REST) +# https://github.com/google/google-api-objectivec-client-for-rest +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +######################################## +# end - Google APIs Client Library for Objective-C (REST) +######################################## diff --git a/source/MLKit/TextRecognitionKorean/License.md b/source/MLKit/TextRecognitionKorean/License.md new file mode 100755 index 000000000..73e820ba6 --- /dev/null +++ b/source/MLKit/TextRecognitionKorean/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [MLKit Text Recognition Korean for iOS](https://developers.google.com/ml-kit/guides), which is subject to the [Terms of Service for MLKit](https://developers.google.com/ml-kit/terms). + +### Xamarin Component for MLKit Text Recognition Korean for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/MLKit/TextRecognitionKorean/TextRecognitionKorean.csproj b/source/MLKit/TextRecognitionKorean/TextRecognitionKorean.csproj new file mode 100644 index 000000000..c93290aa5 --- /dev/null +++ b/source/MLKit/TextRecognitionKorean/TextRecognitionKorean.csproj @@ -0,0 +1,68 @@ + + + + Xamarin.iOS10 + true + MLKit.TextRecognition.Korean + MLKit.TextRecognition.Korean + 1.0.0.0 + 1.0.0.3 + Resources + true + + + + Xamarin.MLKit.iOS.TextRecognition.Korean + MLKit APIs Text Recognition Korean iOS Library + C# bindings for MLKit APIs Text Recognition Korean iOS Library + C# bindings for MLKit APIs Text Recognition Korean iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseioscore_128x128.png + https://go.microsoft.com/fwlink/?linkid=2007321 + License.md + true + 1.0.0.3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/MLKit/TextRecognitionKorean/TextRecognitionKorean.targets b/source/MLKit/TextRecognitionKorean/TextRecognitionKorean.targets new file mode 100644 index 000000000..ee1feaf0d --- /dev/null +++ b/source/MLKit/TextRecognitionKorean/TextRecognitionKorean.targets @@ -0,0 +1,90 @@ + + + + <_MLKitTextRecogKoreanAssemblyName>MLKit.TextRecognition.Korean, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_MLKitTextKoreanItemsFolder>MLKTextKorean-1.0.0beta3 + <_MLKitTextKoreanSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitTextKoreanItemsFolder)\ + <_MLKitTextKoreanResourcesFolder>$(XamarinBuildDownloadDir)$(_MLKitTextKoreanItemsFolder)\Resources\KoreanOCRResources\ + + + + https://dl.google.com/dl/cpdc/1540fa2f11efaf10/MLKitTextRecognitionKorean-1.0.0-beta3.tar.gz + Tgz + + + + + + + + Framework + True + True + -lc++ + Accelerate AVFoundation CoreGraphics CoreImage CoreMedia CoreVideo Foundation UIKit + + + + + KoreanOCRResources.bundle\region_proposal_text_detector_tflite_vertical.bincfg + False + + + KoreanOCRResources.bundle\rpn_lstm_engine_tflite_ko_la.bincfg + False + + + KoreanOCRResources.bundle\rpn_text_detector_mobile_space_to_depth_quantized_v2.tflite + False + + + KoreanOCRResources.bundle\tflite_langid.tflite + False + + + KoreanOCRResources.bundle\tflite_lstm_recognizer_ko_0.1.bincfg + False + + + KoreanOCRResources.bundle\tflite_lstm_recognizer_ko_0.1.class_lst + False + + + KoreanOCRResources.bundle\tflite_lstm_recognizer_ko_0.1.conv_model + False + + + KoreanOCRResources.bundle\tflite_lstm_recognizer_ko_0.1.lstm_model + False + + + KoreanOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.bincfg + False + + + KoreanOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.class_lst + False + + + KoreanOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.conv_model + False + + + KoreanOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.lstm_model + False + + + KoreanOCRResources.bundle\tflite_script_detector_0.3.bincfg + False + + + KoreanOCRResources.bundle\tflite_script_detector_0.3.conv_model + False + + + KoreanOCRResources.bundle\tflite_script_detector_0.3.lstm_model + False + + + + \ No newline at end of file diff --git a/source/MLKit/TextRecognitionLatin/ApiDefinition.cs b/source/MLKit/TextRecognitionLatin/ApiDefinition.cs new file mode 100644 index 000000000..4da3404c4 --- /dev/null +++ b/source/MLKit/TextRecognitionLatin/ApiDefinition.cs @@ -0,0 +1,13 @@ +using System; + +using UIKit; +using Foundation; +using ObjCRuntime; +using CoreGraphics; + +namespace MLKit.TextRecognition { + // @interface MLKTextRecognizerOptions : MLKCommonTextRecognizerOptions + [BaseType (typeof (CommonTextRecognizerOptions), Name = "MLKTextRecognizerOptions")] + interface LatinTextRecognizerOptions { + } +} diff --git a/source/MLKit/TextRecognitionLatin/Enums.cs b/source/MLKit/TextRecognitionLatin/Enums.cs new file mode 100644 index 000000000..4abfd0a78 --- /dev/null +++ b/source/MLKit/TextRecognitionLatin/Enums.cs @@ -0,0 +1,6 @@ +using System; +using ObjCRuntime; + +namespace MLKit.TextRecognition { + +} diff --git a/source/MLKit/TextRecognitionLatin/External-Dependency-Info.txt b/source/MLKit/TextRecognitionLatin/External-Dependency-Info.txt new file mode 100644 index 000000000..f6708b6b6 --- /dev/null +++ b/source/MLKit/TextRecognitionLatin/External-Dependency-Info.txt @@ -0,0 +1,1179 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for MLKit APIs Core iOS Library incorporates third party +material from the projects listed below. The original copyright notice and +the license under which Microsoft received such third party material are set +forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# MLKit iOS SDK +# https://developers.google.com/ml-kit +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK +######################################## + +######################################## +# Firebase iOS SDK - Google Utilities +# https://github.com/firebase/firebase-ios-sdk/tree/master/GoogleUtilities +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK - Google Utilities +######################################## + +######################################## +# Google Toolbox for Mac +# https://github.com/google/google-toolbox-for-mac +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac +######################################## + +######################################## +# Nanopb - Protocol Buffers for Embedded Systems +# https://github.com/nanopb/nanopb +######################################## + + +Copyright (c) 2011 Petteri Aimonen + +This software is provided 'as-is', without any express or +implied warranty. In no event will the authors be held liable +for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use + this software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. + +######################################## +# end - Nanopb - Protocol Buffers for Embedded Systems +######################################## + +######################################## +# Google Toolbox for Mac - Session Fetcher +# https://github.com/google/gtm-session-fetcher +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac - Session Fetcher +######################################## + +######################################## +# Protobuf +# https://github.com/google/protobuf +######################################## + + +Copyright 2014, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +######################################## +# end - Protobuf +######################################## + +######################################## +# LevelDB +# https://github.com/google/leveldb +######################################## + + +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +######################################## +# end - LevelDB +######################################## + +######################################## +# Google APIs Client Library for Objective-C (REST) +# https://github.com/google/google-api-objectivec-client-for-rest +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +######################################## +# end - Google APIs Client Library for Objective-C (REST) +######################################## diff --git a/source/MLKit/TextRecognitionLatin/License.md b/source/MLKit/TextRecognitionLatin/License.md new file mode 100755 index 000000000..dec39ccd9 --- /dev/null +++ b/source/MLKit/TextRecognitionLatin/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [MLKit Text Recognition for iOS](https://developers.google.com/ml-kit/guides), which is subject to the [Terms of Service for MLKit](https://developers.google.com/ml-kit/terms). + +### Xamarin Component for MLKit Text Recognition for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/MLKit/TextRecognitionLatin/TextRecognitionLatin.csproj b/source/MLKit/TextRecognitionLatin/TextRecognitionLatin.csproj new file mode 100644 index 000000000..728b5c816 --- /dev/null +++ b/source/MLKit/TextRecognitionLatin/TextRecognitionLatin.csproj @@ -0,0 +1,68 @@ + + + + Xamarin.iOS10 + true + MLKit.TextRecognition.Latin + MLKit.TextRecognition.Latin + 1.0.0.0 + 1.4.0.3 + Resources + true + + + + Xamarin.MLKit.iOS.TextRecognition.Latin + MLKit APIs Text Recognition Latin iOS Library + C# bindings for MLKit APIs Text Recognition Latin iOS Library + C# bindings for MLKit APIs Text Recognition Latin iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseioscore_128x128.png + https://go.microsoft.com/fwlink/?linkid=2007321 + License.md + true + 1.4.0.3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/MLKit/TextRecognitionLatin/TextRecognitionLatin.targets b/source/MLKit/TextRecognitionLatin/TextRecognitionLatin.targets new file mode 100644 index 000000000..510c4ae31 --- /dev/null +++ b/source/MLKit/TextRecognitionLatin/TextRecognitionLatin.targets @@ -0,0 +1,62 @@ + + + + <_MLKitTextRecogLatinAssemblyName>MLKit.TextRecognition.Latin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_MLKitTextLatinItemsFolder>MLKTextLatin-1.4.0beta3 + <_MLKitTextLatinSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitTextLatinItemsFolder)\ + <_MLKitTextLatinResourcesFolder>$(XamarinBuildDownloadDir)$(_MLKitTextLatinItemsFolder)\Resources\LatinOCRResources\ + + + + https://dl.google.com/dl/cpdc/95f11403570867d4/MLKitTextRecognition-1.4.0-beta3.tar.gz + Tgz + + + + + + + + Framework + True + True + -lc++ + Accelerate AVFoundation CoreGraphics CoreImage CoreMedia CoreVideo Foundation UIKit + + + + + LatinOCRResources.bundle\region_proposal_text_detector_tflite_gray_quantized.bincfg + False + + + LatinOCRResources.bundle\rpn_lstm_engine_tflite_latin.bincfg + False + + + LatinOCRResources.bundle\rpn_text_detector_mobile_space_to_depth_quantized_v2.tflite + False + + + LatinOCRResources.bundle\tflite_langid.tflite + False + + + LatinOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.bincfg + False + + + LatinOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.class_lst + False + + + LatinOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.conv_model + False + + + LatinOCRResources.bundle\tflite_lstm_recognizer_latin_0.3.lstm_model + False + + + + \ No newline at end of file diff --git a/source/MLKit/Vision/ApiDefinition.cs b/source/MLKit/Vision/ApiDefinition.cs new file mode 100644 index 000000000..67a0dc097 --- /dev/null +++ b/source/MLKit/Vision/ApiDefinition.cs @@ -0,0 +1,131 @@ +using System; + +using UIKit; +using Foundation; +using CoreGraphics; +using ObjCRuntime; + +using MLKit.Core; + +namespace MLKit.Vision { + // @interface MLKCommonImageLabelerOptions : NSObject + [BaseType (typeof (NSObject), Name = "MLKCommonImageLabelerOptions")] + [DisableDefaultCtor] + interface CommonImageLabelerOptions { + // @property (nonatomic) NSNumber * _Nullable confidenceThreshold; + [NullAllowed, Export ("confidenceThreshold", ArgumentSemantic.Assign)] + NSNumber ConfidenceThreshold { get; set; } + } + + // @interface MLKImageLabel : NSObject + [BaseType (typeof (NSObject), Name = "MLKImageLabel")] + [DisableDefaultCtor] + interface ImageLabel { + // @property (readonly, copy, nonatomic) NSString * _Nonnull text; + [Export ("text")] + string Text { get; } + + // @property (readonly, nonatomic) NSInteger index; + [Export ("index")] + nint Index { get; } + + // @property (readonly, nonatomic) float confidence; + [Export ("confidence")] + float Confidence { get; } + } + + // typedef void (^MLKImageLabelingCallback)(NSArray * _Nullable, NSError * _Nullable); + delegate void ImageLabelingCallback ([NullAllowed] ImageLabel [] imageLabels, [NullAllowed] NSError error); + + // @interface MLKImageLabeler : NSObject + [BaseType (typeof (NSObject), Name = "MLKImageLabeler")] + [DisableDefaultCtor] + interface ImageLabeler { + // +(instancetype _Nonnull)imageLabelerWithOptions:(MLKCommonImageLabelerOptions * _Nonnull)options __attribute__((swift_name("imageLabeler(options:)"))); + [Static] + [Export ("imageLabelerWithOptions:")] + ImageLabeler ImageLabelerWithOptions (CommonImageLabelerOptions options); + + // -(void)processImage:(id _Nonnull)image completion:(MLKImageLabelingCallback _Nonnull)completion __attribute__((swift_name("process(_:completion:)"))); + [Export ("processImage:completion:")] + void ProcessImage (ICompatibleImage image, ImageLabelingCallback completion); + + // -(NSArray * _Nullable)resultsInImage:(id _Nonnull)image error:(NSError * _Nullable * _Nullable)error; + [Export ("resultsInImage:error:")] + [return: NullAllowed] + ImageLabel [] ResultsInImage (ICompatibleImage image, [NullAllowed] out NSError error); + } + + // @interface MLKCommonObjectDetectorOptions : NSObject + [BaseType (typeof (NSObject), Name = "MLKCommonObjectDetectorOptions")] + [DisableDefaultCtor] + interface CommonObjectDetectorOptions { + // @property (nonatomic) BOOL shouldEnableClassification; + [Export ("shouldEnableClassification")] + bool ShouldEnableClassification { get; set; } + + // @property (nonatomic) BOOL shouldEnableMultipleObjects; + [Export ("shouldEnableMultipleObjects")] + bool ShouldEnableMultipleObjects { get; set; } + + // @property (nonatomic) MLKObjectDetectorMode detectorMode; + [Export ("detectorMode")] + DetectorMode Mode { get; set; } + } + + // @interface MLKObject : NSObject + [BaseType (typeof (NSObject), Name = "MLKObject")] + [DisableDefaultCtor] + interface VisionObject { + // @property (readonly, nonatomic) CGRect frame; + [Export ("frame")] + CGRect Frame { get; } + + // @property (readonly, nonatomic) NSArray * _Nonnull labels; + [Export ("labels")] + ObjectLabel [] Labels { get; } + + // @property (readonly, nonatomic) NSNumber * _Nullable trackingID; + [NullAllowed, Export ("trackingID")] + NSNumber TrackingId { get; } + } + + // typedef void (^MLKObjectDetectionCallback)(NSArray * _Nullable, NSError * _Nullable); + delegate void ObjectDetectionCallback ([NullAllowed] VisionObject [] objects, [NullAllowed] NSError error); + + // @interface MLKObjectDetector : NSObject + [BaseType (typeof (NSObject), Name = "MLKObjectDetector")] + [DisableDefaultCtor] + interface ObjectDetector { + // +(instancetype _Nonnull)objectDetectorWithOptions:(MLKCommonObjectDetectorOptions * _Nonnull)options __attribute__((swift_name("objectDetector(options:)"))); + [Static] + [Export ("objectDetectorWithOptions:")] + ObjectDetector ObjectDetectorWithOptions (CommonObjectDetectorOptions options); + + // -(void)processImage:(id _Nonnull)image completion:(MLKObjectDetectionCallback _Nonnull)completion __attribute__((swift_name("process(_:completion:)"))); + [Export ("processImage:completion:")] + void ProcessImage (ICompatibleImage image, ObjectDetectionCallback completion); + + // -(NSArray * _Nullable)resultsInImage:(id _Nonnull)image error:(NSError * _Nullable * _Nullable)error; + [Export ("resultsInImage:error:")] + [return: NullAllowed] + VisionObject [] ResultsInImage (ICompatibleImage image, [NullAllowed] out NSError error); + } + + // @interface MLKObjectLabel : NSObject + [BaseType (typeof (NSObject), Name = "MLKObjectLabel")] + [DisableDefaultCtor] + interface ObjectLabel { + // @property (readonly, copy, nonatomic) NSString * _Nonnull text; + [Export ("text")] + string Text { get; } + + // @property (readonly, nonatomic) NSInteger index; + [Export ("index")] + nint Index { get; } + + // @property (readonly, nonatomic) float confidence; + [Export ("confidence")] + float Confidence { get; } + } +} diff --git a/source/MLKit/Vision/Enums.cs b/source/MLKit/Vision/Enums.cs new file mode 100644 index 000000000..65e4ed626 --- /dev/null +++ b/source/MLKit/Vision/Enums.cs @@ -0,0 +1,10 @@ +using System; +using ObjCRuntime; + +namespace MLKit.Vision { + [Native] + public enum DetectorMode : long { + SingleImage = 0, + Stream = 1 + } +} diff --git a/source/MLKit/Vision/External-Dependency-Info.txt b/source/MLKit/Vision/External-Dependency-Info.txt new file mode 100644 index 000000000..f6708b6b6 --- /dev/null +++ b/source/MLKit/Vision/External-Dependency-Info.txt @@ -0,0 +1,1179 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for MLKit APIs Core iOS Library incorporates third party +material from the projects listed below. The original copyright notice and +the license under which Microsoft received such third party material are set +forth below. Microsoft reserves all other rights not expressly granted, +whether by implication, estoppel or otherwise. + +######################################## +# MLKit iOS SDK +# https://developers.google.com/ml-kit +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK +######################################## + +######################################## +# Firebase iOS SDK - Google Utilities +# https://github.com/firebase/firebase-ios-sdk/tree/master/GoogleUtilities +######################################## + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Firebase iOS SDK - Google Utilities +######################################## + +######################################## +# Google Toolbox for Mac +# https://github.com/google/google-toolbox-for-mac +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac +######################################## + +######################################## +# Nanopb - Protocol Buffers for Embedded Systems +# https://github.com/nanopb/nanopb +######################################## + + +Copyright (c) 2011 Petteri Aimonen + +This software is provided 'as-is', without any express or +implied warranty. In no event will the authors be held liable +for any damages arising from the use of this software. + +Permission is granted to anyone to use this software for any +purpose, including commercial applications, and to alter it and +redistribute it freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you use + this software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and + must not be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. + +######################################## +# end - Nanopb - Protocol Buffers for Embedded Systems +######################################## + +######################################## +# Google Toolbox for Mac - Session Fetcher +# https://github.com/google/gtm-session-fetcher +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +######################################## +# end - Google Toolbox for Mac - Session Fetcher +######################################## + +######################################## +# Protobuf +# https://github.com/google/protobuf +######################################## + + +Copyright 2014, Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +######################################## +# end - Protobuf +######################################## + +######################################## +# LevelDB +# https://github.com/google/leveldb +######################################## + + +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +######################################## +# end - LevelDB +######################################## + +######################################## +# Google APIs Client Library for Objective-C (REST) +# https://github.com/google/google-api-objectivec-client-for-rest +######################################## + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +######################################## +# end - Google APIs Client Library for Objective-C (REST) +######################################## diff --git a/source/MLKit/Vision/License.md b/source/MLKit/Vision/License.md new file mode 100755 index 000000000..60e1fc132 --- /dev/null +++ b/source/MLKit/Vision/License.md @@ -0,0 +1,17 @@ +**Xamarin is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may require or install dependencies which are governed by additional licenses.** + +Note: This component depends on [MLKit Vision for iOS](https://developers.google.com/ml-kit/guides), which is subject to the [Terms of Service for MLKit](https://developers.google.com/ml-kit/terms). + +### Xamarin Component for MLKit Vision for iOS + +**The MIT License (MIT)** + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +20160910 diff --git a/source/MLKit/Vision/Vision.csproj b/source/MLKit/Vision/Vision.csproj new file mode 100644 index 000000000..921bc5577 --- /dev/null +++ b/source/MLKit/Vision/Vision.csproj @@ -0,0 +1,67 @@ + + + + Xamarin.iOS10 + true + MLKit.Vision + MLKit.Vision + 1.0.0.0 + 3.0.0 + Resources + true + + + + Xamarin.MLKit.iOS.Vision + MLKit APIs Vision iOS Library + C# bindings for MLKit APIs Vision iOS Library + C# bindings for MLKit APIs Vision iOS Library + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + firebaseioscore_128x128.png + https://go.microsoft.com/fwlink/?linkid=2007321 + License.md + true + 3.0.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/MLKit/Vision/Vision.targets b/source/MLKit/Vision/Vision.targets new file mode 100644 index 000000000..921039b10 --- /dev/null +++ b/source/MLKit/Vision/Vision.targets @@ -0,0 +1,68 @@ + + + + <_MLKitVisionRecogCoreAssemblyName>MLKit.Vision, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + <_MLKitVisionKitItemsFolder>MLKVisionKit-4.0.0 + <_MLKitVisionKitSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitVisionKitItemsFolder)\ + <_MLKitImgLblCommonItemsFolder>MLKImgLblCommon-3.0.0 + <_MLKitImgLblCommonSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitImgLblCommonItemsFolder)\ + <_MLKitObjCommonItemsFolder>MLKObjCommon-3.0.0 + <_MLKitObjCommonSDKBaseFolder>$(XamarinBuildDownloadDir)$(_MLKitObjCommonItemsFolder)\ + <_MLKitObjCommonResourcesFolder>$(XamarinBuildDownloadDir)$(_MLKitObjCommonItemsFolder)\Resources\MLKitObjectDetectionCommonResources\ + + + + https://dl.google.com/dl/cpdc/e2e341d0ebc280cd/MLKitVisionKit-4.0.0.tar.gz + Tgz + + + https://dl.google.com/dl/cpdc/3f2996b9624bf00d/MLKitImageLabelingCommon-3.0.0.tar.gz + Tgz + + + https://dl.google.com/dl/cpdc/d7e62ab82bc90721/MLKitObjectDetectionCommon-3.0.0.tar.gz + Tgz + + + + + + + + Framework + True + True + -lc++ + CoreGraphics CoreLocation CoreVideo Foundation UIKit + + + + Framework + True + True + CoreGraphics Foundation + + + + Framework + True + True + CoreGraphics CoreMedia Foundation UIKit + + + + + MLKitObjectDetectionCommonResources.bundle\mobile_object_localizer_3_1_anchors.pb + False + + + MLKitObjectDetectionCommonResources.bundle\mobile_object_localizer_labelmap.binarypb + False + + + MLKitObjectDetectionCommonResources.bundle\tflite_mobile_object_localizer_3_1.tflite + False + + + + \ No newline at end of file diff --git a/update.cake b/update.cake index f34089a26..66402069e 100644 --- a/update.cake +++ b/update.cake @@ -36,27 +36,34 @@ public Dictionary CreateComponents () googleComponents ["Firebase.Database"] = GetComponent (); googleComponents ["Firebase.DynamicLinks"] = GetComponent (); googleComponents ["Firebase.CloudFunctions"] = GetComponent (); - googleComponents ["Firebase.InstanceID"] = GetComponent (); googleComponents ["Firebase.Invites"] = GetComponent (); - googleComponents ["Firebase.MLKit"] = GetComponent (); - googleComponents ["Firebase.MLKit.Common"] = GetComponent (); - googleComponents ["Firebase.MLKit.ModelInterpreter"] = GetComponent (); googleComponents ["Firebase.PerformanceMonitoring"] = GetComponent (); googleComponents ["Firebase.RemoteConfig"] = GetComponent (); googleComponents ["Firebase.Storage"] = GetComponent (); + // googleComponents ["Firebase.AppDistribution"] = GetComponent (); + // googleComponents ["Firebase.AppCheck"] = GetComponent (); googleComponents ["Google.Analytics"] = GetComponent (); - googleComponents ["Google.AppIndexing"] = GetComponent (); googleComponents ["Google.Cast"] = GetComponent (); - googleComponents ["Google.Core"] = GetComponent (); - googleComponents ["Google.InstanceID"] = GetComponent (); googleComponents ["Google.Maps"] = GetComponent (); googleComponents ["Google.MobileAds"] = GetComponent (); googleComponents ["Google.Places"] = GetComponent (); - googleComponents ["Google.PlayGames"] = GetComponent (); googleComponents ["Google.SignIn"] = GetComponent (); googleComponents ["Google.TagManager"] = GetComponent (); + googleComponents ["MLKit.Core"] = GetComponent (); + googleComponents ["MLKit.TextRecognition"] = GetComponent (); + googleComponents ["MLKit.Vision"] = GetComponent (); + googleComponents ["MLKit.TextRecognition.Latin"] = GetComponent (); + googleComponents ["MLKit.TextRecognition.Chinese"] = GetComponent (); + googleComponents ["MLKit.TextRecognition.Devanagari"] = GetComponent (); + googleComponents ["MLKit.TextRecognition.Japanese"] = GetComponent (); + googleComponents ["MLKit.TextRecognition.Korean"] = GetComponent (); + googleComponents ["MLKit.FaceDetection"] = GetComponent (); + googleComponents ["MLKit.BarcodeScanning"] = GetComponent (); + googleComponents ["MLKit.ImageLabeling"] = GetComponent (); + googleComponents ["MLKit.ObjectDetection"] = GetComponent (); + googleComponents ["Xamarin.Build.Download"] = GetComponent (); return googleComponents;