From 881d7164d47e8a98b69b81686cbb1c77ae2a6501 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Sat, 19 Sep 2020 16:52:07 +0200 Subject: [PATCH 01/26] Bump version number --- Common.xcconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Common.xcconfig b/Common.xcconfig index b7b49d6..a1f1766 100644 --- a/Common.xcconfig +++ b/Common.xcconfig @@ -1,5 +1,5 @@ // Version information -MARKETING_VERSION = 2.0.4 +MARKETING_VERSION = 2.0.5 // Deployment targets IPHONEOS_DEPLOYMENT_TARGET = 9.0 From 8ceae7cd1f243ff5187662836416034ce72a730a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Mon, 20 Jul 2020 20:02:40 +0200 Subject: [PATCH 02/26] Replace Carthage with SPM 5.3 --- .gitignore | 10 +- .../contents.xcworkspacedata | 0 Cartfile | 5 - Cartfile.private | 1 - Cartfile.resolved | 9 - Common.xcconfig | 25 - Demo/Demo.xcconfig | 26 +- .../project.pbxproj | 588 +++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 0 .../xcschemes/SRGIdentity-demo.xcscheme | 78 + .../contents.xcworkspacedata | 10 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/swiftpm/Package.resolved | 79 + Demo/Sources/Application/AppDelegate.h | 2 +- Demo/Sources/Application/AppDelegate.m | 2 +- Demo/Sources/Application/Application.h | 2 +- .../Sources/{ => Application}/SceneDelegate.h | 2 +- .../Sources/{ => Application}/SceneDelegate.m | 0 Demo/Sources/Application/main.m | 2 +- Demo/Sources/Demos/DemosViewController.h | 2 +- Demo/Sources/Demos/DemosViewController.m | 2 +- Demo/Sources/Helpers/Resources.h | 2 +- Framework/Framework.xcconfig | 3 - Framework/Info.plist | 24 - Framework/Resources/Info.plist | 20 - Makefile | 47 - Package.resolved | 79 + Package.swift | 42 + SRGIdentity.xcodeproj/project.pbxproj | 1499 ----------------- .../xcschemes/SRGIdentity.xcscheme | 112 -- .../SRGIdentity}/NSBundle+SRGIdentity.h | 2 +- .../SRGIdentity}/NSBundle+SRGIdentity.m | 0 .../Resources/Images.xcassets/Contents.json | 0 .../service_logo.imageset/Contents.json | 0 .../identity_service_logo.pdf | Bin .../Resources/de.lproj/Localizable.strings | 0 .../Resources/en.lproj/Localizable.strings | 0 .../Resources/fr.lproj/Localizable.strings | 0 .../Resources/it.lproj/Localizable.strings | 0 .../Resources/rm.lproj/Localizable.strings | 0 .../SRGIdentity}/SRGAccount.m | 2 +- .../SRGIdentity}/SRGIdentity.m | 0 .../SRGIdentity}/SRGIdentityLogger.h | 2 +- .../SRGIdentityLoginViewController.h | 2 +- .../SRGIdentityLoginViewController~tvos.m | 10 +- ...dentityLoginViewController~tvos.storyboard | 0 .../SRGIdentity}/SRGIdentityModalTransition.h | 2 +- .../SRGIdentityModalTransition~ios.m | 6 + .../SRGIdentityNavigationController.h | 2 +- .../SRGIdentityNavigationController~ios.m | 7 +- .../SRGIdentity}/SRGIdentityService.m | 15 +- .../SRGIdentityWebViewController.h | 14 +- .../SRGIdentityWebViewController~ios.m | 12 +- ...RGIdentityWebViewController~ios.storyboard | 0 .../SRGIdentity}/UIImage+SRGIdentity.h | 2 +- .../SRGIdentity}/UIImage+SRGIdentity.m | 0 .../SRGIdentity}/UIWindow+SRGIdentity.h | 2 +- .../SRGIdentity}/UIWindow+SRGIdentity.m | 0 .../SRGIdentity/include}/SRGAccount.h | 2 +- .../SRGIdentity/include}/SRGIdentity.h | 2 +- .../SRGIdentity/include}/SRGIdentityService.h | 2 +- .../project.pbxproj | 718 ++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcschemes/SRGIdentity-tests.xcscheme | 54 + .../contents.xcworkspacedata | 10 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/swiftpm/Package.resolved | 88 + .../IdentityBaseTestCase.h | 4 +- .../IdentityBaseTestCase.m | 0 .../IdentityServiceTestCase.m | 30 +- Tests/{ => SRGIdentityTests}/Info.plist | 6 +- .../Info.plist | 6 +- .../{TestApp => SRGIdentityTestsHost}/main.m | 2 +- Tests/TestApp/TestApp.xcconfig | 1 - Tests/Tests.xcconfig | 9 +- docs/README.md | 61 +- 78 files changed, 1919 insertions(+), 1867 deletions(-) rename {SRGIdentity.xcodeproj/project.xcworkspace => .swiftpm/xcode/package.xcworkspace}/contents.xcworkspacedata (100%) delete mode 100644 Cartfile delete mode 100644 Cartfile.private delete mode 100644 Cartfile.resolved delete mode 100644 Common.xcconfig create mode 100644 Demo/SRGIdentity-demo.xcodeproj/project.pbxproj create mode 100644 Demo/SRGIdentity-demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename {SRGIdentity.xcodeproj => Demo/SRGIdentity-demo.xcodeproj}/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist (100%) create mode 100644 Demo/SRGIdentity-demo.xcodeproj/xcshareddata/xcschemes/SRGIdentity-demo.xcscheme create mode 100644 Demo/SRGIdentity-demo.xcworkspace/contents.xcworkspacedata create mode 100644 Demo/SRGIdentity-demo.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved rename Demo/Sources/{ => Application}/SceneDelegate.h (92%) rename Demo/Sources/{ => Application}/SceneDelegate.m (100%) delete mode 100644 Framework/Framework.xcconfig delete mode 100644 Framework/Info.plist delete mode 100644 Framework/Resources/Info.plist delete mode 100644 Makefile create mode 100644 Package.resolved create mode 100644 Package.swift delete mode 100644 SRGIdentity.xcodeproj/project.pbxproj delete mode 100644 SRGIdentity.xcodeproj/xcshareddata/xcschemes/SRGIdentity.xcscheme rename {Framework/Sources/Categories => Sources/SRGIdentity}/NSBundle+SRGIdentity.h (95%) rename {Framework/Sources/Categories => Sources/SRGIdentity}/NSBundle+SRGIdentity.m (100%) rename {Framework => Sources/SRGIdentity}/Resources/Images.xcassets/Contents.json (100%) rename {Framework => Sources/SRGIdentity}/Resources/Images.xcassets/service_logo.imageset/Contents.json (100%) rename {Framework => Sources/SRGIdentity}/Resources/Images.xcassets/service_logo.imageset/identity_service_logo.pdf (100%) rename {Framework => Sources/SRGIdentity}/Resources/de.lproj/Localizable.strings (100%) rename {Framework => Sources/SRGIdentity}/Resources/en.lproj/Localizable.strings (100%) rename {Framework => Sources/SRGIdentity}/Resources/fr.lproj/Localizable.strings (100%) rename {Framework => Sources/SRGIdentity}/Resources/it.lproj/Localizable.strings (100%) rename {Framework => Sources/SRGIdentity}/Resources/rm.lproj/Localizable.strings (100%) rename {Framework/Sources/Model => Sources/SRGIdentity}/SRGAccount.m (99%) rename {Framework/Sources => Sources/SRGIdentity}/SRGIdentity.m (100%) rename {Framework/Sources => Sources/SRGIdentity}/SRGIdentityLogger.h (95%) rename {Framework/Sources/Login => Sources/SRGIdentity}/SRGIdentityLoginViewController.h (97%) rename {Framework/Sources/Login => Sources/SRGIdentity}/SRGIdentityLoginViewController~tvos.m (98%) rename {Framework/Sources/Login => Sources/SRGIdentity}/SRGIdentityLoginViewController~tvos.storyboard (100%) rename {Framework/Sources/Browser => Sources/SRGIdentity}/SRGIdentityModalTransition.h (97%) rename {Framework/Sources/Browser => Sources/SRGIdentity}/SRGIdentityModalTransition~ios.m (99%) rename {Framework/Sources/Browser => Sources/SRGIdentity}/SRGIdentityNavigationController.h (94%) rename {Framework/Sources/Browser => Sources/SRGIdentity}/SRGIdentityNavigationController~ios.m (98%) rename {Framework/Sources => Sources/SRGIdentity}/SRGIdentityService.m (99%) rename {Framework/Sources/Browser => Sources/SRGIdentity}/SRGIdentityWebViewController.h (84%) rename {Framework/Sources/Browser => Sources/SRGIdentity}/SRGIdentityWebViewController~ios.m (98%) rename {Framework/Sources/Browser => Sources/SRGIdentity}/SRGIdentityWebViewController~ios.storyboard (100%) rename {Framework/Sources/Categories => Sources/SRGIdentity}/UIImage+SRGIdentity.h (94%) rename {Framework/Sources/Categories => Sources/SRGIdentity}/UIImage+SRGIdentity.m (100%) rename {Framework/Sources/Categories => Sources/SRGIdentity}/UIWindow+SRGIdentity.h (94%) rename {Framework/Sources/Categories => Sources/SRGIdentity}/UIWindow+SRGIdentity.m (100%) rename {Framework/Sources/Model => Sources/SRGIdentity/include}/SRGAccount.h (98%) rename {Framework/Sources => Sources/SRGIdentity/include}/SRGIdentity.h (89%) rename {Framework/Sources => Sources/SRGIdentity/include}/SRGIdentityService.h (99%) create mode 100644 Tests/SRGIdentity-tests.xcodeproj/project.pbxproj create mode 100644 Tests/SRGIdentity-tests.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 Tests/SRGIdentity-tests.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 Tests/SRGIdentity-tests.xcodeproj/xcshareddata/xcschemes/SRGIdentity-tests.xcscheme create mode 100644 Tests/SRGIdentity-tests.xcworkspace/contents.xcworkspacedata create mode 100644 Tests/SRGIdentity-tests.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved rename Tests/{Sources/Helpers => SRGIdentityTests}/IdentityBaseTestCase.h (93%) rename Tests/{Sources/Helpers => SRGIdentityTests}/IdentityBaseTestCase.m (100%) rename Tests/{Sources => SRGIdentityTests}/IdentityServiceTestCase.m (94%) rename Tests/{ => SRGIdentityTests}/Info.plist (83%) rename Tests/{TestApp => SRGIdentityTestsHost}/Info.plist (89%) rename Tests/{TestApp => SRGIdentityTestsHost}/main.m (94%) delete mode 100644 Tests/TestApp/TestApp.xcconfig diff --git a/.gitignore b/.gitignore index 2ca94d3..f3776ec 100644 --- a/.gitignore +++ b/.gitignore @@ -1,13 +1,13 @@ .DS_Store +/.build +/Packages +/*.xcodeproj +xcuserdata/ + *.xcscmblueprint xcuserdata -/archive -/build - -/Carthage - /fastlane/*.xcresult /fastlane/*.xml diff --git a/SRGIdentity.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata similarity index 100% rename from SRGIdentity.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to .swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata diff --git a/Cartfile b/Cartfile deleted file mode 100644 index de9d837..0000000 --- a/Cartfile +++ /dev/null @@ -1,5 +0,0 @@ -github "Mantle/Mantle" "2.1.2" -github "SRGSSR/FXReachability" "1.3.2_srg4" -github "SRGSSR/srgappearance-apple" "2.1.0" -github "SRGSSR/srgnetwork-apple" "2.0.2" -github "SRGSSR/UICKeyChainStore" "v2.1.2_srg1" \ No newline at end of file diff --git a/Cartfile.private b/Cartfile.private deleted file mode 100644 index 4450155..0000000 --- a/Cartfile.private +++ /dev/null @@ -1 +0,0 @@ -github "AliSoftware/OHHTTPStubs" ~> 8.0.0 \ No newline at end of file diff --git a/Cartfile.resolved b/Cartfile.resolved deleted file mode 100644 index 1ff7c0b..0000000 --- a/Cartfile.resolved +++ /dev/null @@ -1,9 +0,0 @@ -github "AliSoftware/OHHTTPStubs" "8.0.0" -github "Mantle/Mantle" "2.1.2" -github "SRGSSR/FXReachability" "1.3.2_srg4" -github "SRGSSR/MAKVONotificationCenter" "1.0_srg4" -github "SRGSSR/UICKeyChainStore" "v2.1.2_srg1" -github "SRGSSR/libextobjc" "0.6_srg2" -github "SRGSSR/srgappearance-apple" "2.1.0" -github "SRGSSR/srglogger-apple" "2.0.1" -github "SRGSSR/srgnetwork-apple" "2.0.2" diff --git a/Common.xcconfig b/Common.xcconfig deleted file mode 100644 index a1f1766..0000000 --- a/Common.xcconfig +++ /dev/null @@ -1,25 +0,0 @@ -// Version information -MARKETING_VERSION = 2.0.5 - -// Deployment targets -IPHONEOS_DEPLOYMENT_TARGET = 9.0 -TVOS_DEPLOYMENT_TARGET = 12.0 - -// Configuration to have a single target built for all platforms -// See https://davedelong.com/blog/2018/11/15/building-a-crossplatform-framework/ -SUPPORTED_PLATFORMS = iphoneos iphonesimulator appletvos appletvsimulator -TARGETED_DEVICE_FAMILY = 1,2,3 - -CARTHAGE_PLATFORM[sdk=iphone*] = iOS -CARTHAGE_PLATFORM[sdk=appletv*] = tvOS - -// Setup to enable plaform suffixes to enable sources or resources for a specific platform only -// See https://davedelong.com/blog/2018/07/25/conditional-compilation-in-swift-part-2/ -IOS_FILES = *~ios.* -TVOS_FILES = *~tvos.* - -EXCLUDED_SOURCE_FILE_NAMES = $(IOS_FILES) $(TVOS_FILES) - -INCLUDED_SOURCE_FILE_NAMES = -INCLUDED_SOURCE_FILE_NAMES[sdk=iphone*] = $(IOS_FILES) -INCLUDED_SOURCE_FILE_NAMES[sdk=appletv*] = $(TVOS_FILES) diff --git a/Demo/Demo.xcconfig b/Demo/Demo.xcconfig index 9f4fff3..1b6f38a 100644 --- a/Demo/Demo.xcconfig +++ b/Demo/Demo.xcconfig @@ -1,7 +1,31 @@ -#include "../Common.xcconfig" +// Version information +MARKETING_VERSION = 2.0.5 + +// Deployment targets +IPHONEOS_DEPLOYMENT_TARGET = 9.0 +TVOS_DEPLOYMENT_TARGET = 12.0 + +// Configuration to have a single target built for all platforms +// See https://davedelong.com/blog/2018/11/15/building-a-crossplatform-framework/ +SUPPORTED_PLATFORMS = iphoneos iphonesimulator appletvos appletvsimulator +TARGETED_DEVICE_FAMILY = 1,2,3 + +// Setup to enable plaform suffixes to enable sources or resources for a specific platform only +// See https://davedelong.com/blog/2018/07/25/conditional-compilation-in-swift-part-2/ +IOS_FILES = *~ios.* +TVOS_FILES = *~tvos.* + +EXCLUDED_SOURCE_FILE_NAMES = $(IOS_FILES) $(TVOS_FILES) + +INCLUDED_SOURCE_FILE_NAMES = +INCLUDED_SOURCE_FILE_NAMES[sdk=iphone*] = $(IOS_FILES) +INCLUDED_SOURCE_FILE_NAMES[sdk=appletv*] = $(TVOS_FILES) LAUNCH_SCREEN[sdk=iphone*] = LaunchScreen~ios LAUNCH_SCREEN[sdk=appletv*] = APP_ICONS_SOURCE[sdk=iphone*] = AppIcon APP_ICONS_SOURCE[sdk=appletv*] = App Icon & Top Shelf Image + +REQUIRED_DEVICE_CAPABILITY[sdk=iphone*] = armv7 +REQUIRED_DEVICE_CAPABILITY[sdk=appletv*] = arm64 diff --git a/Demo/SRGIdentity-demo.xcodeproj/project.pbxproj b/Demo/SRGIdentity-demo.xcodeproj/project.pbxproj new file mode 100644 index 0000000..f65c84d --- /dev/null +++ b/Demo/SRGIdentity-demo.xcodeproj/project.pbxproj @@ -0,0 +1,588 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 52; + objects = { + +/* Begin PBXBuildFile section */ + 6F3C7A0624C62F5900199F64 /* SceneDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3C7A0424C62F5900199F64 /* SceneDelegate.m */; }; + 6F3C7A0824C62FB000199F64 /* SRGIdentity in Frameworks */ = {isa = PBXBuildFile; productRef = 6F3C7A0724C62FB000199F64 /* SRGIdentity */; }; + 6F55003C237BCB02003476E2 /* DemosViewController~tvos.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6F55003B237BCB02003476E2 /* DemosViewController~tvos.storyboard */; }; + 6F550040237BCC04003476E2 /* Resources.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F55003F237BCC04003476E2 /* Resources.m */; }; + 6F8A93FB20FDCAA800AA6434 /* LaunchScreen~ios.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6F8A93F020FDCAA800AA6434 /* LaunchScreen~ios.storyboard */; }; + 6F8A93FC20FDCAA800AA6434 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6F8A93F120FDCAA800AA6434 /* Images.xcassets */; }; + 6F8A93FD20FDCAA800AA6434 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F8A93F520FDCAA800AA6434 /* main.m */; }; + 6F8A93FE20FDCAA800AA6434 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F8A93F620FDCAA800AA6434 /* AppDelegate.m */; }; + 6F8A93FF20FDCAA800AA6434 /* DemosViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F8A93F920FDCAA800AA6434 /* DemosViewController.m */; }; + 6F8A940220FDCBA600AA6434 /* DemosViewController~ios.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6F8A940120FDCBA600AA6434 /* DemosViewController~ios.storyboard */; }; + 6FCE031023F5C17A0072EBC4 /* Application.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FCE030F23F5C17A0072EBC4 /* Application.m */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 080D0BD921356A1200AA519A /* UICKeyChainStore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UICKeyChainStore.framework; path = Carthage/Build/iOS/UICKeyChainStore.framework; sourceTree = ""; }; + 080D0BE021356CB500AA519A /* libextobjc.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = libextobjc.framework; path = Carthage/Build/iOS/libextobjc.framework; sourceTree = ""; }; + 080D0BE121356CB500AA519A /* MAKVONotificationCenter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MAKVONotificationCenter.framework; path = Carthage/Build/iOS/MAKVONotificationCenter.framework; sourceTree = ""; }; + 080D0BE42135776000AA519A /* Mantle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Mantle.framework; path = Carthage/Build/iOS/Mantle.framework; sourceTree = ""; }; + 080D0BEE2135A6DD00AA519A /* SafariServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SafariServices.framework; path = System/Library/Frameworks/SafariServices.framework; sourceTree = SDKROOT; }; + 08266651216E354000FD8E84 /* OHHTTPStubs.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OHHTTPStubs.framework; path = Carthage/Build/iOS/OHHTTPStubs.framework; sourceTree = ""; }; + 084CD6FE21696C0A00905A38 /* SRGLogger.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGLogger.framework; path = Carthage/Build/iOS/SRGLogger.framework; sourceTree = ""; }; + 086FB2CA21368ADE00DE4CF2 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; + 086FB33521380D9300DE4CF2 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Demo.xcconfig; sourceTree = ""; }; + 6F3C7A0424C62F5900199F64 /* SceneDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SceneDelegate.m; sourceTree = ""; }; + 6F3C7A0524C62F5900199F64 /* SceneDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SceneDelegate.h; sourceTree = ""; }; + 6F55003B237BCB02003476E2 /* DemosViewController~tvos.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = "DemosViewController~tvos.storyboard"; sourceTree = ""; }; + 6F55003E237BCC04003476E2 /* Resources.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Resources.h; sourceTree = ""; }; + 6F55003F237BCC04003476E2 /* Resources.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Resources.m; sourceTree = ""; }; + 6F6ED0FF216BA9D800D7E786 /* FXReachability.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = FXReachability.framework; path = Carthage/Build/iOS/FXReachability.framework; sourceTree = ""; }; + 6F8A93D820FDCA0800AA6434 /* SRGIdentity-demo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "SRGIdentity-demo.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 6F8A93F020FDCAA800AA6434 /* LaunchScreen~ios.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = "LaunchScreen~ios.storyboard"; sourceTree = ""; }; + 6F8A93F120FDCAA800AA6434 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; + 6F8A93F420FDCAA800AA6434 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; + 6F8A93F520FDCAA800AA6434 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 6F8A93F620FDCAA800AA6434 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; + 6F8A93F820FDCAA800AA6434 /* DemosViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DemosViewController.h; sourceTree = ""; }; + 6F8A93F920FDCAA800AA6434 /* DemosViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DemosViewController.m; sourceTree = ""; }; + 6F8A940120FDCBA600AA6434 /* DemosViewController~ios.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = "DemosViewController~ios.storyboard"; sourceTree = ""; }; + 6F9FFAAB2167924E00F781A0 /* SRGNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGNetwork.framework; path = Carthage/Build/iOS/SRGNetwork.framework; sourceTree = ""; }; + 6FC7C5A423A3A6D70058349C /* SRGAppearance.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGAppearance.framework; path = Carthage/Build/iOS/SRGAppearance.framework; sourceTree = ""; }; + 6FCE030E23F5C17A0072EBC4 /* Application.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Application.h; sourceTree = ""; }; + 6FCE030F23F5C17A0072EBC4 /* Application.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = Application.m; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 6F8A93D520FDCA0800AA6434 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 6F3C7A0824C62FB000199F64 /* SRGIdentity in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 6F0EB52720FC7F58009C02CF = { + isa = PBXGroup; + children = ( + 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */, + 086FB33521380D9300DE4CF2 /* Info.plist */, + 6F8A93F220FDCAA800AA6434 /* Sources */, + 6F8A93EF20FDCAA800AA6434 /* Resources */, + 6F8A945521006A9E00AA6434 /* Frameworks */, + 6F0EB53220FC7F58009C02CF /* Products */, + ); + sourceTree = ""; + }; + 6F0EB53220FC7F58009C02CF /* Products */ = { + isa = PBXGroup; + children = ( + 6F8A93D820FDCA0800AA6434 /* SRGIdentity-demo.app */, + ); + name = Products; + sourceTree = ""; + }; + 6F55003D237BCC04003476E2 /* Helpers */ = { + isa = PBXGroup; + children = ( + 6F55003E237BCC04003476E2 /* Resources.h */, + 6F55003F237BCC04003476E2 /* Resources.m */, + ); + path = Helpers; + sourceTree = ""; + }; + 6F8A93EF20FDCAA800AA6434 /* Resources */ = { + isa = PBXGroup; + children = ( + 6F8A93F120FDCAA800AA6434 /* Images.xcassets */, + 6F8A93F020FDCAA800AA6434 /* LaunchScreen~ios.storyboard */, + ); + path = Resources; + sourceTree = ""; + }; + 6F8A93F220FDCAA800AA6434 /* Sources */ = { + isa = PBXGroup; + children = ( + 6F8A93F320FDCAA800AA6434 /* Application */, + 6F8A93F720FDCAA800AA6434 /* Demos */, + 6F55003D237BCC04003476E2 /* Helpers */, + ); + path = Sources; + sourceTree = ""; + }; + 6F8A93F320FDCAA800AA6434 /* Application */ = { + isa = PBXGroup; + children = ( + 6F8A93F420FDCAA800AA6434 /* AppDelegate.h */, + 6F8A93F620FDCAA800AA6434 /* AppDelegate.m */, + 6FCE030E23F5C17A0072EBC4 /* Application.h */, + 6FCE030F23F5C17A0072EBC4 /* Application.m */, + 6F8A93F520FDCAA800AA6434 /* main.m */, + 6F3C7A0524C62F5900199F64 /* SceneDelegate.h */, + 6F3C7A0424C62F5900199F64 /* SceneDelegate.m */, + ); + path = Application; + sourceTree = ""; + }; + 6F8A93F720FDCAA800AA6434 /* Demos */ = { + isa = PBXGroup; + children = ( + 6F8A93F820FDCAA800AA6434 /* DemosViewController.h */, + 6F8A93F920FDCAA800AA6434 /* DemosViewController.m */, + 6F8A940120FDCBA600AA6434 /* DemosViewController~ios.storyboard */, + 6F55003B237BCB02003476E2 /* DemosViewController~tvos.storyboard */, + ); + path = Demos; + sourceTree = ""; + }; + 6F8A945521006A9E00AA6434 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 6F6ED0FF216BA9D800D7E786 /* FXReachability.framework */, + 080D0BE021356CB500AA519A /* libextobjc.framework */, + 080D0BE121356CB500AA519A /* MAKVONotificationCenter.framework */, + 080D0BE42135776000AA519A /* Mantle.framework */, + 08266651216E354000FD8E84 /* OHHTTPStubs.framework */, + 080D0BEE2135A6DD00AA519A /* SafariServices.framework */, + 6FC7C5A423A3A6D70058349C /* SRGAppearance.framework */, + 084CD6FE21696C0A00905A38 /* SRGLogger.framework */, + 6F9FFAAB2167924E00F781A0 /* SRGNetwork.framework */, + 080D0BD921356A1200AA519A /* UICKeyChainStore.framework */, + 086FB2CA21368ADE00DE4CF2 /* WebKit.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 6F8A93D720FDCA0800AA6434 /* SRGIdentity-demo */ = { + isa = PBXNativeTarget; + buildConfigurationList = 6F8A93EB20FDCA0900AA6434 /* Build configuration list for PBXNativeTarget "SRGIdentity-demo" */; + buildPhases = ( + 6F8A93D420FDCA0800AA6434 /* Sources */, + 6F8A93D520FDCA0800AA6434 /* Frameworks */, + 6F8A93D620FDCA0800AA6434 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "SRGIdentity-demo"; + packageProductDependencies = ( + 6F3C7A0724C62FB000199F64 /* SRGIdentity */, + ); + productName = "SRGIdentity-demo1"; + productReference = 6F8A93D820FDCA0800AA6434 /* SRGIdentity-demo.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 6F0EB52820FC7F58009C02CF /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 1200; + ORGANIZATIONNAME = "SRG SSR"; + TargetAttributes = { + 6F8A93D720FDCA0800AA6434 = { + CreatedOnToolsVersion = 9.4; + SystemCapabilities = { + com.apple.Keychain = { + enabled = 1; + }; + }; + }; + }; + }; + buildConfigurationList = 6F0EB52B20FC7F58009C02CF /* Build configuration list for PBXProject "SRGIdentity-demo" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + it, + de, + fr, + rm, + ); + mainGroup = 6F0EB52720FC7F58009C02CF; + productRefGroup = 6F0EB53220FC7F58009C02CF /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 6F8A93D720FDCA0800AA6434 /* SRGIdentity-demo */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 6F8A93D620FDCA0800AA6434 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 6F8A93FB20FDCAA800AA6434 /* LaunchScreen~ios.storyboard in Resources */, + 6F55003C237BCB02003476E2 /* DemosViewController~tvos.storyboard in Resources */, + 6F8A940220FDCBA600AA6434 /* DemosViewController~ios.storyboard in Resources */, + 6F8A93FC20FDCAA800AA6434 /* Images.xcassets in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 6F8A93D420FDCA0800AA6434 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 6FCE031023F5C17A0072EBC4 /* Application.m in Sources */, + 6F3C7A0624C62F5900199F64 /* SceneDelegate.m in Sources */, + 6F8A93FE20FDCAA800AA6434 /* AppDelegate.m in Sources */, + 6F550040237BCC04003476E2 /* Resources.m in Sources */, + 6F8A93FD20FDCAA800AA6434 /* main.m in Sources */, + 6F8A93FF20FDCAA800AA6434 /* DemosViewController.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 6F0C98DA2121E14000073AB6 /* Debug-static */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = "Debug-static"; + }; + 6F0C98DC2121E14000073AB6 /* Debug-static */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)"; + DEVELOPMENT_TEAM = VMGRRW6SG7; + INFOPLIST_FILE = Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-demo"; + SDKROOT = iphoneos; + }; + name = "Debug-static"; + }; + 6F0C98DE2121E14600073AB6 /* Release-static */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + VALIDATE_PRODUCT = YES; + }; + name = "Release-static"; + }; + 6F0C98E02121E14600073AB6 /* Release-static */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)"; + DEVELOPMENT_TEAM = VMGRRW6SG7; + INFOPLIST_FILE = Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-demo"; + SDKROOT = iphoneos; + }; + name = "Release-static"; + }; + 6F0EB53720FC7F58009C02CF /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 6F0EB53820FC7F58009C02CF /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 6F8A93EC20FDCA0900AA6434 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)"; + DEVELOPMENT_TEAM = VMGRRW6SG7; + INFOPLIST_FILE = Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-demo"; + SDKROOT = iphoneos; + }; + name = Debug; + }; + 6F8A93ED20FDCA0900AA6434 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)"; + DEVELOPMENT_TEAM = VMGRRW6SG7; + INFOPLIST_FILE = Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-demo"; + SDKROOT = iphoneos; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 6F0EB52B20FC7F58009C02CF /* Build configuration list for PBXProject "SRGIdentity-demo" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 6F0EB53720FC7F58009C02CF /* Debug */, + 6F0C98DA2121E14000073AB6 /* Debug-static */, + 6F0EB53820FC7F58009C02CF /* Release */, + 6F0C98DE2121E14600073AB6 /* Release-static */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 6F8A93EB20FDCA0900AA6434 /* Build configuration list for PBXNativeTarget "SRGIdentity-demo" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 6F8A93EC20FDCA0900AA6434 /* Debug */, + 6F0C98DC2121E14000073AB6 /* Debug-static */, + 6F8A93ED20FDCA0900AA6434 /* Release */, + 6F0C98E02121E14600073AB6 /* Release-static */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + +/* Begin XCSwiftPackageProductDependency section */ + 6F3C7A0724C62FB000199F64 /* SRGIdentity */ = { + isa = XCSwiftPackageProductDependency; + productName = SRGIdentity; + }; +/* End XCSwiftPackageProductDependency section */ + }; + rootObject = 6F0EB52820FC7F58009C02CF /* Project object */; +} diff --git a/Demo/SRGIdentity-demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Demo/SRGIdentity-demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/Demo/SRGIdentity-demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/SRGIdentity.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Demo/SRGIdentity-demo.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from SRGIdentity.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to Demo/SRGIdentity-demo.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/Demo/SRGIdentity-demo.xcodeproj/xcshareddata/xcschemes/SRGIdentity-demo.xcscheme b/Demo/SRGIdentity-demo.xcodeproj/xcshareddata/xcschemes/SRGIdentity-demo.xcscheme new file mode 100644 index 0000000..b405cbc --- /dev/null +++ b/Demo/SRGIdentity-demo.xcodeproj/xcshareddata/xcschemes/SRGIdentity-demo.xcscheme @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Demo/SRGIdentity-demo.xcworkspace/contents.xcworkspacedata b/Demo/SRGIdentity-demo.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..ea3b71f --- /dev/null +++ b/Demo/SRGIdentity-demo.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,10 @@ + + + + + + + diff --git a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved new file mode 100644 index 0000000..a6ad83e --- /dev/null +++ b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -0,0 +1,79 @@ +{ + "object": { + "pins": [ + { + "package": "FXReachability", + "repositoryURL": "https://github.com/SRGSSR/FXReachability.git", + "state": { + "branch": "feature/spm-support", + "revision": "5d70506b9ba5c59c9b0332cc95d1e7dae6dd70a7", + "version": null + } + }, + { + "package": "libextobjc", + "repositoryURL": "https://github.com/SRGSSR/libextobjc.git", + "state": { + "branch": "feature/spm-support", + "revision": "bec0bafcb6f837267ac58c2babd9ff9e1402e091", + "version": null + } + }, + { + "package": "MAKVONotificationCenter", + "repositoryURL": "https://github.com/SRGSSR/MAKVONotificationCenter.git", + "state": { + "branch": "feature/spm-support", + "revision": "60395e0601ffd4a784856b423d4cac558366276d", + "version": null + } + }, + { + "package": "Mantle", + "repositoryURL": "https://github.com/SRGSSR/Mantle.git", + "state": { + "branch": "swift-package-manager-support", + "revision": "cd18bf7f9c6c5a0d2f4aec6012fe1615b86032fe", + "version": null + } + }, + { + "package": "SRGAppearance", + "repositoryURL": "https://github.com/SRGSSR/srgappearance-apple.git", + "state": { + "branch": "feature/spm-support", + "revision": "fa96c79d55b8175421f779de694c7941c8532dec", + "version": null + } + }, + { + "package": "SRGLogger", + "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git", + "state": { + "branch": "feature/spm-support", + "revision": "f4973abf95e8f1809a2ad4ca6f0702662327c9a0", + "version": null + } + }, + { + "package": "SRGNetwork", + "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git", + "state": { + "branch": "feature/spm-support", + "revision": "d58e09bab288a5751c611323d9b9458a43511de7", + "version": null + } + }, + { + "package": "UICKeyChainStore", + "repositoryURL": "https://github.com/kishikawakatsumi/UICKeyChainStore.git", + "state": { + "branch": null, + "revision": "2f0380d539ec53b66eef211b3c983749ad9e2686", + "version": "2.2.0" + } + } + ] + }, + "version": 1 +} diff --git a/Demo/Sources/Application/AppDelegate.h b/Demo/Sources/Application/AppDelegate.h index f4d0f3f..6c099dc 100644 --- a/Demo/Sources/Application/AppDelegate.h +++ b/Demo/Sources/Application/AppDelegate.h @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import UIKit; NS_ASSUME_NONNULL_BEGIN diff --git a/Demo/Sources/Application/AppDelegate.m b/Demo/Sources/Application/AppDelegate.m index d5e5e3f..d5d9139 100644 --- a/Demo/Sources/Application/AppDelegate.m +++ b/Demo/Sources/Application/AppDelegate.m @@ -8,7 +8,7 @@ #import "Application.h" -#import +@import SRGIdentity; @implementation AppDelegate diff --git a/Demo/Sources/Application/Application.h b/Demo/Sources/Application/Application.h index be0481f..fc5f7df 100644 --- a/Demo/Sources/Application/Application.h +++ b/Demo/Sources/Application/Application.h @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import UIKit; NS_ASSUME_NONNULL_BEGIN diff --git a/Demo/Sources/SceneDelegate.h b/Demo/Sources/Application/SceneDelegate.h similarity index 92% rename from Demo/Sources/SceneDelegate.h rename to Demo/Sources/Application/SceneDelegate.h index 9b7c309..2d1b360 100644 --- a/Demo/Sources/SceneDelegate.h +++ b/Demo/Sources/Application/SceneDelegate.h @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import UIKit; NS_ASSUME_NONNULL_BEGIN diff --git a/Demo/Sources/SceneDelegate.m b/Demo/Sources/Application/SceneDelegate.m similarity index 100% rename from Demo/Sources/SceneDelegate.m rename to Demo/Sources/Application/SceneDelegate.m diff --git a/Demo/Sources/Application/main.m b/Demo/Sources/Application/main.m index 2c2a00b..d0c5776 100644 --- a/Demo/Sources/Application/main.m +++ b/Demo/Sources/Application/main.m @@ -6,7 +6,7 @@ #import "AppDelegate.h" -#import +@import UIKit; int main(int argc, char *argv[]) { diff --git a/Demo/Sources/Demos/DemosViewController.h b/Demo/Sources/Demos/DemosViewController.h index a031bbd..ccfe984 100644 --- a/Demo/Sources/Demos/DemosViewController.h +++ b/Demo/Sources/Demos/DemosViewController.h @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import UIKit; NS_ASSUME_NONNULL_BEGIN diff --git a/Demo/Sources/Demos/DemosViewController.m b/Demo/Sources/Demos/DemosViewController.m index a65ba1c..db56413 100644 --- a/Demo/Sources/Demos/DemosViewController.m +++ b/Demo/Sources/Demos/DemosViewController.m @@ -9,7 +9,7 @@ #import "AppDelegate.h" #import "Resources.h" -#import +@import SRGIdentity; static NSString * const LastLoggedInEmailAddress = @"LastLoggedInEmailAddress"; diff --git a/Demo/Sources/Helpers/Resources.h b/Demo/Sources/Helpers/Resources.h index bb04c38..8db8a92 100644 --- a/Demo/Sources/Helpers/Resources.h +++ b/Demo/Sources/Helpers/Resources.h @@ -4,6 +4,6 @@ // License information is available from the LICENSE file. // -#import +@import Foundation; OBJC_EXPORT NSString *ResourceNameForUIClass(Class cls); diff --git a/Framework/Framework.xcconfig b/Framework/Framework.xcconfig deleted file mode 100644 index ac50f52..0000000 --- a/Framework/Framework.xcconfig +++ /dev/null @@ -1,3 +0,0 @@ -#include "../Common.xcconfig" - -OTHER_LDFLAGS = -framework FXReachability -framework libextobjc -framework MAKVONotificationCenter -framework Mantle -framework SRGAppearance -framework SRGLogger -framework SRGNetwork -framework UICKeyChainStore diff --git a/Framework/Info.plist b/Framework/Info.plist deleted file mode 100644 index ec0cc7b..0000000 --- a/Framework/Info.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - FMWK - CFBundleShortVersionString - $(MARKETING_VERSION) - CFBundleVersion - $(CURRENT_PROJECT_VERSION) - NSPrincipalClass - - - diff --git a/Framework/Resources/Info.plist b/Framework/Resources/Info.plist deleted file mode 100644 index 1f571be..0000000 --- a/Framework/Resources/Info.plist +++ /dev/null @@ -1,20 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - BNDL - CFBundleShortVersionString - $(MARKETING_VERSION) - CFBundleVersion - $(CURRENT_PROJECT_VERSION) - - diff --git a/Makefile b/Makefile deleted file mode 100644 index 9fd77ea..0000000 --- a/Makefile +++ /dev/null @@ -1,47 +0,0 @@ -#!/usr/bin/xcrun make -f - -CARTHAGE_FOLDER=Carthage -CARTHAGE_FLAGS=--platform iOS,tvOS --cache-builds --new-resolver - -.PHONY: all -all: bootstrap - @echo "Building the project..." - @xcodebuild build - @echo "... done.\n" - -.PHONY: bootstrap -bootstrap: - @echo "Bootstrapping dependencies..." - @carthage bootstrap $(CARTHAGE_FLAGS) - @echo "... done.\n" - -.PHONY: update -update: - @echo "Updating dependencies..." - @carthage update $(CARTHAGE_FLAGS) - @echo "... done.\n" - -.PHONY: package -package: bootstrap - @echo "Packaging binaries..." - @mkdir -p archive - @carthage build --no-skip-current - @carthage archive --output archive - @echo "... done.\n" - -.PHONY: clean -clean: - @echo "Cleaning up build products..." - @xcodebuild clean - @rm -rf $(CARTHAGE_FOLDER) - @echo "... done.\n" - -.PHONY: help -help: - @echo "The following targets are available:" - @echo " all Build project dependencies and the project" - @echo " bootstrap Build dependencies as declared in Cartfile.resolved" - @echo " update Update and build dependencies" - @echo " package Build and package the framework for attaching to github releases" - @echo " clean Clean the project and its dependencies" - @echo " help Display this message" diff --git a/Package.resolved b/Package.resolved new file mode 100644 index 0000000..417bcae --- /dev/null +++ b/Package.resolved @@ -0,0 +1,79 @@ +{ + "object": { + "pins": [ + { + "package": "FXReachability", + "repositoryURL": "https://github.com/SRGSSR/FXReachability.git", + "state": { + "branch": "feature/spm-support", + "revision": "5d70506b9ba5c59c9b0332cc95d1e7dae6dd70a7", + "version": null + } + }, + { + "package": "libextobjc", + "repositoryURL": "https://github.com/SRGSSR/libextobjc.git", + "state": { + "branch": "feature/spm-support", + "revision": "bec0bafcb6f837267ac58c2babd9ff9e1402e091", + "version": null + } + }, + { + "package": "MAKVONotificationCenter", + "repositoryURL": "https://github.com/SRGSSR/MAKVONotificationCenter.git", + "state": { + "branch": "feature/spm-support", + "revision": "60395e0601ffd4a784856b423d4cac558366276d", + "version": null + } + }, + { + "package": "Mantle", + "repositoryURL": "https://github.com/SRGSSR/Mantle.git", + "state": { + "branch": "swift-package-manager-support", + "revision": "cd18bf7f9c6c5a0d2f4aec6012fe1615b86032fe", + "version": null + } + }, + { + "package": "SRGAppearance", + "repositoryURL": "https://github.com/SRGSSR/srgappearance-apple.git", + "state": { + "branch": "feature/spm-support", + "revision": "e184fccf142863c9a77b3cb5ce7f3c0221d6d8b9", + "version": null + } + }, + { + "package": "SRGLogger", + "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git", + "state": { + "branch": "feature/spm-support", + "revision": "f4973abf95e8f1809a2ad4ca6f0702662327c9a0", + "version": null + } + }, + { + "package": "SRGNetwork", + "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git", + "state": { + "branch": "feature/spm-support", + "revision": "d58e09bab288a5751c611323d9b9458a43511de7", + "version": null + } + }, + { + "package": "UICKeyChainStore", + "repositoryURL": "https://github.com/kishikawakatsumi/UICKeyChainStore.git", + "state": { + "branch": null, + "revision": "2f0380d539ec53b66eef211b3c983749ad9e2686", + "version": "2.2.0" + } + } + ] + }, + "version": 1 +} diff --git a/Package.swift b/Package.swift new file mode 100644 index 0000000..014c963 --- /dev/null +++ b/Package.swift @@ -0,0 +1,42 @@ +// swift-tools-version:5.3 + +import PackageDescription + +struct ProjectSettings { + static let marketingVersion: String = "2.0.5" +} + +let package = Package( + name: "SRGIdentity", + defaultLocalization: "en", + platforms: [ + .iOS(.v9), + .tvOS(.v12) + ], + products: [ + .library( + name: "SRGIdentity", + targets: ["SRGIdentity"] + ) + ], + dependencies: [ + .package(name: "FXReachability", url: "https://github.com/SRGSSR/FXReachability.git", .branch("feature/spm-support")), + .package(name: "Mantle", url: "https://github.com/SRGSSR/Mantle.git", .branch("swift-package-manager-support")), + .package(name: "SRGAppearance", url: "https://github.com/SRGSSR/srgappearance-apple.git", .branch("feature/spm-support")), + .package(name: "SRGNetwork", url: "https://github.com/SRGSSR/srgnetwork-apple.git", .branch("feature/spm-support")), + .package(name: "UICKeyChainStore", url: "https://github.com/kishikawakatsumi/UICKeyChainStore.git", .exact("2.2.0")) + ], + targets: [ + .target( + name: "SRGIdentity", + dependencies: ["FXReachability", "Mantle", "SRGAppearance", "SRGNetwork", "UICKeyChainStore"], + exclude: ["SRGIdentityLoginViewController~tvos.storyboard", "SRGIdentityWebViewController~ios.storyboard"], + resources: [ + .process("Resources") + ], + cSettings: [ + .define("MARKETING_VERSION", to: "\"\(ProjectSettings.marketingVersion)\"") + ] + ) + ] +) diff --git a/SRGIdentity.xcodeproj/project.pbxproj b/SRGIdentity.xcodeproj/project.pbxproj deleted file mode 100644 index 49d3886..0000000 --- a/SRGIdentity.xcodeproj/project.pbxproj +++ /dev/null @@ -1,1499 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 50; - objects = { - -/* Begin PBXBuildFile section */ - 080D0BD7213566C900AA519A /* SRGIdentityService.m in Sources */ = {isa = PBXBuildFile; fileRef = 080D0BD5213566C900AA519A /* SRGIdentityService.m */; }; - 080D0BD8213566C900AA519A /* SRGIdentityService.h in Headers */ = {isa = PBXBuildFile; fileRef = 080D0BD6213566C900AA519A /* SRGIdentityService.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 08266646216E2B9D00FD8E84 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 08266628216E2B1700FD8E84 /* main.m */; }; - 0829FA7C2136853C00FE0A28 /* SRGAccount.h in Headers */ = {isa = PBXBuildFile; fileRef = 0829FA752136853C00FE0A28 /* SRGAccount.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 0829FA7D2136853C00FE0A28 /* SRGAccount.m in Sources */ = {isa = PBXBuildFile; fileRef = 0829FA762136853C00FE0A28 /* SRGAccount.m */; }; - 0829FA7E2136853C00FE0A28 /* SRGIdentity.h in Headers */ = {isa = PBXBuildFile; fileRef = 0829FA772136853C00FE0A28 /* SRGIdentity.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 0829FA7F2136853C00FE0A28 /* SRGIdentity.m in Sources */ = {isa = PBXBuildFile; fileRef = 0829FA782136853C00FE0A28 /* SRGIdentity.m */; }; - 0829FA802136853C00FE0A28 /* NSBundle+SRGIdentity.h in Headers */ = {isa = PBXBuildFile; fileRef = 0829FA7A2136853C00FE0A28 /* NSBundle+SRGIdentity.h */; }; - 0829FA812136853C00FE0A28 /* NSBundle+SRGIdentity.m in Sources */ = {isa = PBXBuildFile; fileRef = 0829FA7B2136853C00FE0A28 /* NSBundle+SRGIdentity.m */; }; - 086BB714216967220079483E /* SRGIdentityLogger.h in Headers */ = {isa = PBXBuildFile; fileRef = 086BB713216967220079483E /* SRGIdentityLogger.h */; }; - 0875854A23A573FC00FA7207 /* UIImage+SRGIdentity.h in Headers */ = {isa = PBXBuildFile; fileRef = 0875854823A573FC00FA7207 /* UIImage+SRGIdentity.h */; }; - 0875854B23A573FC00FA7207 /* UIImage+SRGIdentity.m in Sources */ = {isa = PBXBuildFile; fileRef = 0875854923A573FC00FA7207 /* UIImage+SRGIdentity.m */; }; - 6F0C98F12121E26A00073AB6 /* SRGIdentity.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 6F0C98E62121E1C200073AB6 /* SRGIdentity.bundle */; }; - 6F19DA7F221DF6E100085C7D /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6F19DA7D221DF6E100085C7D /* Localizable.strings */; }; - 6F55003C237BCB02003476E2 /* DemosViewController~tvos.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6F55003B237BCB02003476E2 /* DemosViewController~tvos.storyboard */; }; - 6F550040237BCC04003476E2 /* Resources.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F55003F237BCC04003476E2 /* Resources.m */; }; - 6F75EA3C222523870014B6DF /* IdentityBaseTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F75EA3A222523870014B6DF /* IdentityBaseTestCase.m */; }; - 6F8A93FB20FDCAA800AA6434 /* LaunchScreen~ios.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6F8A93F020FDCAA800AA6434 /* LaunchScreen~ios.storyboard */; }; - 6F8A93FC20FDCAA800AA6434 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6F8A93F120FDCAA800AA6434 /* Images.xcassets */; }; - 6F8A93FD20FDCAA800AA6434 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F8A93F520FDCAA800AA6434 /* main.m */; }; - 6F8A93FE20FDCAA800AA6434 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F8A93F620FDCAA800AA6434 /* AppDelegate.m */; }; - 6F8A93FF20FDCAA800AA6434 /* DemosViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F8A93F920FDCAA800AA6434 /* DemosViewController.m */; }; - 6F8A940220FDCBA600AA6434 /* DemosViewController~ios.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6F8A940120FDCBA600AA6434 /* DemosViewController~ios.storyboard */; }; - 6F8A940320FDD01B00AA6434 /* SRGIdentity.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6F0EB53120FC7F58009C02CF /* SRGIdentity.framework */; }; - 6F8A940420FDD01B00AA6434 /* SRGIdentity.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 6F0EB53120FC7F58009C02CF /* SRGIdentity.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 6F979F3221F72A18002A2495 /* UIWindow+SRGIdentity.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F979F3021F72A18002A2495 /* UIWindow+SRGIdentity.m */; }; - 6F979F3321F72A18002A2495 /* UIWindow+SRGIdentity.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F979F3121F72A18002A2495 /* UIWindow+SRGIdentity.h */; }; - 6F9A1FDC23A27153002ECFC8 /* SRGIdentityLoginViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F9A1FDA23A27153002ECFC8 /* SRGIdentityLoginViewController.h */; }; - 6F9A1FDD23A27153002ECFC8 /* SRGIdentityLoginViewController~tvos.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F9A1FDB23A27153002ECFC8 /* SRGIdentityLoginViewController~tvos.m */; }; - 6F9A1FE023A27199002ECFC8 /* SRGIdentityLoginViewController~tvos.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6F9A1FDE23A27193002ECFC8 /* SRGIdentityLoginViewController~tvos.storyboard */; }; - 6FB74D6C2101D4D200E2D365 /* SRGIdentity.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6F0EB53120FC7F58009C02CF /* SRGIdentity.framework */; }; - 6FB74D772101D5D600E2D365 /* IdentityServiceTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FB74D742101D5D600E2D365 /* IdentityServiceTestCase.m */; }; - 6FC7C5A323A3A13E0058349C /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6FC7C5A223A3A13E0058349C /* Images.xcassets */; }; - 6FCBBD57221D8E95003CE752 /* SRGIdentityWebViewController~ios.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6FF846A1221BED95006FC3FC /* SRGIdentityWebViewController~ios.storyboard */; }; - 6FCBBD5A221DB644003CE752 /* SRGIdentityNavigationController.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FCBBD58221DB644003CE752 /* SRGIdentityNavigationController.h */; }; - 6FCBBD5B221DB644003CE752 /* SRGIdentityNavigationController~ios.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FCBBD59221DB644003CE752 /* SRGIdentityNavigationController~ios.m */; }; - 6FCE031023F5C17A0072EBC4 /* Application.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FCE030F23F5C17A0072EBC4 /* Application.m */; }; - 6FE1AAF523ABAB92000266B4 /* SceneDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FE1AAF423ABAB92000266B4 /* SceneDelegate.m */; }; - 6FF846A3221BED95006FC3FC /* SRGIdentityWebViewController~ios.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FF846A0221BED95006FC3FC /* SRGIdentityWebViewController~ios.m */; }; - 6FF846A5221BED95006FC3FC /* SRGIdentityWebViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FF846A2221BED95006FC3FC /* SRGIdentityWebViewController.h */; }; - 6FF846A8221BF93F006FC3FC /* SRGIdentityModalTransition.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FF846A6221BF93F006FC3FC /* SRGIdentityModalTransition.h */; }; - 6FF846A9221BF93F006FC3FC /* SRGIdentityModalTransition~ios.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FF846A7221BF93F006FC3FC /* SRGIdentityModalTransition~ios.m */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 08266647216E2BFA00FD8E84 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 6F0EB52820FC7F58009C02CF /* Project object */; - proxyType = 1; - remoteGlobalIDString = 0826662D216E2B7200FD8E84; - remoteInfo = "SRGIdentity-testapp"; - }; - 085342262163CDBB00E2EEE6 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 6F0EB52820FC7F58009C02CF /* Project object */; - proxyType = 1; - remoteGlobalIDString = 6F0C98E52121E1C200073AB6; - remoteInfo = "SRGIdentity-resources"; - }; - 085342272163CDBB00E2EEE6 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 6F0EB52820FC7F58009C02CF /* Project object */; - proxyType = 1; - remoteGlobalIDString = 6F0EB53020FC7F58009C02CF; - remoteInfo = SRGIdentity; - }; - 085342282163CDBC00E2EEE6 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 6F0EB52820FC7F58009C02CF /* Project object */; - proxyType = 1; - remoteGlobalIDString = 6F0EB53020FC7F58009C02CF; - remoteInfo = SRGIdentity; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 6F8A940720FDD01B00AA6434 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - 6F8A940420FDD01B00AA6434 /* SRGIdentity.framework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 080D0BD5213566C900AA519A /* SRGIdentityService.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SRGIdentityService.m; sourceTree = ""; }; - 080D0BD6213566C900AA519A /* SRGIdentityService.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SRGIdentityService.h; sourceTree = ""; }; - 080D0BD921356A1200AA519A /* UICKeyChainStore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UICKeyChainStore.framework; path = Carthage/Build/iOS/UICKeyChainStore.framework; sourceTree = ""; }; - 080D0BE021356CB500AA519A /* libextobjc.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = libextobjc.framework; path = Carthage/Build/iOS/libextobjc.framework; sourceTree = ""; }; - 080D0BE121356CB500AA519A /* MAKVONotificationCenter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MAKVONotificationCenter.framework; path = Carthage/Build/iOS/MAKVONotificationCenter.framework; sourceTree = ""; }; - 080D0BE42135776000AA519A /* Mantle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Mantle.framework; path = Carthage/Build/iOS/Mantle.framework; sourceTree = ""; }; - 080D0BEE2135A6DD00AA519A /* SafariServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SafariServices.framework; path = System/Library/Frameworks/SafariServices.framework; sourceTree = SDKROOT; }; - 08266628216E2B1700FD8E84 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; - 08266629216E2B1700FD8E84 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 0826662E216E2B7200FD8E84 /* SRGIdentity-testapp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "SRGIdentity-testapp.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - 08266651216E354000FD8E84 /* OHHTTPStubs.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OHHTTPStubs.framework; path = Carthage/Build/iOS/OHHTTPStubs.framework; sourceTree = ""; }; - 0829FA752136853C00FE0A28 /* SRGAccount.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SRGAccount.h; sourceTree = ""; }; - 0829FA762136853C00FE0A28 /* SRGAccount.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SRGAccount.m; sourceTree = ""; }; - 0829FA772136853C00FE0A28 /* SRGIdentity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SRGIdentity.h; sourceTree = ""; }; - 0829FA782136853C00FE0A28 /* SRGIdentity.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SRGIdentity.m; sourceTree = ""; }; - 0829FA7A2136853C00FE0A28 /* NSBundle+SRGIdentity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSBundle+SRGIdentity.h"; sourceTree = ""; }; - 0829FA7B2136853C00FE0A28 /* NSBundle+SRGIdentity.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSBundle+SRGIdentity.m"; sourceTree = ""; }; - 083FBD9D217A84D60025253D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 084CD6FE21696C0A00905A38 /* SRGLogger.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGLogger.framework; path = Carthage/Build/iOS/SRGLogger.framework; sourceTree = ""; }; - 086BB713216967220079483E /* SRGIdentityLogger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SRGIdentityLogger.h; sourceTree = ""; }; - 086FB2CA21368ADE00DE4CF2 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; - 086FB33521380D9300DE4CF2 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 0875854823A573FC00FA7207 /* UIImage+SRGIdentity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIImage+SRGIdentity.h"; sourceTree = ""; }; - 0875854923A573FC00FA7207 /* UIImage+SRGIdentity.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIImage+SRGIdentity.m"; sourceTree = ""; }; - 0895B2E023368DF7009922C6 /* TestApp.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = TestApp.xcconfig; sourceTree = ""; }; - 6F0402F22331318700DA4D97 /* Common.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Common.xcconfig; sourceTree = ""; }; - 6F0402F3233131A000DA4D97 /* Framework.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Framework.xcconfig; sourceTree = ""; }; - 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Demo.xcconfig; sourceTree = ""; }; - 6F0402F5233131C600DA4D97 /* Tests.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Tests.xcconfig; path = Tests/Tests.xcconfig; sourceTree = SOURCE_ROOT; }; - 6F0C98E62121E1C200073AB6 /* SRGIdentity.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SRGIdentity.bundle; sourceTree = BUILT_PRODUCTS_DIR; }; - 6F0EB53120FC7F58009C02CF /* SRGIdentity.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SRGIdentity.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 6F0EB53F20FC7FA9009C02CF /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 6F19DA7E221DF6E100085C7D /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Localizable.strings; sourceTree = ""; }; - 6F19DA80221DF6E900085C7D /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = ""; }; - 6F19DA81221DF71300085C7D /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = ""; }; - 6F19DA82221DF71A00085C7D /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Localizable.strings; sourceTree = ""; }; - 6F19DA83221DF72000085C7D /* rm */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = rm; path = rm.lproj/Localizable.strings; sourceTree = ""; }; - 6F55003B237BCB02003476E2 /* DemosViewController~tvos.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = "DemosViewController~tvos.storyboard"; sourceTree = ""; }; - 6F55003E237BCC04003476E2 /* Resources.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Resources.h; sourceTree = ""; }; - 6F55003F237BCC04003476E2 /* Resources.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Resources.m; sourceTree = ""; }; - 6F6ED0FF216BA9D800D7E786 /* FXReachability.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = FXReachability.framework; path = Carthage/Build/iOS/FXReachability.framework; sourceTree = ""; }; - 6F75EA3A222523870014B6DF /* IdentityBaseTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = IdentityBaseTestCase.m; sourceTree = ""; }; - 6F75EA3B222523870014B6DF /* IdentityBaseTestCase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IdentityBaseTestCase.h; sourceTree = ""; }; - 6F8A93D820FDCA0800AA6434 /* SRGIdentity-demo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "SRGIdentity-demo.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - 6F8A93F020FDCAA800AA6434 /* LaunchScreen~ios.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = "LaunchScreen~ios.storyboard"; sourceTree = ""; }; - 6F8A93F120FDCAA800AA6434 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; - 6F8A93F420FDCAA800AA6434 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; - 6F8A93F520FDCAA800AA6434 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; - 6F8A93F620FDCAA800AA6434 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; - 6F8A93F820FDCAA800AA6434 /* DemosViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DemosViewController.h; sourceTree = ""; }; - 6F8A93F920FDCAA800AA6434 /* DemosViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DemosViewController.m; sourceTree = ""; }; - 6F8A940120FDCBA600AA6434 /* DemosViewController~ios.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = "DemosViewController~ios.storyboard"; sourceTree = ""; }; - 6F979F3021F72A18002A2495 /* UIWindow+SRGIdentity.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIWindow+SRGIdentity.m"; sourceTree = ""; }; - 6F979F3121F72A18002A2495 /* UIWindow+SRGIdentity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIWindow+SRGIdentity.h"; sourceTree = ""; }; - 6F9A1FDA23A27153002ECFC8 /* SRGIdentityLoginViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SRGIdentityLoginViewController.h; sourceTree = ""; }; - 6F9A1FDB23A27153002ECFC8 /* SRGIdentityLoginViewController~tvos.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "SRGIdentityLoginViewController~tvos.m"; sourceTree = ""; }; - 6F9A1FDE23A27193002ECFC8 /* SRGIdentityLoginViewController~tvos.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = "SRGIdentityLoginViewController~tvos.storyboard"; sourceTree = ""; }; - 6F9FFAAB2167924E00F781A0 /* SRGNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGNetwork.framework; path = Carthage/Build/iOS/SRGNetwork.framework; sourceTree = ""; }; - 6FB74D672101D4D200E2D365 /* SRGIdentity-tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "SRGIdentity-tests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; - 6FB74D742101D5D600E2D365 /* IdentityServiceTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = IdentityServiceTestCase.m; sourceTree = ""; }; - 6FB74D762101D5D600E2D365 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 6FC7C5A223A3A13E0058349C /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; - 6FC7C5A423A3A6D70058349C /* SRGAppearance.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGAppearance.framework; path = Carthage/Build/iOS/SRGAppearance.framework; sourceTree = ""; }; - 6FCBBD58221DB644003CE752 /* SRGIdentityNavigationController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SRGIdentityNavigationController.h; sourceTree = ""; }; - 6FCBBD59221DB644003CE752 /* SRGIdentityNavigationController~ios.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "SRGIdentityNavigationController~ios.m"; sourceTree = ""; }; - 6FCE030E23F5C17A0072EBC4 /* Application.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Application.h; sourceTree = ""; }; - 6FCE030F23F5C17A0072EBC4 /* Application.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = Application.m; sourceTree = ""; }; - 6FE1AAF323ABAB92000266B4 /* SceneDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SceneDelegate.h; path = Demo/Sources/SceneDelegate.h; sourceTree = SOURCE_ROOT; }; - 6FE1AAF423ABAB92000266B4 /* SceneDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SceneDelegate.m; path = Demo/Sources/SceneDelegate.m; sourceTree = SOURCE_ROOT; }; - 6FF846A0221BED95006FC3FC /* SRGIdentityWebViewController~ios.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "SRGIdentityWebViewController~ios.m"; sourceTree = ""; }; - 6FF846A1221BED95006FC3FC /* SRGIdentityWebViewController~ios.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = "SRGIdentityWebViewController~ios.storyboard"; sourceTree = ""; }; - 6FF846A2221BED95006FC3FC /* SRGIdentityWebViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SRGIdentityWebViewController.h; sourceTree = ""; }; - 6FF846A6221BF93F006FC3FC /* SRGIdentityModalTransition.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SRGIdentityModalTransition.h; sourceTree = ""; }; - 6FF846A7221BF93F006FC3FC /* SRGIdentityModalTransition~ios.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "SRGIdentityModalTransition~ios.m"; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 0826662B216E2B7200FD8E84 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 6F0C98E32121E1C200073AB6 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 6F0EB52D20FC7F58009C02CF /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 6F8A93D520FDCA0800AA6434 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 6F8A940320FDD01B00AA6434 /* SRGIdentity.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 6FB74D642101D4D200E2D365 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 6FB74D6C2101D4D200E2D365 /* SRGIdentity.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 08266626216E2B1700FD8E84 /* TestApp */ = { - isa = PBXGroup; - children = ( - 08266629216E2B1700FD8E84 /* Info.plist */, - 08266628216E2B1700FD8E84 /* main.m */, - 0895B2E023368DF7009922C6 /* TestApp.xcconfig */, - ); - path = TestApp; - sourceTree = ""; - }; - 0829FA742136853C00FE0A28 /* Model */ = { - isa = PBXGroup; - children = ( - 0829FA752136853C00FE0A28 /* SRGAccount.h */, - 0829FA762136853C00FE0A28 /* SRGAccount.m */, - ); - path = Model; - sourceTree = ""; - }; - 0829FA792136853C00FE0A28 /* Categories */ = { - isa = PBXGroup; - children = ( - 0829FA7A2136853C00FE0A28 /* NSBundle+SRGIdentity.h */, - 0829FA7B2136853C00FE0A28 /* NSBundle+SRGIdentity.m */, - 0875854823A573FC00FA7207 /* UIImage+SRGIdentity.h */, - 0875854923A573FC00FA7207 /* UIImage+SRGIdentity.m */, - 6F979F3121F72A18002A2495 /* UIWindow+SRGIdentity.h */, - 6F979F3021F72A18002A2495 /* UIWindow+SRGIdentity.m */, - ); - path = Categories; - sourceTree = ""; - }; - 6F0EB52720FC7F58009C02CF = { - isa = PBXGroup; - children = ( - 6F0402F22331318700DA4D97 /* Common.xcconfig */, - 6F0EB53C20FC7FA9009C02CF /* Framework */, - 6FB74D722101D5D600E2D365 /* Tests */, - 6F8A93EE20FDCAA800AA6434 /* Demo */, - 6F8A945521006A9E00AA6434 /* Frameworks */, - 6F0EB53220FC7F58009C02CF /* Products */, - ); - sourceTree = ""; - }; - 6F0EB53220FC7F58009C02CF /* Products */ = { - isa = PBXGroup; - children = ( - 6F0EB53120FC7F58009C02CF /* SRGIdentity.framework */, - 6F8A93D820FDCA0800AA6434 /* SRGIdentity-demo.app */, - 6FB74D672101D4D200E2D365 /* SRGIdentity-tests.xctest */, - 6F0C98E62121E1C200073AB6 /* SRGIdentity.bundle */, - 0826662E216E2B7200FD8E84 /* SRGIdentity-testapp.app */, - ); - name = Products; - sourceTree = ""; - }; - 6F0EB53C20FC7FA9009C02CF /* Framework */ = { - isa = PBXGroup; - children = ( - 6F0EB53D20FC7FA9009C02CF /* Sources */, - 6FCBFEF6210B571C006BC355 /* Resources */, - 6F0EB53F20FC7FA9009C02CF /* Info.plist */, - 6F0402F3233131A000DA4D97 /* Framework.xcconfig */, - ); - path = Framework; - sourceTree = ""; - }; - 6F0EB53D20FC7FA9009C02CF /* Sources */ = { - isa = PBXGroup; - children = ( - 6FF8469F221BED95006FC3FC /* Browser */, - 0829FA792136853C00FE0A28 /* Categories */, - 6F9A1FD923A2712E002ECFC8 /* Login */, - 0829FA742136853C00FE0A28 /* Model */, - 0829FA772136853C00FE0A28 /* SRGIdentity.h */, - 0829FA782136853C00FE0A28 /* SRGIdentity.m */, - 086BB713216967220079483E /* SRGIdentityLogger.h */, - 080D0BD6213566C900AA519A /* SRGIdentityService.h */, - 080D0BD5213566C900AA519A /* SRGIdentityService.m */, - ); - path = Sources; - sourceTree = ""; - }; - 6F55003D237BCC04003476E2 /* Helpers */ = { - isa = PBXGroup; - children = ( - 6F55003E237BCC04003476E2 /* Resources.h */, - 6F55003F237BCC04003476E2 /* Resources.m */, - ); - path = Helpers; - sourceTree = ""; - }; - 6F75EA39222523870014B6DF /* Helpers */ = { - isa = PBXGroup; - children = ( - 6F75EA3B222523870014B6DF /* IdentityBaseTestCase.h */, - 6F75EA3A222523870014B6DF /* IdentityBaseTestCase.m */, - ); - path = Helpers; - sourceTree = ""; - }; - 6F8A93EE20FDCAA800AA6434 /* Demo */ = { - isa = PBXGroup; - children = ( - 6F8A93F220FDCAA800AA6434 /* Sources */, - 6F8A93EF20FDCAA800AA6434 /* Resources */, - 086FB33521380D9300DE4CF2 /* Info.plist */, - 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */, - ); - path = Demo; - sourceTree = ""; - }; - 6F8A93EF20FDCAA800AA6434 /* Resources */ = { - isa = PBXGroup; - children = ( - 6F8A93F120FDCAA800AA6434 /* Images.xcassets */, - 6F8A93F020FDCAA800AA6434 /* LaunchScreen~ios.storyboard */, - ); - path = Resources; - sourceTree = ""; - }; - 6F8A93F220FDCAA800AA6434 /* Sources */ = { - isa = PBXGroup; - children = ( - 6F8A93F320FDCAA800AA6434 /* Application */, - 6F8A93F720FDCAA800AA6434 /* Demos */, - 6F55003D237BCC04003476E2 /* Helpers */, - ); - path = Sources; - sourceTree = ""; - }; - 6F8A93F320FDCAA800AA6434 /* Application */ = { - isa = PBXGroup; - children = ( - 6F8A93F420FDCAA800AA6434 /* AppDelegate.h */, - 6F8A93F620FDCAA800AA6434 /* AppDelegate.m */, - 6FCE030E23F5C17A0072EBC4 /* Application.h */, - 6FCE030F23F5C17A0072EBC4 /* Application.m */, - 6F8A93F520FDCAA800AA6434 /* main.m */, - 6FE1AAF323ABAB92000266B4 /* SceneDelegate.h */, - 6FE1AAF423ABAB92000266B4 /* SceneDelegate.m */, - ); - path = Application; - sourceTree = ""; - }; - 6F8A93F720FDCAA800AA6434 /* Demos */ = { - isa = PBXGroup; - children = ( - 6F8A93F820FDCAA800AA6434 /* DemosViewController.h */, - 6F8A93F920FDCAA800AA6434 /* DemosViewController.m */, - 6F8A940120FDCBA600AA6434 /* DemosViewController~ios.storyboard */, - 6F55003B237BCB02003476E2 /* DemosViewController~tvos.storyboard */, - ); - path = Demos; - sourceTree = ""; - }; - 6F8A945521006A9E00AA6434 /* Frameworks */ = { - isa = PBXGroup; - children = ( - 6F6ED0FF216BA9D800D7E786 /* FXReachability.framework */, - 080D0BE021356CB500AA519A /* libextobjc.framework */, - 080D0BE121356CB500AA519A /* MAKVONotificationCenter.framework */, - 080D0BE42135776000AA519A /* Mantle.framework */, - 08266651216E354000FD8E84 /* OHHTTPStubs.framework */, - 080D0BEE2135A6DD00AA519A /* SafariServices.framework */, - 6FC7C5A423A3A6D70058349C /* SRGAppearance.framework */, - 084CD6FE21696C0A00905A38 /* SRGLogger.framework */, - 6F9FFAAB2167924E00F781A0 /* SRGNetwork.framework */, - 080D0BD921356A1200AA519A /* UICKeyChainStore.framework */, - 086FB2CA21368ADE00DE4CF2 /* WebKit.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; - 6F9A1FD923A2712E002ECFC8 /* Login */ = { - isa = PBXGroup; - children = ( - 6F9A1FDA23A27153002ECFC8 /* SRGIdentityLoginViewController.h */, - 6F9A1FDB23A27153002ECFC8 /* SRGIdentityLoginViewController~tvos.m */, - 6F9A1FDE23A27193002ECFC8 /* SRGIdentityLoginViewController~tvos.storyboard */, - ); - path = Login; - sourceTree = ""; - }; - 6FB74D722101D5D600E2D365 /* Tests */ = { - isa = PBXGroup; - children = ( - 6FB74D732101D5D600E2D365 /* Sources */, - 08266626216E2B1700FD8E84 /* TestApp */, - 6FB74D762101D5D600E2D365 /* Info.plist */, - 6F0402F5233131C600DA4D97 /* Tests.xcconfig */, - ); - path = Tests; - sourceTree = SOURCE_ROOT; - }; - 6FB74D732101D5D600E2D365 /* Sources */ = { - isa = PBXGroup; - children = ( - 6F75EA39222523870014B6DF /* Helpers */, - 6FB74D742101D5D600E2D365 /* IdentityServiceTestCase.m */, - ); - path = Sources; - sourceTree = ""; - }; - 6FCBFEF6210B571C006BC355 /* Resources */ = { - isa = PBXGroup; - children = ( - 6FC7C5A223A3A13E0058349C /* Images.xcassets */, - 083FBD9D217A84D60025253D /* Info.plist */, - 6F19DA7D221DF6E100085C7D /* Localizable.strings */, - ); - path = Resources; - sourceTree = ""; - }; - 6FF8469F221BED95006FC3FC /* Browser */ = { - isa = PBXGroup; - children = ( - 6FF846A6221BF93F006FC3FC /* SRGIdentityModalTransition.h */, - 6FF846A7221BF93F006FC3FC /* SRGIdentityModalTransition~ios.m */, - 6FCBBD58221DB644003CE752 /* SRGIdentityNavigationController.h */, - 6FCBBD59221DB644003CE752 /* SRGIdentityNavigationController~ios.m */, - 6FF846A2221BED95006FC3FC /* SRGIdentityWebViewController.h */, - 6FF846A0221BED95006FC3FC /* SRGIdentityWebViewController~ios.m */, - 6FF846A1221BED95006FC3FC /* SRGIdentityWebViewController~ios.storyboard */, - ); - path = Browser; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - 6F0EB52E20FC7F58009C02CF /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 6FCBBD5A221DB644003CE752 /* SRGIdentityNavigationController.h in Headers */, - 6FF846A8221BF93F006FC3FC /* SRGIdentityModalTransition.h in Headers */, - 6FF846A5221BED95006FC3FC /* SRGIdentityWebViewController.h in Headers */, - 0829FA7C2136853C00FE0A28 /* SRGAccount.h in Headers */, - 0829FA802136853C00FE0A28 /* NSBundle+SRGIdentity.h in Headers */, - 6F979F3321F72A18002A2495 /* UIWindow+SRGIdentity.h in Headers */, - 6F9A1FDC23A27153002ECFC8 /* SRGIdentityLoginViewController.h in Headers */, - 0875854A23A573FC00FA7207 /* UIImage+SRGIdentity.h in Headers */, - 0829FA7E2136853C00FE0A28 /* SRGIdentity.h in Headers */, - 080D0BD8213566C900AA519A /* SRGIdentityService.h in Headers */, - 086BB714216967220079483E /* SRGIdentityLogger.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 0826662D216E2B7200FD8E84 /* SRGIdentity-testapp */ = { - isa = PBXNativeTarget; - buildConfigurationList = 08266641216E2B7400FD8E84 /* Build configuration list for PBXNativeTarget "SRGIdentity-testapp" */; - buildPhases = ( - 0826662A216E2B7200FD8E84 /* Sources */, - 0826662B216E2B7200FD8E84 /* Frameworks */, - 0826662C216E2B7200FD8E84 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "SRGIdentity-testapp"; - productName = "SRGIdentity-testapp"; - productReference = 0826662E216E2B7200FD8E84 /* SRGIdentity-testapp.app */; - productType = "com.apple.product-type.application"; - }; - 6F0C98E52121E1C200073AB6 /* SRGIdentity-resources */ = { - isa = PBXNativeTarget; - buildConfigurationList = 6F0C98E92121E1C200073AB6 /* Build configuration list for PBXNativeTarget "SRGIdentity-resources" */; - buildPhases = ( - 6F0C98E22121E1C200073AB6 /* Sources */, - 6F0C98E32121E1C200073AB6 /* Frameworks */, - 6F0C98E42121E1C200073AB6 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "SRGIdentity-resources"; - productName = "SRGIdentity-resources"; - productReference = 6F0C98E62121E1C200073AB6 /* SRGIdentity.bundle */; - productType = "com.apple.product-type.bundle"; - }; - 6F0EB53020FC7F58009C02CF /* SRGIdentity */ = { - isa = PBXNativeTarget; - buildConfigurationList = 6F0EB53920FC7F58009C02CF /* Build configuration list for PBXNativeTarget "SRGIdentity" */; - buildPhases = ( - 6F0EB52C20FC7F58009C02CF /* Sources */, - 6F0EB52D20FC7F58009C02CF /* Frameworks */, - 6F0EB52E20FC7F58009C02CF /* Headers */, - 6F0EB52F20FC7F58009C02CF /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 6F0C98F02121E26400073AB6 /* PBXTargetDependency */, - ); - name = SRGIdentity; - productName = SRGIdentity; - productReference = 6F0EB53120FC7F58009C02CF /* SRGIdentity.framework */; - productType = "com.apple.product-type.framework"; - }; - 6F8A93D720FDCA0800AA6434 /* SRGIdentity-demo */ = { - isa = PBXNativeTarget; - buildConfigurationList = 6F8A93EB20FDCA0900AA6434 /* Build configuration list for PBXNativeTarget "SRGIdentity-demo" */; - buildPhases = ( - 6F8A93D420FDCA0800AA6434 /* Sources */, - 6F8A93D520FDCA0800AA6434 /* Frameworks */, - 6F8A93D620FDCA0800AA6434 /* Resources */, - 6F8A940720FDD01B00AA6434 /* Embed Frameworks */, - 6F0402F72331338A00DA4D97 /* Copy Frameworks (Carthage) */, - ); - buildRules = ( - ); - dependencies = ( - 6F8A940620FDD01B00AA6434 /* PBXTargetDependency */, - ); - name = "SRGIdentity-demo"; - productName = "SRGIdentity-demo1"; - productReference = 6F8A93D820FDCA0800AA6434 /* SRGIdentity-demo.app */; - productType = "com.apple.product-type.application"; - }; - 6FB74D662101D4D200E2D365 /* SRGIdentity-tests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 6FB74D712101D4D200E2D365 /* Build configuration list for PBXNativeTarget "SRGIdentity-tests" */; - buildPhases = ( - 6FB74D632101D4D200E2D365 /* Sources */, - 6FB74D642101D4D200E2D365 /* Frameworks */, - 6FB74D652101D4D200E2D365 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 6FB74D6E2101D4D200E2D365 /* PBXTargetDependency */, - 08266648216E2BFA00FD8E84 /* PBXTargetDependency */, - ); - name = "SRGIdentity-tests"; - productName = "SRGIdentity-tests"; - productReference = 6FB74D672101D4D200E2D365 /* SRGIdentity-tests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 6F0EB52820FC7F58009C02CF /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 1100; - ORGANIZATIONNAME = "SRG SSR"; - TargetAttributes = { - 0826662D216E2B7200FD8E84 = { - CreatedOnToolsVersion = 10.0; - }; - 6F0C98E52121E1C200073AB6 = { - CreatedOnToolsVersion = 9.4; - }; - 6F0EB53020FC7F58009C02CF = { - CreatedOnToolsVersion = 9.4; - }; - 6F8A93D720FDCA0800AA6434 = { - CreatedOnToolsVersion = 9.4; - SystemCapabilities = { - com.apple.Keychain = { - enabled = 1; - }; - }; - }; - 6FB74D662101D4D200E2D365 = { - CreatedOnToolsVersion = 9.4; - TestTargetID = 0826662D216E2B7200FD8E84; - }; - }; - }; - buildConfigurationList = 6F0EB52B20FC7F58009C02CF /* Build configuration list for PBXProject "SRGIdentity" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - it, - de, - fr, - rm, - ); - mainGroup = 6F0EB52720FC7F58009C02CF; - productRefGroup = 6F0EB53220FC7F58009C02CF /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 6F0EB53020FC7F58009C02CF /* SRGIdentity */, - 6F0C98E52121E1C200073AB6 /* SRGIdentity-resources */, - 6F8A93D720FDCA0800AA6434 /* SRGIdentity-demo */, - 6FB74D662101D4D200E2D365 /* SRGIdentity-tests */, - 0826662D216E2B7200FD8E84 /* SRGIdentity-testapp */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 0826662C216E2B7200FD8E84 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 6F0C98E42121E1C200073AB6 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 6FCBBD57221D8E95003CE752 /* SRGIdentityWebViewController~ios.storyboard in Resources */, - 6FC7C5A323A3A13E0058349C /* Images.xcassets in Resources */, - 6F9A1FE023A27199002ECFC8 /* SRGIdentityLoginViewController~tvos.storyboard in Resources */, - 6F19DA7F221DF6E100085C7D /* Localizable.strings in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 6F0EB52F20FC7F58009C02CF /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 6F0C98F12121E26A00073AB6 /* SRGIdentity.bundle in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 6F8A93D620FDCA0800AA6434 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 6F8A93FB20FDCAA800AA6434 /* LaunchScreen~ios.storyboard in Resources */, - 6F55003C237BCB02003476E2 /* DemosViewController~tvos.storyboard in Resources */, - 6F8A940220FDCBA600AA6434 /* DemosViewController~ios.storyboard in Resources */, - 6F8A93FC20FDCAA800AA6434 /* Images.xcassets in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 6FB74D652101D4D200E2D365 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 6F0402F72331338A00DA4D97 /* Copy Frameworks (Carthage) */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "$(SRCROOT)/Carthage/Build/$(CARTHAGE_PLATFORM)/FXReachability.framework", - "$(SRCROOT)/Carthage/Build/$(CARTHAGE_PLATFORM)/libextobjc.framework", - "$(SRCROOT)/Carthage/Build/$(CARTHAGE_PLATFORM)/MAKVONotificationCenter.framework", - "$(SRCROOT)/Carthage/Build/$(CARTHAGE_PLATFORM)/Mantle.framework", - "$(SRCROOT)/Carthage/Build/$(CARTHAGE_PLATFORM)/SRGAppearance.framework", - "$(SRCROOT)/Carthage/Build/$(CARTHAGE_PLATFORM)/SRGLogger.framework", - "$(SRCROOT)/Carthage/Build/$(CARTHAGE_PLATFORM)/SRGNetwork.framework", - "$(SRCROOT)/Carthage/Build/$(CARTHAGE_PLATFORM)/UICKeyChainStore.framework", - ); - name = "Copy Frameworks (Carthage)"; - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "/usr/local/bin/carthage copy-frameworks\n"; - }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 0826662A216E2B7200FD8E84 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 08266646216E2B9D00FD8E84 /* main.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 6F0C98E22121E1C200073AB6 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 6F0EB52C20FC7F58009C02CF /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 0875854B23A573FC00FA7207 /* UIImage+SRGIdentity.m in Sources */, - 6FF846A9221BF93F006FC3FC /* SRGIdentityModalTransition~ios.m in Sources */, - 6F9A1FDD23A27153002ECFC8 /* SRGIdentityLoginViewController~tvos.m in Sources */, - 080D0BD7213566C900AA519A /* SRGIdentityService.m in Sources */, - 6FCBBD5B221DB644003CE752 /* SRGIdentityNavigationController~ios.m in Sources */, - 6FF846A3221BED95006FC3FC /* SRGIdentityWebViewController~ios.m in Sources */, - 0829FA7F2136853C00FE0A28 /* SRGIdentity.m in Sources */, - 6F979F3221F72A18002A2495 /* UIWindow+SRGIdentity.m in Sources */, - 0829FA812136853C00FE0A28 /* NSBundle+SRGIdentity.m in Sources */, - 0829FA7D2136853C00FE0A28 /* SRGAccount.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 6F8A93D420FDCA0800AA6434 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 6FCE031023F5C17A0072EBC4 /* Application.m in Sources */, - 6F8A93FE20FDCAA800AA6434 /* AppDelegate.m in Sources */, - 6F550040237BCC04003476E2 /* Resources.m in Sources */, - 6FE1AAF523ABAB92000266B4 /* SceneDelegate.m in Sources */, - 6F8A93FD20FDCAA800AA6434 /* main.m in Sources */, - 6F8A93FF20FDCAA800AA6434 /* DemosViewController.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 6FB74D632101D4D200E2D365 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 6F75EA3C222523870014B6DF /* IdentityBaseTestCase.m in Sources */, - 6FB74D772101D5D600E2D365 /* IdentityServiceTestCase.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 08266648216E2BFA00FD8E84 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 0826662D216E2B7200FD8E84 /* SRGIdentity-testapp */; - targetProxy = 08266647216E2BFA00FD8E84 /* PBXContainerItemProxy */; - }; - 6F0C98F02121E26400073AB6 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 6F0C98E52121E1C200073AB6 /* SRGIdentity-resources */; - targetProxy = 085342262163CDBB00E2EEE6 /* PBXContainerItemProxy */; - }; - 6F8A940620FDD01B00AA6434 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 6F0EB53020FC7F58009C02CF /* SRGIdentity */; - targetProxy = 085342272163CDBB00E2EEE6 /* PBXContainerItemProxy */; - }; - 6FB74D6E2101D4D200E2D365 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 6F0EB53020FC7F58009C02CF /* SRGIdentity */; - targetProxy = 085342282163CDBC00E2EEE6 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 6F19DA7D221DF6E100085C7D /* Localizable.strings */ = { - isa = PBXVariantGroup; - children = ( - 6F19DA7E221DF6E100085C7D /* de */, - 6F19DA80221DF6E900085C7D /* en */, - 6F19DA81221DF71300085C7D /* fr */, - 6F19DA82221DF71A00085C7D /* it */, - 6F19DA83221DF72000085C7D /* rm */, - ); - name = Localizable.strings; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 08266642216E2B7400FD8E84 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 0895B2E023368DF7009922C6 /* TestApp.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - DEVELOPMENT_TEAM = VMGRRW6SG7; - INFOPLIST_FILE = Tests/TestApp/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-testapp"; - SDKROOT = iphoneos; - }; - name = Debug; - }; - 08266643216E2B7400FD8E84 /* Debug-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 0895B2E023368DF7009922C6 /* TestApp.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - DEVELOPMENT_TEAM = VMGRRW6SG7; - INFOPLIST_FILE = Tests/TestApp/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-testapp"; - SDKROOT = iphoneos; - }; - name = "Debug-static"; - }; - 08266644216E2B7400FD8E84 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 0895B2E023368DF7009922C6 /* TestApp.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - DEVELOPMENT_TEAM = VMGRRW6SG7; - INFOPLIST_FILE = Tests/TestApp/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-testapp"; - SDKROOT = iphoneos; - }; - name = Release; - }; - 08266645216E2B7400FD8E84 /* Release-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 0895B2E023368DF7009922C6 /* TestApp.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - DEVELOPMENT_TEAM = VMGRRW6SG7; - INFOPLIST_FILE = Tests/TestApp/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-testapp"; - SDKROOT = iphoneos; - }; - name = "Release-static"; - }; - 6F0C98DA2121E14000073AB6 /* Debug-static */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "Apple Development"; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = dwarf; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = "Debug-static"; - }; - 6F0C98DB2121E14000073AB6 /* Debug-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F3233131A000DA4D97 /* Framework.xcconfig */; - buildSettings = { - CLANG_ENABLE_CODE_COVERAGE = NO; - DEFINES_MODULE = YES; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)/Static", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MACH_O_TYPE = staticlib; - PRODUCT_BUNDLE_IDENTIFIER = ch.srgssr.SRGIdentity; - SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Debug-static"; - }; - 6F0C98DC2121E14000073AB6 /* Debug-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)"; - DEVELOPMENT_TEAM = VMGRRW6SG7; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)", - ); - INFOPLIST_FILE = Demo/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-demo"; - SDKROOT = iphoneos; - }; - name = "Debug-static"; - }; - 6F0C98DD2121E14000073AB6 /* Debug-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F5233131C600DA4D97 /* Tests.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - CODE_SIGN_IDENTITY = "-"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)", - ); - INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - "$(FRAMEWORK_SEARCH_PATHS)", - ); - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SRGIdentity-testapp.app/SRGIdentity-testapp"; - }; - name = "Debug-static"; - }; - 6F0C98DE2121E14600073AB6 /* Release-static */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "Apple Development"; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - VALIDATE_PRODUCT = YES; - }; - name = "Release-static"; - }; - 6F0C98DF2121E14600073AB6 /* Release-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F3233131A000DA4D97 /* Framework.xcconfig */; - buildSettings = { - CLANG_ENABLE_CODE_COVERAGE = NO; - DEFINES_MODULE = YES; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)/Static", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MACH_O_TYPE = staticlib; - PRODUCT_BUNDLE_IDENTIFIER = ch.srgssr.SRGIdentity; - SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Release-static"; - }; - 6F0C98E02121E14600073AB6 /* Release-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)"; - DEVELOPMENT_TEAM = VMGRRW6SG7; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)", - ); - INFOPLIST_FILE = Demo/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-demo"; - SDKROOT = iphoneos; - }; - name = "Release-static"; - }; - 6F0C98E12121E14600073AB6 /* Release-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F5233131C600DA4D97 /* Tests.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - CODE_SIGN_IDENTITY = "-"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)", - ); - INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - "$(FRAMEWORK_SEARCH_PATHS)", - ); - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SRGIdentity-testapp.app/SRGIdentity-testapp"; - }; - name = "Release-static"; - }; - 6F0C98EA2121E1C200073AB6 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F3233131A000DA4D97 /* Framework.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "-"; - INFOPLIST_FILE = Framework/Resources/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-resources"; - PRODUCT_NAME = SRGIdentity; - SKIP_INSTALL = YES; - WRAPPER_EXTENSION = bundle; - }; - name = Debug; - }; - 6F0C98EB2121E1C200073AB6 /* Debug-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F3233131A000DA4D97 /* Framework.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "-"; - INFOPLIST_FILE = Framework/Resources/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-resources"; - PRODUCT_NAME = SRGIdentity; - SKIP_INSTALL = YES; - WRAPPER_EXTENSION = bundle; - }; - name = "Debug-static"; - }; - 6F0C98EC2121E1C200073AB6 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F3233131A000DA4D97 /* Framework.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "-"; - INFOPLIST_FILE = Framework/Resources/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-resources"; - PRODUCT_NAME = SRGIdentity; - SKIP_INSTALL = YES; - WRAPPER_EXTENSION = bundle; - }; - name = Release; - }; - 6F0C98ED2121E1C200073AB6 /* Release-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F3233131A000DA4D97 /* Framework.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "-"; - INFOPLIST_FILE = Framework/Resources/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-resources"; - PRODUCT_NAME = SRGIdentity; - SKIP_INSTALL = YES; - WRAPPER_EXTENSION = bundle; - }; - name = "Release-static"; - }; - 6F0EB53720FC7F58009C02CF /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "Apple Development"; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = dwarf; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 6F0EB53820FC7F58009C02CF /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "Apple Development"; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 6F0EB53A20FC7F58009C02CF /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F3233131A000DA4D97 /* Framework.xcconfig */; - buildSettings = { - DEFINES_MODULE = YES; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = ch.srgssr.SRGIdentity; - SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Debug; - }; - 6F0EB53B20FC7F58009C02CF /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F3233131A000DA4D97 /* Framework.xcconfig */; - buildSettings = { - DEFINES_MODULE = YES; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = ch.srgssr.SRGIdentity; - SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Release; - }; - 6F8A93EC20FDCA0900AA6434 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)"; - DEVELOPMENT_TEAM = VMGRRW6SG7; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)", - ); - INFOPLIST_FILE = Demo/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-demo"; - SDKROOT = iphoneos; - }; - name = Debug; - }; - 6F8A93ED20FDCA0900AA6434 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)"; - DEVELOPMENT_TEAM = VMGRRW6SG7; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)", - ); - INFOPLIST_FILE = Demo/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-demo"; - SDKROOT = iphoneos; - }; - name = Release; - }; - 6FB74D6F2101D4D200E2D365 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F5233131C600DA4D97 /* Tests.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - CODE_SIGN_IDENTITY = "-"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)", - ); - INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - "$(FRAMEWORK_SEARCH_PATHS)", - ); - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SRGIdentity-testapp.app/SRGIdentity-testapp"; - }; - name = Debug; - }; - 6FB74D702101D4D200E2D365 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F5233131C600DA4D97 /* Tests.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - CODE_SIGN_IDENTITY = "-"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)", - ); - INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - "$(FRAMEWORK_SEARCH_PATHS)", - ); - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SRGIdentity-testapp.app/SRGIdentity-testapp"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 08266641216E2B7400FD8E84 /* Build configuration list for PBXNativeTarget "SRGIdentity-testapp" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 08266642216E2B7400FD8E84 /* Debug */, - 08266643216E2B7400FD8E84 /* Debug-static */, - 08266644216E2B7400FD8E84 /* Release */, - 08266645216E2B7400FD8E84 /* Release-static */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 6F0C98E92121E1C200073AB6 /* Build configuration list for PBXNativeTarget "SRGIdentity-resources" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 6F0C98EA2121E1C200073AB6 /* Debug */, - 6F0C98EB2121E1C200073AB6 /* Debug-static */, - 6F0C98EC2121E1C200073AB6 /* Release */, - 6F0C98ED2121E1C200073AB6 /* Release-static */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 6F0EB52B20FC7F58009C02CF /* Build configuration list for PBXProject "SRGIdentity" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 6F0EB53720FC7F58009C02CF /* Debug */, - 6F0C98DA2121E14000073AB6 /* Debug-static */, - 6F0EB53820FC7F58009C02CF /* Release */, - 6F0C98DE2121E14600073AB6 /* Release-static */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 6F0EB53920FC7F58009C02CF /* Build configuration list for PBXNativeTarget "SRGIdentity" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 6F0EB53A20FC7F58009C02CF /* Debug */, - 6F0C98DB2121E14000073AB6 /* Debug-static */, - 6F0EB53B20FC7F58009C02CF /* Release */, - 6F0C98DF2121E14600073AB6 /* Release-static */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 6F8A93EB20FDCA0900AA6434 /* Build configuration list for PBXNativeTarget "SRGIdentity-demo" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 6F8A93EC20FDCA0900AA6434 /* Debug */, - 6F0C98DC2121E14000073AB6 /* Debug-static */, - 6F8A93ED20FDCA0900AA6434 /* Release */, - 6F0C98E02121E14600073AB6 /* Release-static */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 6FB74D712101D4D200E2D365 /* Build configuration list for PBXNativeTarget "SRGIdentity-tests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 6FB74D6F2101D4D200E2D365 /* Debug */, - 6F0C98DD2121E14000073AB6 /* Debug-static */, - 6FB74D702101D4D200E2D365 /* Release */, - 6F0C98E12121E14600073AB6 /* Release-static */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 6F0EB52820FC7F58009C02CF /* Project object */; -} diff --git a/SRGIdentity.xcodeproj/xcshareddata/xcschemes/SRGIdentity.xcscheme b/SRGIdentity.xcodeproj/xcshareddata/xcschemes/SRGIdentity.xcscheme deleted file mode 100644 index f40170f..0000000 --- a/SRGIdentity.xcodeproj/xcshareddata/xcschemes/SRGIdentity.xcscheme +++ /dev/null @@ -1,112 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Framework/Sources/Categories/NSBundle+SRGIdentity.h b/Sources/SRGIdentity/NSBundle+SRGIdentity.h similarity index 95% rename from Framework/Sources/Categories/NSBundle+SRGIdentity.h rename to Sources/SRGIdentity/NSBundle+SRGIdentity.h index 982543c..15b8310 100644 --- a/Framework/Sources/Categories/NSBundle+SRGIdentity.h +++ b/Sources/SRGIdentity/NSBundle+SRGIdentity.h @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import Foundation; NS_ASSUME_NONNULL_BEGIN diff --git a/Framework/Sources/Categories/NSBundle+SRGIdentity.m b/Sources/SRGIdentity/NSBundle+SRGIdentity.m similarity index 100% rename from Framework/Sources/Categories/NSBundle+SRGIdentity.m rename to Sources/SRGIdentity/NSBundle+SRGIdentity.m diff --git a/Framework/Resources/Images.xcassets/Contents.json b/Sources/SRGIdentity/Resources/Images.xcassets/Contents.json similarity index 100% rename from Framework/Resources/Images.xcassets/Contents.json rename to Sources/SRGIdentity/Resources/Images.xcassets/Contents.json diff --git a/Framework/Resources/Images.xcassets/service_logo.imageset/Contents.json b/Sources/SRGIdentity/Resources/Images.xcassets/service_logo.imageset/Contents.json similarity index 100% rename from Framework/Resources/Images.xcassets/service_logo.imageset/Contents.json rename to Sources/SRGIdentity/Resources/Images.xcassets/service_logo.imageset/Contents.json diff --git a/Framework/Resources/Images.xcassets/service_logo.imageset/identity_service_logo.pdf b/Sources/SRGIdentity/Resources/Images.xcassets/service_logo.imageset/identity_service_logo.pdf similarity index 100% rename from Framework/Resources/Images.xcassets/service_logo.imageset/identity_service_logo.pdf rename to Sources/SRGIdentity/Resources/Images.xcassets/service_logo.imageset/identity_service_logo.pdf diff --git a/Framework/Resources/de.lproj/Localizable.strings b/Sources/SRGIdentity/Resources/de.lproj/Localizable.strings similarity index 100% rename from Framework/Resources/de.lproj/Localizable.strings rename to Sources/SRGIdentity/Resources/de.lproj/Localizable.strings diff --git a/Framework/Resources/en.lproj/Localizable.strings b/Sources/SRGIdentity/Resources/en.lproj/Localizable.strings similarity index 100% rename from Framework/Resources/en.lproj/Localizable.strings rename to Sources/SRGIdentity/Resources/en.lproj/Localizable.strings diff --git a/Framework/Resources/fr.lproj/Localizable.strings b/Sources/SRGIdentity/Resources/fr.lproj/Localizable.strings similarity index 100% rename from Framework/Resources/fr.lproj/Localizable.strings rename to Sources/SRGIdentity/Resources/fr.lproj/Localizable.strings diff --git a/Framework/Resources/it.lproj/Localizable.strings b/Sources/SRGIdentity/Resources/it.lproj/Localizable.strings similarity index 100% rename from Framework/Resources/it.lproj/Localizable.strings rename to Sources/SRGIdentity/Resources/it.lproj/Localizable.strings diff --git a/Framework/Resources/rm.lproj/Localizable.strings b/Sources/SRGIdentity/Resources/rm.lproj/Localizable.strings similarity index 100% rename from Framework/Resources/rm.lproj/Localizable.strings rename to Sources/SRGIdentity/Resources/rm.lproj/Localizable.strings diff --git a/Framework/Sources/Model/SRGAccount.m b/Sources/SRGIdentity/SRGAccount.m similarity index 99% rename from Framework/Sources/Model/SRGAccount.m rename to Sources/SRGIdentity/SRGAccount.m index 562378f..298313e 100644 --- a/Framework/Sources/Model/SRGAccount.m +++ b/Sources/SRGIdentity/SRGAccount.m @@ -6,7 +6,7 @@ #import "SRGAccount.h" -#import +@import libextobjc; @interface SRGAccount () diff --git a/Framework/Sources/SRGIdentity.m b/Sources/SRGIdentity/SRGIdentity.m similarity index 100% rename from Framework/Sources/SRGIdentity.m rename to Sources/SRGIdentity/SRGIdentity.m diff --git a/Framework/Sources/SRGIdentityLogger.h b/Sources/SRGIdentity/SRGIdentityLogger.h similarity index 95% rename from Framework/Sources/SRGIdentityLogger.h rename to Sources/SRGIdentity/SRGIdentityLogger.h index 46d0beb..55e4bf8 100644 --- a/Framework/Sources/SRGIdentityLogger.h +++ b/Sources/SRGIdentity/SRGIdentityLogger.h @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import SRGLogger; /** * Helper macros for logging. diff --git a/Framework/Sources/Login/SRGIdentityLoginViewController.h b/Sources/SRGIdentity/SRGIdentityLoginViewController.h similarity index 97% rename from Framework/Sources/Login/SRGIdentityLoginViewController.h rename to Sources/SRGIdentity/SRGIdentityLoginViewController.h index a39e00e..4b6b6a9 100644 --- a/Framework/Sources/Login/SRGIdentityLoginViewController.h +++ b/Sources/SRGIdentity/SRGIdentityLoginViewController.h @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import UIKit; NS_ASSUME_NONNULL_BEGIN diff --git a/Framework/Sources/Login/SRGIdentityLoginViewController~tvos.m b/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m similarity index 98% rename from Framework/Sources/Login/SRGIdentityLoginViewController~tvos.m rename to Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m index ce9f575..a197216 100644 --- a/Framework/Sources/Login/SRGIdentityLoginViewController~tvos.m +++ b/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m @@ -4,13 +4,17 @@ // License information is available from the LICENSE file. // +#import + +#if TARGET_OS_TV + #import "SRGIdentityLoginViewController.h" #import "NSBundle+SRGIdentity.h" #import "UIImage+SRGIdentity.h" -#import -#import +@import SRGAppearance; +@import SRGNetwork; @interface SRGIdentityLoginViewController () @@ -191,3 +195,5 @@ - (IBAction)login:(id)sender } @end + +#endif diff --git a/Framework/Sources/Login/SRGIdentityLoginViewController~tvos.storyboard b/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.storyboard similarity index 100% rename from Framework/Sources/Login/SRGIdentityLoginViewController~tvos.storyboard rename to Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.storyboard diff --git a/Framework/Sources/Browser/SRGIdentityModalTransition.h b/Sources/SRGIdentity/SRGIdentityModalTransition.h similarity index 97% rename from Framework/Sources/Browser/SRGIdentityModalTransition.h rename to Sources/SRGIdentity/SRGIdentityModalTransition.h index 0bb09b0..2524b70 100644 --- a/Framework/Sources/Browser/SRGIdentityModalTransition.h +++ b/Sources/SRGIdentity/SRGIdentityModalTransition.h @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import UIKit; NS_ASSUME_NONNULL_BEGIN diff --git a/Framework/Sources/Browser/SRGIdentityModalTransition~ios.m b/Sources/SRGIdentity/SRGIdentityModalTransition~ios.m similarity index 99% rename from Framework/Sources/Browser/SRGIdentityModalTransition~ios.m rename to Sources/SRGIdentity/SRGIdentityModalTransition~ios.m index d6fc5e4..2435d45 100644 --- a/Framework/Sources/Browser/SRGIdentityModalTransition~ios.m +++ b/Sources/SRGIdentity/SRGIdentityModalTransition~ios.m @@ -4,6 +4,10 @@ // License information is available from the LICENSE file. // +#import + +#if TARGET_OS_IOS + #import "SRGIdentityModalTransition.h" // For implementation details, see @@ -205,3 +209,5 @@ - (UIViewAnimationCurve)completionCurve } @end + +#endif diff --git a/Framework/Sources/Browser/SRGIdentityNavigationController.h b/Sources/SRGIdentity/SRGIdentityNavigationController.h similarity index 94% rename from Framework/Sources/Browser/SRGIdentityNavigationController.h rename to Sources/SRGIdentity/SRGIdentityNavigationController.h index a96e0ab..1f6165e 100644 --- a/Framework/Sources/Browser/SRGIdentityNavigationController.h +++ b/Sources/SRGIdentity/SRGIdentityNavigationController.h @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import UIKit; NS_ASSUME_NONNULL_BEGIN diff --git a/Framework/Sources/Browser/SRGIdentityNavigationController~ios.m b/Sources/SRGIdentity/SRGIdentityNavigationController~ios.m similarity index 98% rename from Framework/Sources/Browser/SRGIdentityNavigationController~ios.m rename to Sources/SRGIdentity/SRGIdentityNavigationController~ios.m index b2e5aac..d953d75 100644 --- a/Framework/Sources/Browser/SRGIdentityNavigationController~ios.m +++ b/Sources/SRGIdentity/SRGIdentityNavigationController~ios.m @@ -4,6 +4,10 @@ // License information is available from the LICENSE file. // +#import + +#if TARGET_OS_IOS + #import "SRGIdentityNavigationController.h" #import "SRGIdentityModalTransition.h" @@ -130,5 +134,6 @@ - (void)pullBack:(UIPanGestureRecognizer *)panGestureRecognizer } } - @end + +#endif diff --git a/Framework/Sources/SRGIdentityService.m b/Sources/SRGIdentity/SRGIdentityService.m similarity index 99% rename from Framework/Sources/SRGIdentityService.m rename to Sources/SRGIdentity/SRGIdentityService.m index 69c3910..b043f19 100644 --- a/Framework/Sources/SRGIdentityService.m +++ b/Sources/SRGIdentity/SRGIdentityService.m @@ -17,16 +17,17 @@ #import "SRGIdentityWebViewController.h" #endif -#import -#import -#import +@import AuthenticationServices; +@import FXReachability; +@import libextobjc; +@import SRGNetwork; +@import UICKeyChainStore; +@import UIKit; + #import -#import -#import -#import #if TARGET_OS_IOS -#import +@import SafariServices; #endif static SRGIdentityService *s_currentIdentityService; diff --git a/Framework/Sources/Browser/SRGIdentityWebViewController.h b/Sources/SRGIdentity/SRGIdentityWebViewController.h similarity index 84% rename from Framework/Sources/Browser/SRGIdentityWebViewController.h rename to Sources/SRGIdentity/SRGIdentityWebViewController.h index 2088dc7..7f7b6ec 100644 --- a/Framework/Sources/Browser/SRGIdentityWebViewController.h +++ b/Sources/SRGIdentity/SRGIdentityWebViewController.h @@ -4,14 +4,16 @@ // License information is available from the LICENSE file. // -#import +#import + +#if TARGET_OS_IOS +@import WebKit; NS_ASSUME_NONNULL_BEGIN /** * A basic web view controller class for in-app display. */ -API_UNAVAILABLE(tvos) @interface SRGIdentityWebViewController : UIViewController /** @@ -24,3 +26,11 @@ API_UNAVAILABLE(tvos) @end NS_ASSUME_NONNULL_END + +#else + +API_UNAVAILABLE(tvos) +@interface SRGIdentityWebViewController : UIViewController +@end + +#endif diff --git a/Framework/Sources/Browser/SRGIdentityWebViewController~ios.m b/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m similarity index 98% rename from Framework/Sources/Browser/SRGIdentityWebViewController~ios.m rename to Sources/SRGIdentity/SRGIdentityWebViewController~ios.m index cafebf0..556530d 100644 --- a/Framework/Sources/Browser/SRGIdentityWebViewController~ios.m +++ b/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m @@ -4,14 +4,18 @@ // License information is available from the LICENSE file. // +#import + +#if TARGET_OS_IOS + #import "SRGIdentityWebViewController.h" #import "NSBundle+SRGIdentity.h" #import "SRGIdentityModalTransition.h" -#import -#import -#import +@import libextobjc; +@import MAKVONotificationCenter; +@import SRGNetwork; @interface SRGIdentityWebViewController () @@ -213,3 +217,5 @@ - (void)refresh:(id)sender } @end + +#endif diff --git a/Framework/Sources/Browser/SRGIdentityWebViewController~ios.storyboard b/Sources/SRGIdentity/SRGIdentityWebViewController~ios.storyboard similarity index 100% rename from Framework/Sources/Browser/SRGIdentityWebViewController~ios.storyboard rename to Sources/SRGIdentity/SRGIdentityWebViewController~ios.storyboard diff --git a/Framework/Sources/Categories/UIImage+SRGIdentity.h b/Sources/SRGIdentity/UIImage+SRGIdentity.h similarity index 94% rename from Framework/Sources/Categories/UIImage+SRGIdentity.h rename to Sources/SRGIdentity/UIImage+SRGIdentity.h index 062d570..744c44e 100644 --- a/Framework/Sources/Categories/UIImage+SRGIdentity.h +++ b/Sources/SRGIdentity/UIImage+SRGIdentity.h @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import UIKit; NS_ASSUME_NONNULL_BEGIN diff --git a/Framework/Sources/Categories/UIImage+SRGIdentity.m b/Sources/SRGIdentity/UIImage+SRGIdentity.m similarity index 100% rename from Framework/Sources/Categories/UIImage+SRGIdentity.m rename to Sources/SRGIdentity/UIImage+SRGIdentity.m diff --git a/Framework/Sources/Categories/UIWindow+SRGIdentity.h b/Sources/SRGIdentity/UIWindow+SRGIdentity.h similarity index 94% rename from Framework/Sources/Categories/UIWindow+SRGIdentity.h rename to Sources/SRGIdentity/UIWindow+SRGIdentity.h index b948e8a..cbe3931 100644 --- a/Framework/Sources/Categories/UIWindow+SRGIdentity.h +++ b/Sources/SRGIdentity/UIWindow+SRGIdentity.h @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import UIKit; NS_ASSUME_NONNULL_BEGIN diff --git a/Framework/Sources/Categories/UIWindow+SRGIdentity.m b/Sources/SRGIdentity/UIWindow+SRGIdentity.m similarity index 100% rename from Framework/Sources/Categories/UIWindow+SRGIdentity.m rename to Sources/SRGIdentity/UIWindow+SRGIdentity.m diff --git a/Framework/Sources/Model/SRGAccount.h b/Sources/SRGIdentity/include/SRGAccount.h similarity index 98% rename from Framework/Sources/Model/SRGAccount.h rename to Sources/SRGIdentity/include/SRGAccount.h index 2704e37..1bb4373 100644 --- a/Framework/Sources/Model/SRGAccount.h +++ b/Sources/SRGIdentity/include/SRGAccount.h @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import Mantle; NS_ASSUME_NONNULL_BEGIN diff --git a/Framework/Sources/SRGIdentity.h b/Sources/SRGIdentity/include/SRGIdentity.h similarity index 89% rename from Framework/Sources/SRGIdentity.h rename to Sources/SRGIdentity/include/SRGIdentity.h index 437e2d2..f117dde 100644 --- a/Framework/Sources/SRGIdentity.h +++ b/Sources/SRGIdentity/include/SRGIdentity.h @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import Foundation; // Official version number. FOUNDATION_EXPORT NSString *SRGIdentityMarketingVersion(void); diff --git a/Framework/Sources/SRGIdentityService.h b/Sources/SRGIdentity/include/SRGIdentityService.h similarity index 99% rename from Framework/Sources/SRGIdentityService.h rename to Sources/SRGIdentity/include/SRGIdentityService.h index 8be1c54..defd342 100644 --- a/Framework/Sources/SRGIdentityService.h +++ b/Sources/SRGIdentity/include/SRGIdentityService.h @@ -6,7 +6,7 @@ #import "SRGAccount.h" -#import +@import UIKit; NS_ASSUME_NONNULL_BEGIN diff --git a/Tests/SRGIdentity-tests.xcodeproj/project.pbxproj b/Tests/SRGIdentity-tests.xcodeproj/project.pbxproj new file mode 100644 index 0000000..750afd9 --- /dev/null +++ b/Tests/SRGIdentity-tests.xcodeproj/project.pbxproj @@ -0,0 +1,718 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 52; + objects = { + +/* Begin PBXBuildFile section */ + 6F3C7A1624C631C300199F64 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3C7A1324C631C300199F64 /* main.m */; }; + 6F3C7A3A24C6373E00199F64 /* IdentityServiceTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3C7A0D24C631B500199F64 /* IdentityServiceTestCase.m */; }; + 6F3C7A3B24C6373E00199F64 /* IdentityBaseTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F3C7A0C24C631B500199F64 /* IdentityBaseTestCase.m */; }; + 6F3C7A3D24C6376B00199F64 /* SRGIdentity in Frameworks */ = {isa = PBXBuildFile; productRef = 6F3C7A3C24C6376B00199F64 /* SRGIdentity */; }; + 6F3C7A4024C637DE00199F64 /* OHHTTPStubs in Frameworks */ = {isa = PBXBuildFile; productRef = 6F3C7A3F24C637DE00199F64 /* OHHTTPStubs */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 6F3C7A3324C6363400199F64 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 6F0EB52820FC7F58009C02CF /* Project object */; + proxyType = 1; + remoteGlobalIDString = 0826662D216E2B7200FD8E84; + remoteInfo = "SRGIdentity-tests-host"; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 080D0BD921356A1200AA519A /* UICKeyChainStore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UICKeyChainStore.framework; path = Carthage/Build/iOS/UICKeyChainStore.framework; sourceTree = ""; }; + 080D0BE021356CB500AA519A /* libextobjc.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = libextobjc.framework; path = Carthage/Build/iOS/libextobjc.framework; sourceTree = ""; }; + 080D0BE121356CB500AA519A /* MAKVONotificationCenter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MAKVONotificationCenter.framework; path = Carthage/Build/iOS/MAKVONotificationCenter.framework; sourceTree = ""; }; + 080D0BE42135776000AA519A /* Mantle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Mantle.framework; path = Carthage/Build/iOS/Mantle.framework; sourceTree = ""; }; + 080D0BEE2135A6DD00AA519A /* SafariServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SafariServices.framework; path = System/Library/Frameworks/SafariServices.framework; sourceTree = SDKROOT; }; + 0826662E216E2B7200FD8E84 /* SRGIdentity-tests-host.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "SRGIdentity-tests-host.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 08266651216E354000FD8E84 /* OHHTTPStubs.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OHHTTPStubs.framework; path = Carthage/Build/iOS/OHHTTPStubs.framework; sourceTree = ""; }; + 084CD6FE21696C0A00905A38 /* SRGLogger.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGLogger.framework; path = Carthage/Build/iOS/SRGLogger.framework; sourceTree = ""; }; + 086FB2CA21368ADE00DE4CF2 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; + 6F3C7A0C24C631B500199F64 /* IdentityBaseTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = IdentityBaseTestCase.m; sourceTree = ""; }; + 6F3C7A0D24C631B500199F64 /* IdentityServiceTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = IdentityServiceTestCase.m; sourceTree = ""; }; + 6F3C7A0E24C631B500199F64 /* IdentityBaseTestCase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IdentityBaseTestCase.h; sourceTree = ""; }; + 6F3C7A1324C631C300199F64 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 6F3C7A1424C631C300199F64 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 6F3C7A1824C6331300199F64 /* Tests.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Tests.xcconfig; sourceTree = ""; }; + 6F3C7A1924C633B900199F64 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 6F3C7A2E24C6363400199F64 /* SRGIdentity-tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "SRGIdentity-tests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; + 6F6ED0FF216BA9D800D7E786 /* FXReachability.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = FXReachability.framework; path = Carthage/Build/iOS/FXReachability.framework; sourceTree = ""; }; + 6F9FFAAB2167924E00F781A0 /* SRGNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGNetwork.framework; path = Carthage/Build/iOS/SRGNetwork.framework; sourceTree = ""; }; + 6FC7C5A423A3A6D70058349C /* SRGAppearance.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGAppearance.framework; path = Carthage/Build/iOS/SRGAppearance.framework; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 0826662B216E2B7200FD8E84 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6F3C7A2B24C6363400199F64 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 6F3C7A3D24C6376B00199F64 /* SRGIdentity in Frameworks */, + 6F3C7A4024C637DE00199F64 /* OHHTTPStubs in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 6F0EB52720FC7F58009C02CF = { + isa = PBXGroup; + children = ( + 6F3C7A1824C6331300199F64 /* Tests.xcconfig */, + 6F3C7A1124C631C300199F64 /* SRGIdentityTestsHost */, + 6F3C7A0B24C631B500199F64 /* SRGIdentityTests */, + 6F8A945521006A9E00AA6434 /* Frameworks */, + 6F0EB53220FC7F58009C02CF /* Products */, + ); + sourceTree = ""; + }; + 6F0EB53220FC7F58009C02CF /* Products */ = { + isa = PBXGroup; + children = ( + 0826662E216E2B7200FD8E84 /* SRGIdentity-tests-host.app */, + 6F3C7A2E24C6363400199F64 /* SRGIdentity-tests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 6F3C7A0B24C631B500199F64 /* SRGIdentityTests */ = { + isa = PBXGroup; + children = ( + 6F3C7A0E24C631B500199F64 /* IdentityBaseTestCase.h */, + 6F3C7A0C24C631B500199F64 /* IdentityBaseTestCase.m */, + 6F3C7A0D24C631B500199F64 /* IdentityServiceTestCase.m */, + 6F3C7A1924C633B900199F64 /* Info.plist */, + ); + path = SRGIdentityTests; + sourceTree = ""; + }; + 6F3C7A1124C631C300199F64 /* SRGIdentityTestsHost */ = { + isa = PBXGroup; + children = ( + 6F3C7A1324C631C300199F64 /* main.m */, + 6F3C7A1424C631C300199F64 /* Info.plist */, + ); + path = SRGIdentityTestsHost; + sourceTree = ""; + }; + 6F8A945521006A9E00AA6434 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 6F6ED0FF216BA9D800D7E786 /* FXReachability.framework */, + 080D0BE021356CB500AA519A /* libextobjc.framework */, + 080D0BE121356CB500AA519A /* MAKVONotificationCenter.framework */, + 080D0BE42135776000AA519A /* Mantle.framework */, + 08266651216E354000FD8E84 /* OHHTTPStubs.framework */, + 080D0BEE2135A6DD00AA519A /* SafariServices.framework */, + 6FC7C5A423A3A6D70058349C /* SRGAppearance.framework */, + 084CD6FE21696C0A00905A38 /* SRGLogger.framework */, + 6F9FFAAB2167924E00F781A0 /* SRGNetwork.framework */, + 080D0BD921356A1200AA519A /* UICKeyChainStore.framework */, + 086FB2CA21368ADE00DE4CF2 /* WebKit.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 0826662D216E2B7200FD8E84 /* SRGIdentity-tests-host */ = { + isa = PBXNativeTarget; + buildConfigurationList = 08266641216E2B7400FD8E84 /* Build configuration list for PBXNativeTarget "SRGIdentity-tests-host" */; + buildPhases = ( + 0826662A216E2B7200FD8E84 /* Sources */, + 0826662B216E2B7200FD8E84 /* Frameworks */, + 0826662C216E2B7200FD8E84 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "SRGIdentity-tests-host"; + productName = "SRGIdentity-testapp"; + productReference = 0826662E216E2B7200FD8E84 /* SRGIdentity-tests-host.app */; + productType = "com.apple.product-type.application"; + }; + 6F3C7A2D24C6363400199F64 /* SRGIdentity-tests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 6F3C7A3524C6363400199F64 /* Build configuration list for PBXNativeTarget "SRGIdentity-tests" */; + buildPhases = ( + 6F3C7A2A24C6363400199F64 /* Sources */, + 6F3C7A2B24C6363400199F64 /* Frameworks */, + 6F3C7A2C24C6363400199F64 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 6F3C7A3424C6363400199F64 /* PBXTargetDependency */, + ); + name = "SRGIdentity-tests"; + packageProductDependencies = ( + 6F3C7A3C24C6376B00199F64 /* SRGIdentity */, + 6F3C7A3F24C637DE00199F64 /* OHHTTPStubs */, + ); + productName = "SRGIdentity-tests"; + productReference = 6F3C7A2E24C6363400199F64 /* SRGIdentity-tests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 6F0EB52820FC7F58009C02CF /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 1200; + ORGANIZATIONNAME = "SRG SSR"; + TargetAttributes = { + 0826662D216E2B7200FD8E84 = { + CreatedOnToolsVersion = 10.0; + }; + 6F3C7A2D24C6363400199F64 = { + CreatedOnToolsVersion = 12.0; + TestTargetID = 0826662D216E2B7200FD8E84; + }; + }; + }; + buildConfigurationList = 6F0EB52B20FC7F58009C02CF /* Build configuration list for PBXProject "SRGIdentity-tests" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + it, + de, + fr, + rm, + ); + mainGroup = 6F0EB52720FC7F58009C02CF; + packageReferences = ( + 6F3C7A3E24C637DE00199F64 /* XCRemoteSwiftPackageReference "OHHTTPStubs" */, + ); + productRefGroup = 6F0EB53220FC7F58009C02CF /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 6F3C7A2D24C6363400199F64 /* SRGIdentity-tests */, + 0826662D216E2B7200FD8E84 /* SRGIdentity-tests-host */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 0826662C216E2B7200FD8E84 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6F3C7A2C24C6363400199F64 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 0826662A216E2B7200FD8E84 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 6F3C7A1624C631C300199F64 /* main.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6F3C7A2A24C6363400199F64 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 6F3C7A3B24C6373E00199F64 /* IdentityBaseTestCase.m in Sources */, + 6F3C7A3A24C6373E00199F64 /* IdentityServiceTestCase.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 6F3C7A3424C6363400199F64 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 0826662D216E2B7200FD8E84 /* SRGIdentity-tests-host */; + targetProxy = 6F3C7A3324C6363400199F64 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + 08266642216E2B7400FD8E84 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + DEVELOPMENT_TEAM = VMGRRW6SG7; + INFOPLIST_FILE = SRGIdentityTestsHost/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests-host"; + SDKROOT = iphoneos; + }; + name = Debug; + }; + 08266643216E2B7400FD8E84 /* Debug-static */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + DEVELOPMENT_TEAM = VMGRRW6SG7; + INFOPLIST_FILE = SRGIdentityTestsHost/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests-host"; + SDKROOT = iphoneos; + }; + name = "Debug-static"; + }; + 08266644216E2B7400FD8E84 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + DEVELOPMENT_TEAM = VMGRRW6SG7; + INFOPLIST_FILE = SRGIdentityTestsHost/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests-host"; + SDKROOT = iphoneos; + }; + name = Release; + }; + 08266645216E2B7400FD8E84 /* Release-static */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + DEVELOPMENT_TEAM = VMGRRW6SG7; + INFOPLIST_FILE = SRGIdentityTestsHost/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests-host"; + SDKROOT = iphoneos; + }; + name = "Release-static"; + }; + 6F0C98DA2121E14000073AB6 /* Debug-static */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = "Debug-static"; + }; + 6F0C98DE2121E14600073AB6 /* Release-static */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + VALIDATE_PRODUCT = YES; + }; + name = "Release-static"; + }; + 6F0EB53720FC7F58009C02CF /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 6F0EB53820FC7F58009C02CF /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 6F3C7A3624C6363400199F64 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = SRGIdentityTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SRGIdentity-tests-host.app/SRGIdentity-tests-host"; + }; + name = Debug; + }; + 6F3C7A3724C6363400199F64 /* Debug-static */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = SRGIdentityTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SRGIdentity-tests-host.app/SRGIdentity-tests-host"; + }; + name = "Debug-static"; + }; + 6F3C7A3824C6363400199F64 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = SRGIdentityTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SRGIdentity-tests-host.app/SRGIdentity-tests-host"; + }; + name = Release; + }; + 6F3C7A3924C6363400199F64 /* Release-static */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = SRGIdentityTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SRGIdentity-tests-host.app/SRGIdentity-tests-host"; + }; + name = "Release-static"; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 08266641216E2B7400FD8E84 /* Build configuration list for PBXNativeTarget "SRGIdentity-tests-host" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 08266642216E2B7400FD8E84 /* Debug */, + 08266643216E2B7400FD8E84 /* Debug-static */, + 08266644216E2B7400FD8E84 /* Release */, + 08266645216E2B7400FD8E84 /* Release-static */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 6F0EB52B20FC7F58009C02CF /* Build configuration list for PBXProject "SRGIdentity-tests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 6F0EB53720FC7F58009C02CF /* Debug */, + 6F0C98DA2121E14000073AB6 /* Debug-static */, + 6F0EB53820FC7F58009C02CF /* Release */, + 6F0C98DE2121E14600073AB6 /* Release-static */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 6F3C7A3524C6363400199F64 /* Build configuration list for PBXNativeTarget "SRGIdentity-tests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 6F3C7A3624C6363400199F64 /* Debug */, + 6F3C7A3724C6363400199F64 /* Debug-static */, + 6F3C7A3824C6363400199F64 /* Release */, + 6F3C7A3924C6363400199F64 /* Release-static */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + +/* Begin XCRemoteSwiftPackageReference section */ + 6F3C7A3E24C637DE00199F64 /* XCRemoteSwiftPackageReference "OHHTTPStubs" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/AliSoftware/OHHTTPStubs.git"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 9.0.0; + }; + }; +/* End XCRemoteSwiftPackageReference section */ + +/* Begin XCSwiftPackageProductDependency section */ + 6F3C7A3C24C6376B00199F64 /* SRGIdentity */ = { + isa = XCSwiftPackageProductDependency; + productName = SRGIdentity; + }; + 6F3C7A3F24C637DE00199F64 /* OHHTTPStubs */ = { + isa = XCSwiftPackageProductDependency; + package = 6F3C7A3E24C637DE00199F64 /* XCRemoteSwiftPackageReference "OHHTTPStubs" */; + productName = OHHTTPStubs; + }; +/* End XCSwiftPackageProductDependency section */ + }; + rootObject = 6F0EB52820FC7F58009C02CF /* Project object */; +} diff --git a/Tests/SRGIdentity-tests.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Tests/SRGIdentity-tests.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/Tests/SRGIdentity-tests.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/Tests/SRGIdentity-tests.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Tests/SRGIdentity-tests.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Tests/SRGIdentity-tests.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Tests/SRGIdentity-tests.xcodeproj/xcshareddata/xcschemes/SRGIdentity-tests.xcscheme b/Tests/SRGIdentity-tests.xcodeproj/xcshareddata/xcschemes/SRGIdentity-tests.xcscheme new file mode 100644 index 0000000..5993c50 --- /dev/null +++ b/Tests/SRGIdentity-tests.xcodeproj/xcshareddata/xcschemes/SRGIdentity-tests.xcscheme @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/SRGIdentity-tests.xcworkspace/contents.xcworkspacedata b/Tests/SRGIdentity-tests.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..d76d08c --- /dev/null +++ b/Tests/SRGIdentity-tests.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,10 @@ + + + + + + + diff --git a/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved new file mode 100644 index 0000000..a367436 --- /dev/null +++ b/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -0,0 +1,88 @@ +{ + "object": { + "pins": [ + { + "package": "FXReachability", + "repositoryURL": "https://github.com/SRGSSR/FXReachability.git", + "state": { + "branch": "feature/spm-support", + "revision": "5d70506b9ba5c59c9b0332cc95d1e7dae6dd70a7", + "version": null + } + }, + { + "package": "libextobjc", + "repositoryURL": "https://github.com/SRGSSR/libextobjc.git", + "state": { + "branch": "feature/spm-support", + "revision": "bec0bafcb6f837267ac58c2babd9ff9e1402e091", + "version": null + } + }, + { + "package": "MAKVONotificationCenter", + "repositoryURL": "https://github.com/SRGSSR/MAKVONotificationCenter.git", + "state": { + "branch": "feature/spm-support", + "revision": "60395e0601ffd4a784856b423d4cac558366276d", + "version": null + } + }, + { + "package": "Mantle", + "repositoryURL": "https://github.com/SRGSSR/Mantle.git", + "state": { + "branch": "swift-package-manager-support", + "revision": "cd18bf7f9c6c5a0d2f4aec6012fe1615b86032fe", + "version": null + } + }, + { + "package": "OHHTTPStubs", + "repositoryURL": "https://github.com/AliSoftware/OHHTTPStubs.git", + "state": { + "branch": null, + "revision": "e92b5a5746ef16add2a1424f1fc19529d9a75cde", + "version": "9.0.0" + } + }, + { + "package": "SRGAppearance", + "repositoryURL": "https://github.com/SRGSSR/srgappearance-apple.git", + "state": { + "branch": "feature/spm-support", + "revision": "fa96c79d55b8175421f779de694c7941c8532dec", + "version": null + } + }, + { + "package": "SRGLogger", + "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git", + "state": { + "branch": "feature/spm-support", + "revision": "f4973abf95e8f1809a2ad4ca6f0702662327c9a0", + "version": null + } + }, + { + "package": "SRGNetwork", + "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git", + "state": { + "branch": "feature/spm-support", + "revision": "d58e09bab288a5751c611323d9b9458a43511de7", + "version": null + } + }, + { + "package": "UICKeyChainStore", + "repositoryURL": "https://github.com/kishikawakatsumi/UICKeyChainStore.git", + "state": { + "branch": null, + "revision": "2f0380d539ec53b66eef211b3c983749ad9e2686", + "version": "2.2.0" + } + } + ] + }, + "version": 1 +} diff --git a/Tests/Sources/Helpers/IdentityBaseTestCase.h b/Tests/SRGIdentityTests/IdentityBaseTestCase.h similarity index 93% rename from Tests/Sources/Helpers/IdentityBaseTestCase.h rename to Tests/SRGIdentityTests/IdentityBaseTestCase.h index d16c69a..e861813 100644 --- a/Tests/Sources/Helpers/IdentityBaseTestCase.h +++ b/Tests/SRGIdentityTests/IdentityBaseTestCase.h @@ -4,8 +4,8 @@ // License information is available from the LICENSE file. // -#import -#import +@import SRGIdentity; +@import XCTest; NS_ASSUME_NONNULL_BEGIN diff --git a/Tests/Sources/Helpers/IdentityBaseTestCase.m b/Tests/SRGIdentityTests/IdentityBaseTestCase.m similarity index 100% rename from Tests/Sources/Helpers/IdentityBaseTestCase.m rename to Tests/SRGIdentityTests/IdentityBaseTestCase.m diff --git a/Tests/Sources/IdentityServiceTestCase.m b/Tests/SRGIdentityTests/IdentityServiceTestCase.m similarity index 94% rename from Tests/Sources/IdentityServiceTestCase.m rename to Tests/SRGIdentityTests/IdentityServiceTestCase.m index 5311176..a12a5dc 100644 --- a/Tests/Sources/IdentityServiceTestCase.m +++ b/Tests/SRGIdentityTests/IdentityServiceTestCase.m @@ -6,8 +6,8 @@ #import "IdentityBaseTestCase.h" -#import -#import +@import libextobjc; +@import OHHTTPStubs; static NSString *TestValidToken = @"0123456789"; @@ -98,9 +98,9 @@ - (void)setUp self.identityService = [[SRGIdentityService alloc] initWithWebserviceURL:TestWebserviceURL() websiteURL:TestWebsiteURL()]; [self.identityService logout]; - [OHHTTPStubs stubRequestsPassingTest:^BOOL(NSURLRequest *request) { + [HTTPStubs stubRequestsPassingTest:^BOOL(NSURLRequest *request) { return [request.URL.host isEqual:TestWebserviceURL().host]; - } withStubResponse:^OHHTTPStubsResponse *(NSURLRequest *request) { + } withStubResponse:^HTTPStubsResponse *(NSURLRequest *request) { if ([request.URL.host isEqualToString:TestWebsiteURL().host]) { if ([request.URL.path containsString:@"login"]) { NSURLComponents *URLComponents = [[NSURLComponents alloc] initWithURL:request.URL resolvingAgainstBaseURL:NO]; @@ -113,16 +113,16 @@ - (void)setUp queryItems = [queryItems arrayByAddingObject:[[NSURLQueryItem alloc] initWithName:@"token" value:TestValidToken]]; redirectURLComponents.queryItems = queryItems; - return [[OHHTTPStubsResponse responseWithData:[NSData data] + return [[HTTPStubsResponse responseWithData:[NSData data] statusCode:302 - headers:@{ @"Location" : redirectURLComponents.URL.absoluteString }] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; + headers:@{ @"Location" : redirectURLComponents.URL.absoluteString }] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; } } else if ([request.URL.host isEqualToString:TestWebserviceURL().host]) { if ([request.URL.path containsString:@"logout"]) { - return [[OHHTTPStubsResponse responseWithData:[NSData data] + return [[HTTPStubsResponse responseWithData:[NSData data] statusCode:204 - headers:nil] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; + headers:nil] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; } else if ([request.URL.path containsString:@"userinfo"]) { NSString *validAuthorizationHeader = [NSString stringWithFormat:@"sessionToken %@", TestValidToken]; @@ -135,22 +135,22 @@ - (void)setUp @"lastName": @"SRG", @"gender": @"other", @"birthdate": @"2001-01-01" }; - return [[OHHTTPStubsResponse responseWithData:[NSJSONSerialization dataWithJSONObject:account options:0 error:NULL] + return [[HTTPStubsResponse responseWithData:[NSJSONSerialization dataWithJSONObject:account options:0 error:NULL] statusCode:200 - headers:nil] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; + headers:nil] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; } else { - return [[OHHTTPStubsResponse responseWithData:[NSData data] + return [[HTTPStubsResponse responseWithData:[NSData data] statusCode:401 - headers:nil] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; + headers:nil] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; } } } // No match, return 404 - return [[OHHTTPStubsResponse responseWithData:[NSData data] + return [[HTTPStubsResponse responseWithData:[NSData data] statusCode:404 - headers:nil] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; + headers:nil] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; }]; } @@ -159,7 +159,7 @@ - (void)tearDown [self.identityService logout]; self.identityService = nil; - [OHHTTPStubs removeAllStubs]; + [HTTPStubs removeAllStubs]; } #pragma mark Tests diff --git a/Tests/Info.plist b/Tests/SRGIdentityTests/Info.plist similarity index 83% rename from Tests/Info.plist rename to Tests/SRGIdentityTests/Info.plist index 26b175d..6c6c23c 100644 --- a/Tests/Info.plist +++ b/Tests/SRGIdentityTests/Info.plist @@ -3,7 +3,7 @@ CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) + en CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier @@ -15,8 +15,8 @@ CFBundlePackageType BNDL CFBundleShortVersionString - $(MARKETING_VERSION) + 1.0 CFBundleVersion - $(CURRENT_PROJECT_VERSION) + 1 diff --git a/Tests/TestApp/Info.plist b/Tests/SRGIdentityTestsHost/Info.plist similarity index 89% rename from Tests/TestApp/Info.plist rename to Tests/SRGIdentityTestsHost/Info.plist index 6905c20..365ea61 100755 --- a/Tests/TestApp/Info.plist +++ b/Tests/SRGIdentityTestsHost/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - $(MARKETING_VERSION) + 1.0 CFBundleURLTypes @@ -28,13 +28,11 @@ CFBundleVersion - $(CURRENT_PROJECT_VERSION) + 1 LSRequiresIPhoneOS NSPrincipalClass $(PRINCIPAL_CLASS) - UILaunchStoryboardName - LaunchScreen UIRequiredDeviceCapabilities armv7 diff --git a/Tests/TestApp/main.m b/Tests/SRGIdentityTestsHost/main.m similarity index 94% rename from Tests/TestApp/main.m rename to Tests/SRGIdentityTestsHost/main.m index 756d589..4c79169 100755 --- a/Tests/TestApp/main.m +++ b/Tests/SRGIdentityTestsHost/main.m @@ -4,7 +4,7 @@ // License information is available from the LICENSE file. // -#import +@import UIKit; @interface AppDelegate : UIResponder @property (nonatomic) UIWindow *window; diff --git a/Tests/TestApp/TestApp.xcconfig b/Tests/TestApp/TestApp.xcconfig deleted file mode 100644 index 035e901..0000000 --- a/Tests/TestApp/TestApp.xcconfig +++ /dev/null @@ -1 +0,0 @@ -#include "../../Common.xcconfig" diff --git a/Tests/Tests.xcconfig b/Tests/Tests.xcconfig index 1403f74..20e6b79 100644 --- a/Tests/Tests.xcconfig +++ b/Tests/Tests.xcconfig @@ -1 +1,8 @@ -#include "../Common.xcconfig" +// Deployment targets +IPHONEOS_DEPLOYMENT_TARGET = 9.0 +TVOS_DEPLOYMENT_TARGET = 12.0 + +// Configuration to have a single target built for all platforms +// See https://davedelong.com/blog/2018/11/15/building-a-crossplatform-framework/ +SUPPORTED_PLATFORMS = iphoneos iphonesimulator appletvos appletvsimulator +TARGETED_DEVICE_FAMILY = 1,2,3 diff --git a/docs/README.md b/docs/README.md index 32c7b24..9653163 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,6 +1,6 @@ [![SRG Identity logo](README-images/logo.png)](https://github.com/SRGSSR/srgidentity-apple) -[![GitHub releases](https://img.shields.io/github/v/release/SRGSSR/srgidentity-apple)](https://github.com/SRGSSR/srgidentity-apple/releases) [![platform](https://img.shields.io/badge/platfom-ios%20%7C%20tvos-blue)](https://github.com/SRGSSR/srgidentity-apple) [![Build Status](https://travis-ci.org/SRGSSR/srgidentity-apple.svg?branch=master)](https://travis-ci.org/SRGSSR/srgidentity-apple/branches) [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![GitHub license](https://img.shields.io/github/license/SRGSSR/srgidentity-apple)](https://github.com/SRGSSR/srgidentity-apple/blob/master/LICENSE) +[![GitHub releases](https://img.shields.io/github/v/release/SRGSSR/srgidentity-apple)](https://github.com/SRGSSR/srgidentity-apple/releases) [![platform](https://img.shields.io/badge/platfom-ios%20%7C%20tvos-blue)](https://github.com/SRGSSR/srgidentity-apple) [![Build Status](https://travis-ci.org/SRGSSR/srgidentity-apple.svg?branch=master)](https://travis-ci.org/SRGSSR/srgidentity-apple/branches) [![GitHub license](https://img.shields.io/github/license/SRGSSR/srgidentity-apple)](https://github.com/SRGSSR/srgidentity-apple/blob/master/LICENSE) ## About @@ -8,74 +8,25 @@ The SRG Identity framework is a simple way to authenticate users within SRG SSR ## Compatibility -The library is suitable for applications running on iOS 9, tvOS 12 and above. The project is meant to be opened with the latest Xcode version. +The library is suitable for applications running on iOS 9, tvOS 12 and above. The project is meant to be compiled with the latest Xcode version. ## Contributing If you want to contribute to the project, have a look at our [contributing guide](CONTRIBUTING.md). -## Installation +## Integration -The library can be added to a project using [Carthage](https://github.com/Carthage/Carthage) by adding the following dependency to your `Cartfile`: - -``` -github "SRGSSR/srgidentity-apple" -``` - -For more information about Carthage and its use, refer to the [official documentation](https://github.com/Carthage/Carthage). - -### Dependencies - -The library requires the following frameworks to be added to any target requiring it: - -* `FXReachability`: A reachability framework. -* `libextobjc`: An utility framework. -* `MAKVONotificationCenter`: A safe KVO framework. -* `Mantle`: The framework used to parse the data. -* `SRGAppearance`: The appearance framework. -* `SRGIdentity`: The identity library framework. -* `SRGLogger`: The framework used for internal logging. -* `SRGNetwork`: A networking framework. -* `UICKeyChainStore`: The framework used to manage the keychain. - -### Dynamic framework integration - -1. Run `carthage update` to update the dependencies (which is equivalent to `carthage update --configuration Release`). -2. Add the frameworks listed above and generated in the `Carthage/Build/iOS` folder to your target _Embedded binaries_. - -If your target is building an application, a few more steps are required: - -1. Add a _Run script_ build phase to your target, with `/usr/local/bin/carthage copy-frameworks` as command. -2. Add each of the required frameworks above as input file `$(SRCROOT)/Carthage/Build/iOS/FrameworkName.framework`. - -### Static framework integration - -1. Run `carthage update --configuration Release-static` to update the dependencies. -2. Add the frameworks listed above and generated in the `Carthage/Build/iOS/Static` folder to the _Linked frameworks and libraries_ list of your target. -3. Also add any resource bundle `.bundle` found within the `.framework` folders to your target directly. -4. Add the `-all_load` flag to your target _Other linker flags_. +The library must be integrated using [Swift Package Manager](https://swift.org/package-manager) directly [within Xcode](https://developer.apple.com/documentation/xcode/adding_package_dependencies_to_your_app). You can also declare the library as a dependency of another one directly in the associated `Package.swift` manifest. ## Usage -When you want to use classes or functions provided by the library in your code, you must import it from your source files first. - -### Usage from Objective-C source files - -Import the global header file using: - -```objective-c -#import -``` - -or directly import the module itself: +When you want to use classes or functions provided by the library in your code, you must import it from your source files first. In Objective-C: ```objective-c @import SRGIdentity; ``` -### Usage from Swift source files - -Import the module where needed: +or in Swift: ```swift import SRGIdentity From 8f648be9a16350e2aed70915d72bab87b30930de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Tue, 21 Jul 2020 08:43:09 +0200 Subject: [PATCH 03/26] Implement browser view layout in code --- Package.swift | 2 +- Sources/SRGIdentity/NSBundle+SRGIdentity.h | 11 +- Sources/SRGIdentity/NSBundle+SRGIdentity.m | 18 --- Sources/SRGIdentity/SRGIdentity.m | 2 +- .../SRGIdentityLoginViewController~tvos.m | 2 +- .../SRGIdentityWebViewController~ios.m | 103 +++++++++++++----- ...RGIdentityWebViewController~ios.storyboard | 54 --------- Sources/SRGIdentity/UIImage+SRGIdentity.m | 2 +- 8 files changed, 80 insertions(+), 114 deletions(-) delete mode 100644 Sources/SRGIdentity/SRGIdentityWebViewController~ios.storyboard diff --git a/Package.swift b/Package.swift index 014c963..5eb7d40 100644 --- a/Package.swift +++ b/Package.swift @@ -30,7 +30,7 @@ let package = Package( .target( name: "SRGIdentity", dependencies: ["FXReachability", "Mantle", "SRGAppearance", "SRGNetwork", "UICKeyChainStore"], - exclude: ["SRGIdentityLoginViewController~tvos.storyboard", "SRGIdentityWebViewController~ios.storyboard"], + exclude: ["SRGIdentityLoginViewController~tvos.storyboard"], resources: [ .process("Resources") ], diff --git a/Sources/SRGIdentity/NSBundle+SRGIdentity.h b/Sources/SRGIdentity/NSBundle+SRGIdentity.h index 15b8310..2508e21 100644 --- a/Sources/SRGIdentity/NSBundle+SRGIdentity.h +++ b/Sources/SRGIdentity/NSBundle+SRGIdentity.h @@ -11,20 +11,11 @@ NS_ASSUME_NONNULL_BEGIN /** * Convenience macro for localized strings associated with the framework. */ -#define SRGIdentityLocalizedString(key, comment) [NSBundle.srg_identityBundle localizedStringForKey:(key) value:@"" table:nil] +#define SRGIdentityLocalizedString(key, comment) [SWIFTPM_MODULE_BUNDLE localizedStringForKey:(key) value:@"" table:nil] /** * Return the recommended resource name for the main resource (xib, storyboard) associated with a class. */ OBJC_EXPORT NSString *SRGIdentityResourceNameForUIClass(Class cls); -@interface NSBundle (SRGIdentity) - -/** - * The framework resource bundle. - */ -@property (class, nonatomic, readonly) NSBundle *srg_identityBundle; - -@end - NS_ASSUME_NONNULL_END diff --git a/Sources/SRGIdentity/NSBundle+SRGIdentity.m b/Sources/SRGIdentity/NSBundle+SRGIdentity.m index edef068..3d595e8 100644 --- a/Sources/SRGIdentity/NSBundle+SRGIdentity.m +++ b/Sources/SRGIdentity/NSBundle+SRGIdentity.m @@ -17,21 +17,3 @@ return [name stringByAppendingString:@"~ios"]; #endif } - -@implementation NSBundle (SRGIdentity) - -#pragma mark Class methods - -+ (NSBundle *)srg_identityBundle -{ - static NSBundle *s_bundle; - static dispatch_once_t s_onceToken; - dispatch_once(&s_onceToken, ^{ - NSString *bundlePath = [[NSBundle bundleForClass:SRGIdentityService.class].bundlePath stringByAppendingPathComponent:@"SRGIdentity.bundle"]; - s_bundle = [NSBundle bundleWithPath:bundlePath]; - NSAssert(s_bundle, @"Please add SRGIdentity.bundle to your project resources"); - }); - return s_bundle; -} - -@end diff --git a/Sources/SRGIdentity/SRGIdentity.m b/Sources/SRGIdentity/SRGIdentity.m index 0a80c41..6481603 100644 --- a/Sources/SRGIdentity/SRGIdentity.m +++ b/Sources/SRGIdentity/SRGIdentity.m @@ -10,5 +10,5 @@ NSString *SRGIdentityMarketingVersion(void) { - return NSBundle.srg_identityBundle.infoDictionary[@"CFBundleShortVersionString"]; + return SWIFTPM_MODULE_BUNDLE.infoDictionary[@"CFBundleShortVersionString"]; } diff --git a/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m b/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m index a197216..b9aefa5 100644 --- a/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m +++ b/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m @@ -47,7 +47,7 @@ - (instancetype)initWithWebserviceURL:(NSURL *)webserviceURL tokenBlock:(void (^)(NSString * _Nonnull))tokenBlock dismissalBlock:(void (^)(void))dismissalBlock { - UIStoryboard *storyboard = [UIStoryboard storyboardWithName:SRGIdentityResourceNameForUIClass(self.class) bundle:NSBundle.srg_identityBundle]; + UIStoryboard *storyboard = [UIStoryboard storyboardWithName:SRGIdentityResourceNameForUIClass(self.class) bundle:SWIFTPM_MODULE_BUNDLE]; SRGIdentityLoginViewController *viewController = [storyboard instantiateInitialViewController]; viewController.emailAddress = emailAddress; viewController.webserviceURL = webserviceURL; diff --git a/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m b/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m index 556530d..5eacda7 100644 --- a/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m +++ b/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m @@ -22,9 +22,9 @@ @interface SRGIdentityWebViewController () @property (nonatomic) NSURLRequest *request; @property (nonatomic, copy) WKNavigationActionPolicy (^decisionHandler)(NSURL *); -@property (nonatomic, weak) IBOutlet UIProgressView *progressView; +@property (nonatomic, weak) UIProgressView *progressView; @property (nonatomic, weak) WKWebView *webView; -@property (nonatomic, weak) IBOutlet UILabel *errorLabel; +@property (nonatomic, weak) UILabel *errorLabel; @end @@ -34,8 +34,7 @@ @implementation SRGIdentityWebViewController - (instancetype)initWithRequest:(NSURLRequest *)request decisionHandler:(WKNavigationActionPolicy (^)(NSURL *URL))decisionHandler { - UIStoryboard *storyboard = [UIStoryboard storyboardWithName:SRGIdentityResourceNameForUIClass(self.class) bundle:NSBundle.srg_identityBundle]; - SRGIdentityWebViewController *webViewController = [storyboard instantiateInitialViewController]; + SRGIdentityWebViewController *webViewController = [[SRGIdentityWebViewController alloc] init]; webViewController.request = request; webViewController.decisionHandler = decisionHandler; return webViewController; @@ -68,40 +67,88 @@ - (void)setWebView:(WKWebView *)webView #pragma mark View lifecycle -- (void)viewDidLoad +- (void)loadView { - [super viewDidLoad]; - - // Force properties to avoid overrides with UIAppearance - UIProgressView *progressViewAppearance = [UIProgressView appearanceWhenContainedInInstancesOfClasses:@[self.class]]; - progressViewAppearance.progressTintColor = nil; - progressViewAppearance.trackTintColor = nil; - progressViewAppearance.progressImage = nil; - progressViewAppearance.trackImage = nil; + UIView *view = [[UIView alloc] initWithFrame:UIScreen.mainScreen.bounds]; + view.backgroundColor = UIColor.whiteColor; + self.view = view; - self.errorLabel.textColor = UIColor.grayColor; - self.errorLabel.text = nil; - - // WKWebView cannot be instantiated in storyboards, do it programmatically - WKWebView *webView = [[WKWebView alloc] initWithFrame:self.view.bounds]; + WKWebView *webView = [[WKWebView alloc] initWithFrame:view.bounds]; + webView.backgroundColor = UIColor.clearColor; + webView.translatesAutoresizingMaskIntoConstraints = NO; webView.navigationDelegate = self; webView.scrollView.delegate = self; - [self.view insertSubview:webView atIndex:0]; + [view addSubview:webView]; + self.webView = webView; if (@available(iOS 11, *)) { - webView.translatesAutoresizingMaskIntoConstraints = NO; - [NSLayoutConstraint activateConstraints:@[ [webView.topAnchor constraintEqualToAnchor:self.view.topAnchor], - [webView.bottomAnchor constraintEqualToAnchor:self.view.bottomAnchor], - [webView.leftAnchor constraintEqualToAnchor:self.view.safeAreaLayoutGuide.leftAnchor], - [webView.rightAnchor constraintEqualToAnchor:self.view.safeAreaLayoutGuide.rightAnchor] ]]; + [NSLayoutConstraint activateConstraints:@[ [webView.topAnchor constraintEqualToAnchor:view.topAnchor], + [webView.bottomAnchor constraintEqualToAnchor:view.bottomAnchor], + [webView.leftAnchor constraintEqualToAnchor:view.safeAreaLayoutGuide.leftAnchor], + [webView.rightAnchor constraintEqualToAnchor:view.safeAreaLayoutGuide.rightAnchor] + ]]; } else { - webView.translatesAutoresizingMaskIntoConstraints = YES; - webView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; - webView.frame = self.view.bounds; + [NSLayoutConstraint activateConstraints:@[ [webView.topAnchor constraintEqualToAnchor:view.topAnchor], + [webView.bottomAnchor constraintEqualToAnchor:view.bottomAnchor], + [webView.leftAnchor constraintEqualToAnchor:view.leftAnchor], + [webView.rightAnchor constraintEqualToAnchor:view.rightAnchor] + ]]; } - self.webView = webView; + UIProgressView *progressView = [[UIProgressView alloc] init]; + progressView.translatesAutoresizingMaskIntoConstraints = NO; + [view addSubview:progressView]; + self.progressView = progressView; + + if (@available(iOS 11, *)) { + [NSLayoutConstraint activateConstraints:@[ + [progressView.topAnchor constraintEqualToAnchor:view.safeAreaLayoutGuide.topAnchor], + [progressView.leadingAnchor constraintEqualToAnchor:view.leadingAnchor], + [progressView.trailingAnchor constraintEqualToAnchor:view.trailingAnchor] + ]]; + } + else { + [NSLayoutConstraint activateConstraints:@[ + [progressView.topAnchor constraintEqualToAnchor:view.topAnchor], + [progressView.leadingAnchor constraintEqualToAnchor:view.leadingAnchor], + [progressView.trailingAnchor constraintEqualToAnchor:view.trailingAnchor] + ]]; + } + + UILabel *errorLabel = [[UILabel alloc] init]; + errorLabel.translatesAutoresizingMaskIntoConstraints = NO; + errorLabel.font = [UIFont systemFontOfSize:20.f]; + errorLabel.textColor = UIColor.grayColor; + [view addSubview:errorLabel]; + self.errorLabel = errorLabel; + + if (@available(iOS 11, *)) { + [NSLayoutConstraint activateConstraints:@[ + [errorLabel.centerYAnchor constraintEqualToAnchor:view.safeAreaLayoutGuide.centerYAnchor], + [errorLabel.leadingAnchor constraintEqualToAnchor:view.safeAreaLayoutGuide.leadingAnchor constant:40.f], + [errorLabel.trailingAnchor constraintEqualToAnchor:view.safeAreaLayoutGuide.trailingAnchor constant:40.f] + ]]; + } + else { + [NSLayoutConstraint activateConstraints:@[ + [errorLabel.centerYAnchor constraintEqualToAnchor:view.centerYAnchor], + [errorLabel.leadingAnchor constraintEqualToAnchor:view.leadingAnchor constant:40.f], + [errorLabel.trailingAnchor constraintEqualToAnchor:view.trailingAnchor constant:40.f] + ]]; + } +} + +- (void)viewDidLoad +{ + [super viewDidLoad]; + + // Force properties to avoid overrides with UIAppearance + UIProgressView *progressViewAppearance = [UIProgressView appearanceWhenContainedInInstancesOfClasses:@[self.class]]; + progressViewAppearance.progressTintColor = nil; + progressViewAppearance.trackTintColor = nil; + progressViewAppearance.progressImage = nil; + progressViewAppearance.trackImage = nil; self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh target:self diff --git a/Sources/SRGIdentity/SRGIdentityWebViewController~ios.storyboard b/Sources/SRGIdentity/SRGIdentityWebViewController~ios.storyboard deleted file mode 100644 index b8d092a..0000000 --- a/Sources/SRGIdentity/SRGIdentityWebViewController~ios.storyboard +++ /dev/null @@ -1,54 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Sources/SRGIdentity/UIImage+SRGIdentity.m b/Sources/SRGIdentity/UIImage+SRGIdentity.m index 175ca79..7aa4792 100644 --- a/Sources/SRGIdentity/UIImage+SRGIdentity.m +++ b/Sources/SRGIdentity/UIImage+SRGIdentity.m @@ -12,7 +12,7 @@ @implementation UIImage (SRGIdentityImages) + (UIImage *)srg_identityImageNamed:(NSString *)imageName { - return [UIImage imageNamed:imageName inBundle:NSBundle.srg_identityBundle compatibleWithTraitCollection:nil]; + return [UIImage imageNamed:imageName inBundle:SWIFTPM_MODULE_BUNDLE compatibleWithTraitCollection:nil]; } @end From 4acd7b54ecf8b106190bba369e7e5a4ab4c4bfe1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Tue, 21 Jul 2020 09:12:42 +0200 Subject: [PATCH 04/26] Implement tvOS login view in code --- Package.swift | 1 - Sources/SRGIdentity/NSBundle+SRGIdentity.h | 5 - Sources/SRGIdentity/NSBundle+SRGIdentity.m | 19 --- .../SRGIdentityLoginViewController~tvos.m | 124 ++++++++++++++---- ...dentityLoginViewController~tvos.storyboard | 116 ---------------- 5 files changed, 99 insertions(+), 166 deletions(-) delete mode 100644 Sources/SRGIdentity/NSBundle+SRGIdentity.m delete mode 100644 Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.storyboard diff --git a/Package.swift b/Package.swift index 5eb7d40..e301264 100644 --- a/Package.swift +++ b/Package.swift @@ -30,7 +30,6 @@ let package = Package( .target( name: "SRGIdentity", dependencies: ["FXReachability", "Mantle", "SRGAppearance", "SRGNetwork", "UICKeyChainStore"], - exclude: ["SRGIdentityLoginViewController~tvos.storyboard"], resources: [ .process("Resources") ], diff --git a/Sources/SRGIdentity/NSBundle+SRGIdentity.h b/Sources/SRGIdentity/NSBundle+SRGIdentity.h index 2508e21..6e83cd6 100644 --- a/Sources/SRGIdentity/NSBundle+SRGIdentity.h +++ b/Sources/SRGIdentity/NSBundle+SRGIdentity.h @@ -13,9 +13,4 @@ NS_ASSUME_NONNULL_BEGIN */ #define SRGIdentityLocalizedString(key, comment) [SWIFTPM_MODULE_BUNDLE localizedStringForKey:(key) value:@"" table:nil] -/** - * Return the recommended resource name for the main resource (xib, storyboard) associated with a class. - */ -OBJC_EXPORT NSString *SRGIdentityResourceNameForUIClass(Class cls); - NS_ASSUME_NONNULL_END diff --git a/Sources/SRGIdentity/NSBundle+SRGIdentity.m b/Sources/SRGIdentity/NSBundle+SRGIdentity.m deleted file mode 100644 index 3d595e8..0000000 --- a/Sources/SRGIdentity/NSBundle+SRGIdentity.m +++ /dev/null @@ -1,19 +0,0 @@ -// -// Copyright (c) SRG SSR. All rights reserved. -// -// License information is available from the LICENSE file. -// - -#import "NSBundle+SRGIdentity.h" - -#import "SRGIdentityService.h" - -NSString *SRGIdentityResourceNameForUIClass(Class cls) -{ - NSString *name = NSStringFromClass(cls); -#if TARGET_OS_TV - return [name stringByAppendingString:@"~tvos"]; -#else - return [name stringByAppendingString:@"~ios"]; -#endif -} diff --git a/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m b/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m index b9aefa5..e059600 100644 --- a/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m +++ b/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m @@ -25,13 +25,12 @@ @interface SRGIdentityLoginViewController () @property (nonatomic, copy) void (^tokenBlock)(NSString *sessionToken); @property (nonatomic, copy) void (^dismissalBlock)(void); -@property (nonatomic, weak) IBOutlet UIImageView *serviceLogoImageView; -@property (nonatomic, weak) IBOutlet UITextField *emailAddressTextField; -@property (nonatomic, weak) IBOutlet UITextField *passwordTextField; -@property (nonatomic, weak) IBOutlet UIButton *loginButton; +@property (nonatomic, weak) UITextField *emailAddressTextField; +@property (nonatomic, weak) UITextField *passwordTextField; +@property (nonatomic, weak) UIButton *loginButton; -@property (nonatomic, weak) IBOutlet UILabel *instructionsLabel; -@property (nonatomic, weak) IBOutlet UILabel *linkLabel; +@property (nonatomic, weak) UILabel *instructionsLabel; +@property (nonatomic, weak) UILabel *linkLabel; @property (nonatomic, weak) SRGRequest *loginRequest; @@ -47,8 +46,7 @@ - (instancetype)initWithWebserviceURL:(NSURL *)webserviceURL tokenBlock:(void (^)(NSString * _Nonnull))tokenBlock dismissalBlock:(void (^)(void))dismissalBlock { - UIStoryboard *storyboard = [UIStoryboard storyboardWithName:SRGIdentityResourceNameForUIClass(self.class) bundle:SWIFTPM_MODULE_BUNDLE]; - SRGIdentityLoginViewController *viewController = [storyboard instantiateInitialViewController]; + SRGIdentityLoginViewController *viewController = [[SRGIdentityLoginViewController alloc] init]; viewController.emailAddress = emailAddress; viewController.webserviceURL = webserviceURL; viewController.websiteURL = websiteURL; @@ -59,29 +57,105 @@ - (instancetype)initWithWebserviceURL:(NSURL *)webserviceURL #pragma mark View lifecycle -- (void)viewDidLoad +- (void)loadView { - [super viewDidLoad]; + UIView *view = [[UIView alloc] initWithFrame:UIScreen.mainScreen.bounds]; + self.view = view; - self.serviceLogoImageView.image = [UIImage imageNamed:@"identity_service_logo"] ?: [UIImage srg_identityImageNamed:@"service_logo"]; - self.serviceLogoImageView.tintColor = UIColor.systemGrayColor; + UIStackView *credentialsStackView = [[UIStackView alloc] init]; + credentialsStackView.translatesAutoresizingMaskIntoConstraints = NO; + credentialsStackView.axis = UILayoutConstraintAxisVertical; + credentialsStackView.alignment = UIStackViewAlignmentCenter; + credentialsStackView.distribution = UIStackViewDistributionFill; + credentialsStackView.spacing = 40.f; + [view addSubview:credentialsStackView]; - self.emailAddressTextField.text = self.emailAddress; - self.emailAddressTextField.placeholder = SRGIdentityLocalizedString(@"Email address", @"Email address text field placeholder on Apple TV"); - self.emailAddressTextField.font = [UIFont srg_regularFontWithSize:42.f]; + [NSLayoutConstraint activateConstraints:@[ + [credentialsStackView.centerXAnchor constraintEqualToAnchor:view.centerXAnchor], + [credentialsStackView.centerYAnchor constraintEqualToAnchor:view.centerYAnchor], + [credentialsStackView.widthAnchor constraintEqualToConstant:750.f] + ]]; - self.passwordTextField.placeholder = SRGIdentityLocalizedString(@"Password", @"Password text field placeholder on Apple TV"); - self.passwordTextField.font = [UIFont srg_regularFontWithSize:42.f]; + UIImage *serviceLogoImage = [UIImage imageNamed:@"identity_service_logo"] ?: [UIImage srg_identityImageNamed:@"service_logo"]; + UIImageView *serviceLogoImageView = [[UIImageView alloc] initWithImage:serviceLogoImage]; + serviceLogoImageView.tintColor = UIColor.systemGrayColor; + [credentialsStackView addArrangedSubview:serviceLogoImageView]; - [self.loginButton setTitle:SRGIdentityLocalizedString(@"Sign in", @"Sign in button on Apple TV") forState:UIControlStateNormal]; - self.loginButton.titleLabel.font = [UIFont srg_regularFontWithSize:36.f]; + // Zero height, but adds two stack spacing contributions and thus some spacing + UIView *spacerView = [[UIView alloc] init]; + spacerView.translatesAutoresizingMaskIntoConstraints = NO; + spacerView.backgroundColor = UIColor.clearColor; + [credentialsStackView addArrangedSubview:spacerView]; - self.instructionsLabel.text = SRGIdentityLocalizedString(@"To sign up or manage your account, use a computer or mobile device and visit", @"Instructions for signup on Apple TV followed by a website url (i.e. visit a website on another device)"); - self.instructionsLabel.font = [UIFont srg_regularFontWithSize:30.f]; + [NSLayoutConstraint activateConstraints:@[ + [spacerView.widthAnchor constraintEqualToAnchor:credentialsStackView.widthAnchor], + [spacerView.heightAnchor constraintEqualToConstant:0.f] + ]]; - self.linkLabel.text = self.websiteURL.absoluteString; - self.linkLabel.font = [UIFont srg_regularFontWithSize:30.f]; - self.linkLabel.textColor = UIColor.systemBlueColor; + UITextField *emailAddressTextField = [[UITextField alloc] init]; + emailAddressTextField.translatesAutoresizingMaskIntoConstraints = NO; + emailAddressTextField.text = self.emailAddress; + emailAddressTextField.placeholder = SRGIdentityLocalizedString(@"Email address", @"Email address text field placeholder on Apple TV"); + emailAddressTextField.font = [UIFont srg_regularFontWithSize:42.f]; + emailAddressTextField.textContentType = UITextContentTypeEmailAddress; + emailAddressTextField.autocapitalizationType = UITextAutocapitalizationTypeNone; + [credentialsStackView addArrangedSubview:emailAddressTextField]; + self.emailAddressTextField = emailAddressTextField; + + [NSLayoutConstraint activateConstraints:@[ + [emailAddressTextField.widthAnchor constraintEqualToAnchor:credentialsStackView.widthAnchor], + [emailAddressTextField.heightAnchor constraintEqualToConstant:70.f] + ]]; + + UITextField *passwordTextField = [[UITextField alloc] init]; + emailAddressTextField.translatesAutoresizingMaskIntoConstraints = NO; + passwordTextField.placeholder = SRGIdentityLocalizedString(@"Password", @"Password text field placeholder on Apple TV"); + passwordTextField.font = [UIFont srg_regularFontWithSize:42.f]; + passwordTextField.textContentType = UITextContentTypePassword; + passwordTextField.secureTextEntry = YES; + passwordTextField.autocapitalizationType = UITextAutocapitalizationTypeNone; + [credentialsStackView addArrangedSubview:passwordTextField]; + self.passwordTextField = passwordTextField; + + [NSLayoutConstraint activateConstraints:@[ + [passwordTextField.widthAnchor constraintEqualToAnchor:credentialsStackView.widthAnchor], + [passwordTextField.heightAnchor constraintEqualToConstant:70.f] + ]]; + + UIButton *loginButton = [UIButton buttonWithType:UIButtonTypeSystem]; + [loginButton setTitle:SRGIdentityLocalizedString(@"Sign in", @"Sign in button on Apple TV") forState:UIControlStateNormal]; + loginButton.titleLabel.font = [UIFont srg_regularFontWithSize:36.f]; + [loginButton addTarget:self action:@selector(login:) forControlEvents:UIControlEventPrimaryActionTriggered]; + [credentialsStackView addArrangedSubview:loginButton]; + self.loginButton = loginButton; + + UIStackView *instructionsStackView = [[UIStackView alloc] init]; + instructionsStackView.translatesAutoresizingMaskIntoConstraints = NO; + instructionsStackView.axis = UILayoutConstraintAxisVertical; + instructionsStackView.alignment = UIStackViewAlignmentFill; + instructionsStackView.distribution = UIStackViewDistributionFill; + [view addSubview:instructionsStackView]; + + [NSLayoutConstraint activateConstraints:@[ + [instructionsStackView.centerXAnchor constraintEqualToAnchor:view.centerXAnchor], + [instructionsStackView.bottomAnchor constraintEqualToAnchor:view.bottomAnchor constant:-38.f], + [instructionsStackView.widthAnchor constraintEqualToConstant:1000.f] + ]]; + + UILabel *instructionsLabel = [[UILabel alloc] init]; + instructionsLabel.textAlignment = NSTextAlignmentCenter; + instructionsLabel.text = SRGIdentityLocalizedString(@"To sign up or manage your account, use a computer or mobile device and visit", @"Instructions for signup on Apple TV followed by a website url (i.e. visit a website on another device)"); + instructionsLabel.font = [UIFont srg_regularFontWithSize:30.f]; + [instructionsStackView addArrangedSubview:instructionsLabel]; + self.instructionsLabel = instructionsLabel; + + UILabel *linkLabel = [[UILabel alloc] init]; + linkLabel.textAlignment = NSTextAlignmentCenter; + linkLabel.text = self.websiteURL.absoluteString; + linkLabel.font = [UIFont srg_regularFontWithSize:30.f]; + linkLabel.textColor = UIColor.systemBlueColor; + [instructionsStackView addArrangedSubview:linkLabel]; + self.linkLabel = linkLabel; } - (void)viewDidDisappear:(BOOL)animated @@ -148,7 +222,7 @@ - (SRGRequest *)loginRequestWithEmailAddress:(NSString *)emailAddress password:( #pragma mark Actions -- (IBAction)login:(id)sender +- (void)login:(id)sender { NSString *emailAddress = self.emailAddressTextField.text; if (emailAddress.length == 0) { diff --git a/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.storyboard b/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.storyboard deleted file mode 100644 index ae4b372..0000000 --- a/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.storyboard +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - From 498c685f150060807ecffb5c137120bbb3003471 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Tue, 21 Jul 2020 10:23:22 +0200 Subject: [PATCH 05/26] Factor out layout code for better readability --- .../SRGIdentityLoginViewController~tvos.m | 33 ++++++++++++------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m b/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m index e059600..7927394 100644 --- a/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m +++ b/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m @@ -62,6 +62,24 @@ - (void)loadView UIView *view = [[UIView alloc] initWithFrame:UIScreen.mainScreen.bounds]; self.view = view; + [self loadCredentialsStackViewInView:view]; + [self loadInstructionsStackViewInView:view]; +} + +- (void)viewDidDisappear:(BOOL)animated +{ + [super viewDidDisappear:animated]; + + if (self.movingFromParentViewController || self.beingDismissed) { + [self.loginRequest cancel]; + self.dismissalBlock(); + } +} + +#pragma mark View construction helpers + +- (void)loadCredentialsStackViewInView:(UIView *)view +{ UIStackView *credentialsStackView = [[UIStackView alloc] init]; credentialsStackView.translatesAutoresizingMaskIntoConstraints = NO; credentialsStackView.axis = UILayoutConstraintAxisVertical; @@ -128,7 +146,10 @@ - (void)loadView [loginButton addTarget:self action:@selector(login:) forControlEvents:UIControlEventPrimaryActionTriggered]; [credentialsStackView addArrangedSubview:loginButton]; self.loginButton = loginButton; - +} + +- (void)loadInstructionsStackViewInView:(UIView *)view +{ UIStackView *instructionsStackView = [[UIStackView alloc] init]; instructionsStackView.translatesAutoresizingMaskIntoConstraints = NO; instructionsStackView.axis = UILayoutConstraintAxisVertical; @@ -158,16 +179,6 @@ - (void)loadView self.linkLabel = linkLabel; } -- (void)viewDidDisappear:(BOOL)animated -{ - [super viewDidDisappear:animated]; - - if (self.movingFromParentViewController || self.beingDismissed) { - [self.loginRequest cancel]; - self.dismissalBlock(); - } -} - #pragma mark Requests - (SRGRequest *)loginRequestWithEmailAddress:(NSString *)emailAddress password:(NSString *)password completionHandler:(void (^)(NSString * _Nullable sessionToken, NSError * _Nullable error))completionHandler From cebee649fd12dc4056c348051dfd632fd8111208 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Tue, 21 Jul 2020 10:42:54 +0200 Subject: [PATCH 06/26] Fix marketing version --- Sources/SRGIdentity/SRGIdentity.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Sources/SRGIdentity/SRGIdentity.m b/Sources/SRGIdentity/SRGIdentity.m index 6481603..8a0dfc0 100644 --- a/Sources/SRGIdentity/SRGIdentity.m +++ b/Sources/SRGIdentity/SRGIdentity.m @@ -10,5 +10,5 @@ NSString *SRGIdentityMarketingVersion(void) { - return SWIFTPM_MODULE_BUNDLE.infoDictionary[@"CFBundleShortVersionString"]; + return @MARKETING_VERSION; } From ffd4c8e37a7416ec6459b20535fa9d893a20b8af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Thu, 23 Jul 2020 13:54:17 +0200 Subject: [PATCH 07/26] Cleanup framework list --- .../project.pbxproj | 22 ------------------- 1 file changed, 22 deletions(-) diff --git a/Tests/SRGIdentity-tests.xcodeproj/project.pbxproj b/Tests/SRGIdentity-tests.xcodeproj/project.pbxproj index 750afd9..ac52b1d 100644 --- a/Tests/SRGIdentity-tests.xcodeproj/project.pbxproj +++ b/Tests/SRGIdentity-tests.xcodeproj/project.pbxproj @@ -25,15 +25,7 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 080D0BD921356A1200AA519A /* UICKeyChainStore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UICKeyChainStore.framework; path = Carthage/Build/iOS/UICKeyChainStore.framework; sourceTree = ""; }; - 080D0BE021356CB500AA519A /* libextobjc.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = libextobjc.framework; path = Carthage/Build/iOS/libextobjc.framework; sourceTree = ""; }; - 080D0BE121356CB500AA519A /* MAKVONotificationCenter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MAKVONotificationCenter.framework; path = Carthage/Build/iOS/MAKVONotificationCenter.framework; sourceTree = ""; }; - 080D0BE42135776000AA519A /* Mantle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Mantle.framework; path = Carthage/Build/iOS/Mantle.framework; sourceTree = ""; }; - 080D0BEE2135A6DD00AA519A /* SafariServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SafariServices.framework; path = System/Library/Frameworks/SafariServices.framework; sourceTree = SDKROOT; }; 0826662E216E2B7200FD8E84 /* SRGIdentity-tests-host.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "SRGIdentity-tests-host.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - 08266651216E354000FD8E84 /* OHHTTPStubs.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OHHTTPStubs.framework; path = Carthage/Build/iOS/OHHTTPStubs.framework; sourceTree = ""; }; - 084CD6FE21696C0A00905A38 /* SRGLogger.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGLogger.framework; path = Carthage/Build/iOS/SRGLogger.framework; sourceTree = ""; }; - 086FB2CA21368ADE00DE4CF2 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; 6F3C7A0C24C631B500199F64 /* IdentityBaseTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = IdentityBaseTestCase.m; sourceTree = ""; }; 6F3C7A0D24C631B500199F64 /* IdentityServiceTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = IdentityServiceTestCase.m; sourceTree = ""; }; 6F3C7A0E24C631B500199F64 /* IdentityBaseTestCase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IdentityBaseTestCase.h; sourceTree = ""; }; @@ -42,9 +34,6 @@ 6F3C7A1824C6331300199F64 /* Tests.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Tests.xcconfig; sourceTree = ""; }; 6F3C7A1924C633B900199F64 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 6F3C7A2E24C6363400199F64 /* SRGIdentity-tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "SRGIdentity-tests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; - 6F6ED0FF216BA9D800D7E786 /* FXReachability.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = FXReachability.framework; path = Carthage/Build/iOS/FXReachability.framework; sourceTree = ""; }; - 6F9FFAAB2167924E00F781A0 /* SRGNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGNetwork.framework; path = Carthage/Build/iOS/SRGNetwork.framework; sourceTree = ""; }; - 6FC7C5A423A3A6D70058349C /* SRGAppearance.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGAppearance.framework; path = Carthage/Build/iOS/SRGAppearance.framework; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -110,17 +99,6 @@ 6F8A945521006A9E00AA6434 /* Frameworks */ = { isa = PBXGroup; children = ( - 6F6ED0FF216BA9D800D7E786 /* FXReachability.framework */, - 080D0BE021356CB500AA519A /* libextobjc.framework */, - 080D0BE121356CB500AA519A /* MAKVONotificationCenter.framework */, - 080D0BE42135776000AA519A /* Mantle.framework */, - 08266651216E354000FD8E84 /* OHHTTPStubs.framework */, - 080D0BEE2135A6DD00AA519A /* SafariServices.framework */, - 6FC7C5A423A3A6D70058349C /* SRGAppearance.framework */, - 084CD6FE21696C0A00905A38 /* SRGLogger.framework */, - 6F9FFAAB2167924E00F781A0 /* SRGNetwork.framework */, - 080D0BD921356A1200AA519A /* UICKeyChainStore.framework */, - 086FB2CA21368ADE00DE4CF2 /* WebKit.framework */, ); name = Frameworks; sourceTree = ""; From 252acc4bc3305417b88c1e95eac86c33741b4f12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Thu, 23 Jul 2020 14:11:43 +0200 Subject: [PATCH 08/26] Fix indentation --- Tests/SRGIdentityTests/IdentityServiceTestCase.m | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Tests/SRGIdentityTests/IdentityServiceTestCase.m b/Tests/SRGIdentityTests/IdentityServiceTestCase.m index a12a5dc..d7a3add 100644 --- a/Tests/SRGIdentityTests/IdentityServiceTestCase.m +++ b/Tests/SRGIdentityTests/IdentityServiceTestCase.m @@ -114,14 +114,14 @@ - (void)setUp redirectURLComponents.queryItems = queryItems; return [[HTTPStubsResponse responseWithData:[NSData data] - statusCode:302 + statusCode:302 headers:@{ @"Location" : redirectURLComponents.URL.absoluteString }] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; } } else if ([request.URL.host isEqualToString:TestWebserviceURL().host]) { if ([request.URL.path containsString:@"logout"]) { return [[HTTPStubsResponse responseWithData:[NSData data] - statusCode:204 + statusCode:204 headers:nil] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; } else if ([request.URL.path containsString:@"userinfo"]) { @@ -136,12 +136,12 @@ - (void)setUp @"gender": @"other", @"birthdate": @"2001-01-01" }; return [[HTTPStubsResponse responseWithData:[NSJSONSerialization dataWithJSONObject:account options:0 error:NULL] - statusCode:200 + statusCode:200 headers:nil] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; } else { return [[HTTPStubsResponse responseWithData:[NSData data] - statusCode:401 + statusCode:401 headers:nil] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; } } @@ -149,7 +149,7 @@ - (void)setUp // No match, return 404 return [[HTTPStubsResponse responseWithData:[NSData data] - statusCode:404 + statusCode:404 headers:nil] requestTime:1. responseTime:OHHTTPStubsDownloadSpeedWifi]; }]; } From b8f3d7b59bd03bcbc5fcbd763c3228ad5e9a1f1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Fri, 24 Jul 2020 13:19:00 +0200 Subject: [PATCH 09/26] Avoid repeating common constraints unnecessarily --- .../SRGIdentityWebViewController~ios.m | 27 +++++++++---------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m b/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m index 5eacda7..6ea645c 100644 --- a/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m +++ b/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m @@ -82,19 +82,18 @@ - (void)loadView self.webView = webView; if (@available(iOS 11, *)) { - [NSLayoutConstraint activateConstraints:@[ [webView.topAnchor constraintEqualToAnchor:view.topAnchor], - [webView.bottomAnchor constraintEqualToAnchor:view.bottomAnchor], - [webView.leftAnchor constraintEqualToAnchor:view.safeAreaLayoutGuide.leftAnchor], - [webView.rightAnchor constraintEqualToAnchor:view.safeAreaLayoutGuide.rightAnchor] + [NSLayoutConstraint activateConstraints:@[ [webView.leadingAnchor constraintEqualToAnchor:view.safeAreaLayoutGuide.leadingAnchor], + [webView.trailingAnchor constraintEqualToAnchor:view.safeAreaLayoutGuide.trailingAnchor] ]]; } else { - [NSLayoutConstraint activateConstraints:@[ [webView.topAnchor constraintEqualToAnchor:view.topAnchor], - [webView.bottomAnchor constraintEqualToAnchor:view.bottomAnchor], - [webView.leftAnchor constraintEqualToAnchor:view.leftAnchor], - [webView.rightAnchor constraintEqualToAnchor:view.rightAnchor] + [NSLayoutConstraint activateConstraints:@[ [webView.leadingAnchor constraintEqualToAnchor:view.leadingAnchor], + [webView.trailingAnchor constraintEqualToAnchor:view.trailingAnchor] ]]; } + [NSLayoutConstraint activateConstraints:@[ [webView.topAnchor constraintEqualToAnchor:view.topAnchor], + [webView.bottomAnchor constraintEqualToAnchor:view.bottomAnchor] + ]]; UIProgressView *progressView = [[UIProgressView alloc] init]; progressView.translatesAutoresizingMaskIntoConstraints = NO; @@ -103,18 +102,18 @@ - (void)loadView if (@available(iOS 11, *)) { [NSLayoutConstraint activateConstraints:@[ - [progressView.topAnchor constraintEqualToAnchor:view.safeAreaLayoutGuide.topAnchor], - [progressView.leadingAnchor constraintEqualToAnchor:view.leadingAnchor], - [progressView.trailingAnchor constraintEqualToAnchor:view.trailingAnchor] + [progressView.topAnchor constraintEqualToAnchor:view.safeAreaLayoutGuide.topAnchor] ]]; } else { [NSLayoutConstraint activateConstraints:@[ - [progressView.topAnchor constraintEqualToAnchor:view.topAnchor], - [progressView.leadingAnchor constraintEqualToAnchor:view.leadingAnchor], - [progressView.trailingAnchor constraintEqualToAnchor:view.trailingAnchor] + [progressView.topAnchor constraintEqualToAnchor:view.topAnchor] ]]; } + [NSLayoutConstraint activateConstraints:@[ + [progressView.leadingAnchor constraintEqualToAnchor:view.leadingAnchor], + [progressView.trailingAnchor constraintEqualToAnchor:view.trailingAnchor] + ]]; UILabel *errorLabel = [[UILabel alloc] init]; errorLabel.translatesAutoresizingMaskIntoConstraints = NO; From 9b537cc890cb9981e8dccf09df75250038b21733 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Mon, 27 Jul 2020 15:18:46 +0200 Subject: [PATCH 10/26] Add SPM badge --- docs/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.md b/docs/README.md index 9653163..bf94250 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,6 +1,6 @@ [![SRG Identity logo](README-images/logo.png)](https://github.com/SRGSSR/srgidentity-apple) -[![GitHub releases](https://img.shields.io/github/v/release/SRGSSR/srgidentity-apple)](https://github.com/SRGSSR/srgidentity-apple/releases) [![platform](https://img.shields.io/badge/platfom-ios%20%7C%20tvos-blue)](https://github.com/SRGSSR/srgidentity-apple) [![Build Status](https://travis-ci.org/SRGSSR/srgidentity-apple.svg?branch=master)](https://travis-ci.org/SRGSSR/srgidentity-apple/branches) [![GitHub license](https://img.shields.io/github/license/SRGSSR/srgidentity-apple)](https://github.com/SRGSSR/srgidentity-apple/blob/master/LICENSE) +[![GitHub releases](https://img.shields.io/github/v/release/SRGSSR/srgidentity-apple)](https://github.com/SRGSSR/srgidentity-apple/releases) [![platform](https://img.shields.io/badge/platfom-ios%20%7C%20tvos-blue)](https://github.com/SRGSSR/srgidentity-apple) [![SPM compatible](https://img.shields.io/badge/SPM-compatible-4BC51D.svg?style=flat)](https://swift.org/package-manager) [![Build Status](https://travis-ci.org/SRGSSR/srgidentity-apple.svg?branch=master)](https://travis-ci.org/SRGSSR/srgidentity-apple/branches) [![GitHub license](https://img.shields.io/github/license/SRGSSR/srgidentity-apple)](https://github.com/SRGSSR/srgidentity-apple/blob/master/LICENSE) ## About From 534271acb0368ad1896ba10a28396f73a223cd55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Mon, 27 Jul 2020 15:19:17 +0200 Subject: [PATCH 11/26] Disable scheme autogeneration --- .../xcshareddata/WorkspaceSettings.xcsettings | 8 ++ .../xcschemes/SRGIdentity.xcscheme | 81 +++++++++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 .swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 .swiftpm/xcode/xcshareddata/xcschemes/SRGIdentity.xcscheme diff --git a/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..08de0be --- /dev/null +++ b/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded + + + diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/SRGIdentity.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/SRGIdentity.xcscheme new file mode 100644 index 0000000..b4d6e3f --- /dev/null +++ b/.swiftpm/xcode/xcshareddata/xcschemes/SRGIdentity.xcscheme @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From b1a56fc759259557507b2429eb16a72a09593fe1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Mon, 27 Jul 2020 15:32:08 +0200 Subject: [PATCH 12/26] Add test workspace schemes --- .../xcshareddata/swiftpm/Package.resolved | 16 ++++++++++++++++ .../xcshareddata/WorkspaceSettings.xcsettings | 8 ++++++++ 2 files changed, 24 insertions(+) create mode 100644 Tests/SRGIdentity-tests.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved create mode 100644 Tests/SRGIdentity-tests.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/Tests/SRGIdentity-tests.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Tests/SRGIdentity-tests.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved new file mode 100644 index 0000000..08dceeb --- /dev/null +++ b/Tests/SRGIdentity-tests.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -0,0 +1,16 @@ +{ + "object": { + "pins": [ + { + "package": "OHHTTPStubs", + "repositoryURL": "https://github.com/AliSoftware/OHHTTPStubs.git", + "state": { + "branch": null, + "revision": "e92b5a5746ef16add2a1424f1fc19529d9a75cde", + "version": "9.0.0" + } + } + ] + }, + "version": 1 +} diff --git a/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..08de0be --- /dev/null +++ b/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded + + + From e83a7592d6ade19a31bc13c8946a0ffac2dd5187 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Mon, 27 Jul 2020 15:32:23 +0200 Subject: [PATCH 13/26] Add Makefile --- Makefile | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..9aefcef --- /dev/null +++ b/Makefile @@ -0,0 +1,24 @@ +#!/usr/bin/xcrun make -f + +.PHONY: all +all: test-ios test-tvos + +.PHONY: test-ios +test-ios: + @echo "Running iOS unit tests..." + @pushd Tests > /dev/null; xcodebuild test -workspace SRGIdentity-tests.xcworkspace -scheme SRGIdentity-tests -destination 'platform=iOS Simulator,name=iPhone 11' 2> /dev/null + @echo "... done.\n" + +.PHONY: test-tvos +test-tvos: + @echo "Running tvOS unit tests..." + @pushd Tests > /dev/null; xcodebuild test -workspace SRGIdentity-tests.xcworkspace -scheme SRGIdentity-tests -destination 'platform=tvOS Simulator,name=Apple TV' 2> /dev/null + @echo "... done.\n" + +.PHONY: help +help: + @echo "The following targets are available:" + @echo " all Build and run unit tests for all platforms" + @echo " test-ios Build and run unit tests for iOS" + @echo " test-tvos Build and run unit tests for tvOS" + @echo " help Display this help message" \ No newline at end of file From fde564055743770e046589c8eccca27118a5359f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Mon, 27 Jul 2020 15:40:01 +0200 Subject: [PATCH 14/26] Update dependencies --- .../xcshareddata/swiftpm/Package.resolved | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved index a6ad83e..b588789 100644 --- a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -6,7 +6,7 @@ "repositoryURL": "https://github.com/SRGSSR/FXReachability.git", "state": { "branch": "feature/spm-support", - "revision": "5d70506b9ba5c59c9b0332cc95d1e7dae6dd70a7", + "revision": "1eac916df0045630e779fa60eef22ed0d185e15f", "version": null } }, @@ -15,7 +15,7 @@ "repositoryURL": "https://github.com/SRGSSR/libextobjc.git", "state": { "branch": "feature/spm-support", - "revision": "bec0bafcb6f837267ac58c2babd9ff9e1402e091", + "revision": "30ee5b73bdf57a826978aa146881277f22369be1", "version": null } }, @@ -42,7 +42,7 @@ "repositoryURL": "https://github.com/SRGSSR/srgappearance-apple.git", "state": { "branch": "feature/spm-support", - "revision": "fa96c79d55b8175421f779de694c7941c8532dec", + "revision": "1de76c7c2349878195725a563dd03c4b3ac5e8ed", "version": null } }, @@ -51,7 +51,7 @@ "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git", "state": { "branch": "feature/spm-support", - "revision": "f4973abf95e8f1809a2ad4ca6f0702662327c9a0", + "revision": "9e6d46158e1636da7580143aa0c3097d3d15fa66", "version": null } }, @@ -60,7 +60,7 @@ "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git", "state": { "branch": "feature/spm-support", - "revision": "d58e09bab288a5751c611323d9b9458a43511de7", + "revision": "6a643bf3b7b18835798eec4784d15218e79b66d3", "version": null } }, From 0f2a9f60def33885b8860cdd5a23a11c6f12c701 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Mon, 27 Jul 2020 19:56:52 +0200 Subject: [PATCH 15/26] Remove unused shared scheme --- .../xcschemes/SRGIdentity.xcscheme | 81 ------------------- 1 file changed, 81 deletions(-) delete mode 100644 .swiftpm/xcode/xcshareddata/xcschemes/SRGIdentity.xcscheme diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/SRGIdentity.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/SRGIdentity.xcscheme deleted file mode 100644 index b4d6e3f..0000000 --- a/.swiftpm/xcode/xcshareddata/xcschemes/SRGIdentity.xcscheme +++ /dev/null @@ -1,81 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - From a5beb730d81f6db0a290f8a7178fe3b89d4bf94a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Tue, 28 Jul 2020 19:28:37 +0200 Subject: [PATCH 16/26] Refactor web view layout for readability --- .../SRGIdentityWebViewController~ios.m | 87 +++++++++++-------- 1 file changed, 51 insertions(+), 36 deletions(-) diff --git a/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m b/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m index 6ea645c..b9cb3f6 100644 --- a/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m +++ b/Sources/SRGIdentity/SRGIdentityWebViewController~ios.m @@ -73,6 +73,49 @@ - (void)loadView view.backgroundColor = UIColor.whiteColor; self.view = view; + [self layoutWebViewInView:view]; + [self layoutProgressViewInView:view]; + [self layoutErrorLabelInView:view]; +} + +- (void)viewDidLoad +{ + [super viewDidLoad]; + + // Force properties to avoid overrides with UIAppearance + UIProgressView *progressViewAppearance = [UIProgressView appearanceWhenContainedInInstancesOfClasses:@[self.class]]; + progressViewAppearance.progressTintColor = nil; + progressViewAppearance.trackTintColor = nil; + progressViewAppearance.progressImage = nil; + progressViewAppearance.trackImage = nil; + + self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh + target:self + action:@selector(refresh:)]; + + [self.webView loadRequest:self.request]; +} + +- (void)viewDidDisappear:(BOOL)animated +{ + [super viewDidDisappear:animated]; + + if (self.movingFromParentViewController || self.beingDismissed) { + [self.webView stopLoading]; + } +} + +- (void)viewWillLayoutSubviews +{ + [super viewWillLayoutSubviews]; + + [self updateContentInsets]; +} + +#pragma mark Layout helpers + +- (void)layoutWebViewInView:(UIView *)view +{ WKWebView *webView = [[WKWebView alloc] initWithFrame:view.bounds]; webView.backgroundColor = UIColor.clearColor; webView.translatesAutoresizingMaskIntoConstraints = NO; @@ -94,7 +137,10 @@ - (void)loadView [NSLayoutConstraint activateConstraints:@[ [webView.topAnchor constraintEqualToAnchor:view.topAnchor], [webView.bottomAnchor constraintEqualToAnchor:view.bottomAnchor] ]]; - +} + +- (void)layoutProgressViewInView:(UIView *)view +{ UIProgressView *progressView = [[UIProgressView alloc] init]; progressView.translatesAutoresizingMaskIntoConstraints = NO; [view addSubview:progressView]; @@ -114,7 +160,10 @@ - (void)loadView [progressView.leadingAnchor constraintEqualToAnchor:view.leadingAnchor], [progressView.trailingAnchor constraintEqualToAnchor:view.trailingAnchor] ]]; - +} + +- (void)layoutErrorLabelInView:(UIView *)view +{ UILabel *errorLabel = [[UILabel alloc] init]; errorLabel.translatesAutoresizingMaskIntoConstraints = NO; errorLabel.font = [UIFont systemFontOfSize:20.f]; @@ -138,40 +187,6 @@ - (void)loadView } } -- (void)viewDidLoad -{ - [super viewDidLoad]; - - // Force properties to avoid overrides with UIAppearance - UIProgressView *progressViewAppearance = [UIProgressView appearanceWhenContainedInInstancesOfClasses:@[self.class]]; - progressViewAppearance.progressTintColor = nil; - progressViewAppearance.trackTintColor = nil; - progressViewAppearance.progressImage = nil; - progressViewAppearance.trackImage = nil; - - self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh - target:self - action:@selector(refresh:)]; - - [self.webView loadRequest:self.request]; -} - -- (void)viewDidDisappear:(BOOL)animated -{ - [super viewDidDisappear:animated]; - - if (self.movingFromParentViewController || self.beingDismissed) { - [self.webView stopLoading]; - } -} - -- (void)viewWillLayoutSubviews -{ - [super viewWillLayoutSubviews]; - - [self updateContentInsets]; -} - #pragma mark UI - (void)updateContentInsets From 508b791522f266986dd2e3a5183f0d6c49e3a1eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Tue, 28 Jul 2020 19:35:41 +0200 Subject: [PATCH 17/26] Refactor tvOS login layout for readability --- .../SRGIdentityLoginViewController~tvos.m | 51 +++++++++++++------ 1 file changed, 36 insertions(+), 15 deletions(-) diff --git a/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m b/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m index 7927394..8be5358 100644 --- a/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m +++ b/Sources/SRGIdentity/SRGIdentityLoginViewController~tvos.m @@ -76,7 +76,7 @@ - (void)viewDidDisappear:(BOOL)animated } } -#pragma mark View construction helpers +#pragma mark Layout helpers - (void)loadCredentialsStackViewInView:(UIView *)view { @@ -94,22 +94,37 @@ - (void)loadCredentialsStackViewInView:(UIView *)view [credentialsStackView.widthAnchor constraintEqualToConstant:750.f] ]]; + [self loadServiceLogoInStackView:credentialsStackView]; + [self loadFixedSpacerWithHeight:0.f inStackView:credentialsStackView]; + [self loadEmailAddressTextFieldInStackView:credentialsStackView]; + [self loadPasswordTextFieldInStackView:credentialsStackView]; + [self loadLoginButtonInStackView:credentialsStackView]; +} + +- (void)loadServiceLogoInStackView:(UIStackView *)stackView +{ UIImage *serviceLogoImage = [UIImage imageNamed:@"identity_service_logo"] ?: [UIImage srg_identityImageNamed:@"service_logo"]; UIImageView *serviceLogoImageView = [[UIImageView alloc] initWithImage:serviceLogoImage]; serviceLogoImageView.tintColor = UIColor.systemGrayColor; - [credentialsStackView addArrangedSubview:serviceLogoImageView]; - + [stackView addArrangedSubview:serviceLogoImageView]; +} + +- (void)loadFixedSpacerWithHeight:(CGFloat)height inStackView:(UIStackView *)stackView +{ // Zero height, but adds two stack spacing contributions and thus some spacing UIView *spacerView = [[UIView alloc] init]; spacerView.translatesAutoresizingMaskIntoConstraints = NO; spacerView.backgroundColor = UIColor.clearColor; - [credentialsStackView addArrangedSubview:spacerView]; + [stackView addArrangedSubview:spacerView]; [NSLayoutConstraint activateConstraints:@[ - [spacerView.widthAnchor constraintEqualToAnchor:credentialsStackView.widthAnchor], - [spacerView.heightAnchor constraintEqualToConstant:0.f] + [spacerView.widthAnchor constraintEqualToAnchor:stackView.widthAnchor], + [spacerView.heightAnchor constraintEqualToConstant:height] ]]; - +} + +- (void)loadEmailAddressTextFieldInStackView:(UIStackView *)stackView +{ UITextField *emailAddressTextField = [[UITextField alloc] init]; emailAddressTextField.translatesAutoresizingMaskIntoConstraints = NO; emailAddressTextField.text = self.emailAddress; @@ -117,34 +132,40 @@ - (void)loadCredentialsStackViewInView:(UIView *)view emailAddressTextField.font = [UIFont srg_regularFontWithSize:42.f]; emailAddressTextField.textContentType = UITextContentTypeEmailAddress; emailAddressTextField.autocapitalizationType = UITextAutocapitalizationTypeNone; - [credentialsStackView addArrangedSubview:emailAddressTextField]; + [stackView addArrangedSubview:emailAddressTextField]; self.emailAddressTextField = emailAddressTextField; [NSLayoutConstraint activateConstraints:@[ - [emailAddressTextField.widthAnchor constraintEqualToAnchor:credentialsStackView.widthAnchor], + [emailAddressTextField.widthAnchor constraintEqualToAnchor:stackView.widthAnchor], [emailAddressTextField.heightAnchor constraintEqualToConstant:70.f] ]]; - +} + +- (void)loadPasswordTextFieldInStackView:(UIStackView *)stackView +{ UITextField *passwordTextField = [[UITextField alloc] init]; - emailAddressTextField.translatesAutoresizingMaskIntoConstraints = NO; + passwordTextField.translatesAutoresizingMaskIntoConstraints = NO; passwordTextField.placeholder = SRGIdentityLocalizedString(@"Password", @"Password text field placeholder on Apple TV"); passwordTextField.font = [UIFont srg_regularFontWithSize:42.f]; passwordTextField.textContentType = UITextContentTypePassword; passwordTextField.secureTextEntry = YES; passwordTextField.autocapitalizationType = UITextAutocapitalizationTypeNone; - [credentialsStackView addArrangedSubview:passwordTextField]; + [stackView addArrangedSubview:passwordTextField]; self.passwordTextField = passwordTextField; [NSLayoutConstraint activateConstraints:@[ - [passwordTextField.widthAnchor constraintEqualToAnchor:credentialsStackView.widthAnchor], + [passwordTextField.widthAnchor constraintEqualToAnchor:stackView.widthAnchor], [passwordTextField.heightAnchor constraintEqualToConstant:70.f] ]]; - +} + +- (void)loadLoginButtonInStackView:(UIStackView *)stackView +{ UIButton *loginButton = [UIButton buttonWithType:UIButtonTypeSystem]; [loginButton setTitle:SRGIdentityLocalizedString(@"Sign in", @"Sign in button on Apple TV") forState:UIControlStateNormal]; loginButton.titleLabel.font = [UIFont srg_regularFontWithSize:36.f]; [loginButton addTarget:self action:@selector(login:) forControlEvents:UIControlEventPrimaryActionTriggered]; - [credentialsStackView addArrangedSubview:loginButton]; + [stackView addArrangedSubview:loginButton]; self.loginButton = loginButton; } From fa19100c8614bd208796a614c44b38c1f1c9251a Mon Sep 17 00:00:00 2001 From: Pierre-Yves Bertholon Date: Tue, 22 Sep 2020 16:55:23 +0200 Subject: [PATCH 18/26] Update dependencies --- .../xcshareddata/swiftpm/Package.resolved | 6 +++--- Package.resolved | 10 +++++----- .../xcshareddata/swiftpm/Package.resolved | 10 +++++----- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved index b588789..98d495b 100644 --- a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -42,7 +42,7 @@ "repositoryURL": "https://github.com/SRGSSR/srgappearance-apple.git", "state": { "branch": "feature/spm-support", - "revision": "1de76c7c2349878195725a563dd03c4b3ac5e8ed", + "revision": "f6a2e4ea619b77eb8f2236096e8a6c7da08dd380", "version": null } }, @@ -51,7 +51,7 @@ "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git", "state": { "branch": "feature/spm-support", - "revision": "9e6d46158e1636da7580143aa0c3097d3d15fa66", + "revision": "f362dff71515f75ebe098f993d6951af067516fa", "version": null } }, @@ -60,7 +60,7 @@ "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git", "state": { "branch": "feature/spm-support", - "revision": "6a643bf3b7b18835798eec4784d15218e79b66d3", + "revision": "f9ec437e4b76f157a879b56f239fe301f88c673e", "version": null } }, diff --git a/Package.resolved b/Package.resolved index 417bcae..98d495b 100644 --- a/Package.resolved +++ b/Package.resolved @@ -6,7 +6,7 @@ "repositoryURL": "https://github.com/SRGSSR/FXReachability.git", "state": { "branch": "feature/spm-support", - "revision": "5d70506b9ba5c59c9b0332cc95d1e7dae6dd70a7", + "revision": "1eac916df0045630e779fa60eef22ed0d185e15f", "version": null } }, @@ -15,7 +15,7 @@ "repositoryURL": "https://github.com/SRGSSR/libextobjc.git", "state": { "branch": "feature/spm-support", - "revision": "bec0bafcb6f837267ac58c2babd9ff9e1402e091", + "revision": "30ee5b73bdf57a826978aa146881277f22369be1", "version": null } }, @@ -42,7 +42,7 @@ "repositoryURL": "https://github.com/SRGSSR/srgappearance-apple.git", "state": { "branch": "feature/spm-support", - "revision": "e184fccf142863c9a77b3cb5ce7f3c0221d6d8b9", + "revision": "f6a2e4ea619b77eb8f2236096e8a6c7da08dd380", "version": null } }, @@ -51,7 +51,7 @@ "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git", "state": { "branch": "feature/spm-support", - "revision": "f4973abf95e8f1809a2ad4ca6f0702662327c9a0", + "revision": "f362dff71515f75ebe098f993d6951af067516fa", "version": null } }, @@ -60,7 +60,7 @@ "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git", "state": { "branch": "feature/spm-support", - "revision": "d58e09bab288a5751c611323d9b9458a43511de7", + "revision": "f9ec437e4b76f157a879b56f239fe301f88c673e", "version": null } }, diff --git a/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved index a367436..0d7dae8 100644 --- a/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -6,7 +6,7 @@ "repositoryURL": "https://github.com/SRGSSR/FXReachability.git", "state": { "branch": "feature/spm-support", - "revision": "5d70506b9ba5c59c9b0332cc95d1e7dae6dd70a7", + "revision": "1eac916df0045630e779fa60eef22ed0d185e15f", "version": null } }, @@ -15,7 +15,7 @@ "repositoryURL": "https://github.com/SRGSSR/libextobjc.git", "state": { "branch": "feature/spm-support", - "revision": "bec0bafcb6f837267ac58c2babd9ff9e1402e091", + "revision": "30ee5b73bdf57a826978aa146881277f22369be1", "version": null } }, @@ -51,7 +51,7 @@ "repositoryURL": "https://github.com/SRGSSR/srgappearance-apple.git", "state": { "branch": "feature/spm-support", - "revision": "fa96c79d55b8175421f779de694c7941c8532dec", + "revision": "f6a2e4ea619b77eb8f2236096e8a6c7da08dd380", "version": null } }, @@ -60,7 +60,7 @@ "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git", "state": { "branch": "feature/spm-support", - "revision": "f4973abf95e8f1809a2ad4ca6f0702662327c9a0", + "revision": "f362dff71515f75ebe098f993d6951af067516fa", "version": null } }, @@ -69,7 +69,7 @@ "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git", "state": { "branch": "feature/spm-support", - "revision": "d58e09bab288a5751c611323d9b9458a43511de7", + "revision": "f9ec437e4b76f157a879b56f239fe301f88c673e", "version": null } }, From 4b2cbdadd707a698bff36c8b52b1f200d1cb2a23 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Bertholon Date: Fri, 25 Sep 2020 17:15:30 +0200 Subject: [PATCH 19/26] Update dependencies with SPM on main branches (except Mantle) --- .../xcshareddata/swiftpm/Package.resolved | 18 +++++++++--------- Package.resolved | 18 +++++++++--------- Package.swift | 6 +++--- .../xcshareddata/swiftpm/Package.resolved | 18 +++++++++--------- 4 files changed, 30 insertions(+), 30 deletions(-) diff --git a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved index 98d495b..cc1c373 100644 --- a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -5,7 +5,7 @@ "package": "FXReachability", "repositoryURL": "https://github.com/SRGSSR/FXReachability.git", "state": { - "branch": "feature/spm-support", + "branch": "master", "revision": "1eac916df0045630e779fa60eef22ed0d185e15f", "version": null } @@ -14,7 +14,7 @@ "package": "libextobjc", "repositoryURL": "https://github.com/SRGSSR/libextobjc.git", "state": { - "branch": "feature/spm-support", + "branch": "master", "revision": "30ee5b73bdf57a826978aa146881277f22369be1", "version": null } @@ -23,7 +23,7 @@ "package": "MAKVONotificationCenter", "repositoryURL": "https://github.com/SRGSSR/MAKVONotificationCenter.git", "state": { - "branch": "feature/spm-support", + "branch": "master", "revision": "60395e0601ffd4a784856b423d4cac558366276d", "version": null } @@ -41,8 +41,8 @@ "package": "SRGAppearance", "repositoryURL": "https://github.com/SRGSSR/srgappearance-apple.git", "state": { - "branch": "feature/spm-support", - "revision": "f6a2e4ea619b77eb8f2236096e8a6c7da08dd380", + "branch": "develop", + "revision": "6274a2d02f98f5624016023822b323c59545442f", "version": null } }, @@ -50,8 +50,8 @@ "package": "SRGLogger", "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git", "state": { - "branch": "feature/spm-support", - "revision": "f362dff71515f75ebe098f993d6951af067516fa", + "branch": "develop", + "revision": "0f40b67ae8f93c31271570deb16c6a5bd0a17419", "version": null } }, @@ -59,8 +59,8 @@ "package": "SRGNetwork", "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git", "state": { - "branch": "feature/spm-support", - "revision": "f9ec437e4b76f157a879b56f239fe301f88c673e", + "branch": "develop", + "revision": "98c50251b8f2c94e626e1a264eb560c52662aa57", "version": null } }, diff --git a/Package.resolved b/Package.resolved index 98d495b..cc1c373 100644 --- a/Package.resolved +++ b/Package.resolved @@ -5,7 +5,7 @@ "package": "FXReachability", "repositoryURL": "https://github.com/SRGSSR/FXReachability.git", "state": { - "branch": "feature/spm-support", + "branch": "master", "revision": "1eac916df0045630e779fa60eef22ed0d185e15f", "version": null } @@ -14,7 +14,7 @@ "package": "libextobjc", "repositoryURL": "https://github.com/SRGSSR/libextobjc.git", "state": { - "branch": "feature/spm-support", + "branch": "master", "revision": "30ee5b73bdf57a826978aa146881277f22369be1", "version": null } @@ -23,7 +23,7 @@ "package": "MAKVONotificationCenter", "repositoryURL": "https://github.com/SRGSSR/MAKVONotificationCenter.git", "state": { - "branch": "feature/spm-support", + "branch": "master", "revision": "60395e0601ffd4a784856b423d4cac558366276d", "version": null } @@ -41,8 +41,8 @@ "package": "SRGAppearance", "repositoryURL": "https://github.com/SRGSSR/srgappearance-apple.git", "state": { - "branch": "feature/spm-support", - "revision": "f6a2e4ea619b77eb8f2236096e8a6c7da08dd380", + "branch": "develop", + "revision": "6274a2d02f98f5624016023822b323c59545442f", "version": null } }, @@ -50,8 +50,8 @@ "package": "SRGLogger", "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git", "state": { - "branch": "feature/spm-support", - "revision": "f362dff71515f75ebe098f993d6951af067516fa", + "branch": "develop", + "revision": "0f40b67ae8f93c31271570deb16c6a5bd0a17419", "version": null } }, @@ -59,8 +59,8 @@ "package": "SRGNetwork", "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git", "state": { - "branch": "feature/spm-support", - "revision": "f9ec437e4b76f157a879b56f239fe301f88c673e", + "branch": "develop", + "revision": "98c50251b8f2c94e626e1a264eb560c52662aa57", "version": null } }, diff --git a/Package.swift b/Package.swift index e301264..eae8cc3 100644 --- a/Package.swift +++ b/Package.swift @@ -20,10 +20,10 @@ let package = Package( ) ], dependencies: [ - .package(name: "FXReachability", url: "https://github.com/SRGSSR/FXReachability.git", .branch("feature/spm-support")), + .package(name: "FXReachability", url: "https://github.com/SRGSSR/FXReachability.git", .branch("master")), .package(name: "Mantle", url: "https://github.com/SRGSSR/Mantle.git", .branch("swift-package-manager-support")), - .package(name: "SRGAppearance", url: "https://github.com/SRGSSR/srgappearance-apple.git", .branch("feature/spm-support")), - .package(name: "SRGNetwork", url: "https://github.com/SRGSSR/srgnetwork-apple.git", .branch("feature/spm-support")), + .package(name: "SRGAppearance", url: "https://github.com/SRGSSR/srgappearance-apple.git", .branch("develop")), + .package(name: "SRGNetwork", url: "https://github.com/SRGSSR/srgnetwork-apple.git", .branch("develop")), .package(name: "UICKeyChainStore", url: "https://github.com/kishikawakatsumi/UICKeyChainStore.git", .exact("2.2.0")) ], targets: [ diff --git a/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved index 0d7dae8..de4bfdd 100644 --- a/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -5,7 +5,7 @@ "package": "FXReachability", "repositoryURL": "https://github.com/SRGSSR/FXReachability.git", "state": { - "branch": "feature/spm-support", + "branch": "master", "revision": "1eac916df0045630e779fa60eef22ed0d185e15f", "version": null } @@ -14,7 +14,7 @@ "package": "libextobjc", "repositoryURL": "https://github.com/SRGSSR/libextobjc.git", "state": { - "branch": "feature/spm-support", + "branch": "master", "revision": "30ee5b73bdf57a826978aa146881277f22369be1", "version": null } @@ -23,7 +23,7 @@ "package": "MAKVONotificationCenter", "repositoryURL": "https://github.com/SRGSSR/MAKVONotificationCenter.git", "state": { - "branch": "feature/spm-support", + "branch": "master", "revision": "60395e0601ffd4a784856b423d4cac558366276d", "version": null } @@ -50,8 +50,8 @@ "package": "SRGAppearance", "repositoryURL": "https://github.com/SRGSSR/srgappearance-apple.git", "state": { - "branch": "feature/spm-support", - "revision": "f6a2e4ea619b77eb8f2236096e8a6c7da08dd380", + "branch": "develop", + "revision": "6274a2d02f98f5624016023822b323c59545442f", "version": null } }, @@ -59,8 +59,8 @@ "package": "SRGLogger", "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git", "state": { - "branch": "feature/spm-support", - "revision": "f362dff71515f75ebe098f993d6951af067516fa", + "branch": "develop", + "revision": "0f40b67ae8f93c31271570deb16c6a5bd0a17419", "version": null } }, @@ -68,8 +68,8 @@ "package": "SRGNetwork", "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git", "state": { - "branch": "feature/spm-support", - "revision": "f9ec437e4b76f157a879b56f239fe301f88c673e", + "branch": "develop", + "revision": "98c50251b8f2c94e626e1a264eb560c52662aa57", "version": null } }, From fe6db2164b68c6a4ca548f3648da41ab0d0d5747 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Tue, 6 Oct 2020 11:35:17 +0200 Subject: [PATCH 20/26] Switch Mantle to the official master branch --- Package.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Package.swift b/Package.swift index eae8cc3..7d1b6b6 100644 --- a/Package.swift +++ b/Package.swift @@ -21,7 +21,7 @@ let package = Package( ], dependencies: [ .package(name: "FXReachability", url: "https://github.com/SRGSSR/FXReachability.git", .branch("master")), - .package(name: "Mantle", url: "https://github.com/SRGSSR/Mantle.git", .branch("swift-package-manager-support")), + .package(name: "Mantle", url: "https://github.com/Mantle/Mantle.git", .branch("master")), .package(name: "SRGAppearance", url: "https://github.com/SRGSSR/srgappearance-apple.git", .branch("develop")), .package(name: "SRGNetwork", url: "https://github.com/SRGSSR/srgnetwork-apple.git", .branch("develop")), .package(name: "UICKeyChainStore", url: "https://github.com/kishikawakatsumi/UICKeyChainStore.git", .exact("2.2.0")) From 19b5a7d7ea3a2c832a3640141f2b4135a60118f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Wed, 7 Oct 2020 23:10:47 +0200 Subject: [PATCH 21/26] Update resolved files --- .../xcshareddata/swiftpm/Package.resolved | 6 +++--- Package.resolved | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved index cc1c373..0c2c0ef 100644 --- a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -30,10 +30,10 @@ }, { "package": "Mantle", - "repositoryURL": "https://github.com/SRGSSR/Mantle.git", + "repositoryURL": "https://github.com/Mantle/Mantle.git", "state": { - "branch": "swift-package-manager-support", - "revision": "cd18bf7f9c6c5a0d2f4aec6012fe1615b86032fe", + "branch": "master", + "revision": "d123b3aa351b6b98155ab489deaacc56e1a84b4b", "version": null } }, diff --git a/Package.resolved b/Package.resolved index cc1c373..0c2c0ef 100644 --- a/Package.resolved +++ b/Package.resolved @@ -30,10 +30,10 @@ }, { "package": "Mantle", - "repositoryURL": "https://github.com/SRGSSR/Mantle.git", + "repositoryURL": "https://github.com/Mantle/Mantle.git", "state": { - "branch": "swift-package-manager-support", - "revision": "cd18bf7f9c6c5a0d2f4aec6012fe1615b86032fe", + "branch": "master", + "revision": "d123b3aa351b6b98155ab489deaacc56e1a84b4b", "version": null } }, From b02b26ee7f93fc29d802aa8f7238f8705aaaa6c8 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Bertholon Date: Mon, 19 Oct 2020 12:06:52 +0200 Subject: [PATCH 22/26] Update to upToNextMinor released Mantle version --- .../xcshareddata/swiftpm/Package.resolved | 6 +++--- Package.resolved | 6 +++--- Package.swift | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved index 0c2c0ef..332dd4e 100644 --- a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -32,9 +32,9 @@ "package": "Mantle", "repositoryURL": "https://github.com/Mantle/Mantle.git", "state": { - "branch": "master", - "revision": "d123b3aa351b6b98155ab489deaacc56e1a84b4b", - "version": null + "branch": null, + "revision": "eb4ad298d81c023bcba20810ceffba695378ded4", + "version": "2.1.6" } }, { diff --git a/Package.resolved b/Package.resolved index 0c2c0ef..332dd4e 100644 --- a/Package.resolved +++ b/Package.resolved @@ -32,9 +32,9 @@ "package": "Mantle", "repositoryURL": "https://github.com/Mantle/Mantle.git", "state": { - "branch": "master", - "revision": "d123b3aa351b6b98155ab489deaacc56e1a84b4b", - "version": null + "branch": null, + "revision": "eb4ad298d81c023bcba20810ceffba695378ded4", + "version": "2.1.6" } }, { diff --git a/Package.swift b/Package.swift index 7d1b6b6..eea5cfb 100644 --- a/Package.swift +++ b/Package.swift @@ -21,7 +21,7 @@ let package = Package( ], dependencies: [ .package(name: "FXReachability", url: "https://github.com/SRGSSR/FXReachability.git", .branch("master")), - .package(name: "Mantle", url: "https://github.com/Mantle/Mantle.git", .branch("master")), + .package(name: "Mantle", url: "https://github.com/Mantle/Mantle.git", .upToNextMinor(from: "2.1.5")), .package(name: "SRGAppearance", url: "https://github.com/SRGSSR/srgappearance-apple.git", .branch("develop")), .package(name: "SRGNetwork", url: "https://github.com/SRGSSR/srgnetwork-apple.git", .branch("develop")), .package(name: "UICKeyChainStore", url: "https://github.com/kishikawakatsumi/UICKeyChainStore.git", .exact("2.2.0")) From 82c296e9055be4e0c97e90a4a6292690e113cf99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Thu, 22 Oct 2020 16:07:20 +0200 Subject: [PATCH 23/26] Remove unused configurations --- .../project.pbxproj | 154 ------------- .../project.pbxproj | 204 ------------------ 2 files changed, 358 deletions(-) diff --git a/Demo/SRGIdentity-demo.xcodeproj/project.pbxproj b/Demo/SRGIdentity-demo.xcodeproj/project.pbxproj index f65c84d..56f90d8 100644 --- a/Demo/SRGIdentity-demo.xcodeproj/project.pbxproj +++ b/Demo/SRGIdentity-demo.xcodeproj/project.pbxproj @@ -250,156 +250,6 @@ /* End PBXSourcesBuildPhase section */ /* Begin XCBuildConfiguration section */ - 6F0C98DA2121E14000073AB6 /* Debug-static */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "Apple Development"; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = dwarf; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = "Debug-static"; - }; - 6F0C98DC2121E14000073AB6 /* Debug-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)"; - DEVELOPMENT_TEAM = VMGRRW6SG7; - INFOPLIST_FILE = Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-demo"; - SDKROOT = iphoneos; - }; - name = "Debug-static"; - }; - 6F0C98DE2121E14600073AB6 /* Release-static */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "Apple Development"; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - VALIDATE_PRODUCT = YES; - }; - name = "Release-static"; - }; - 6F0C98E02121E14600073AB6 /* Release-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F0402F4233131AE00DA4D97 /* Demo.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)"; - DEVELOPMENT_TEAM = VMGRRW6SG7; - INFOPLIST_FILE = Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-demo"; - SDKROOT = iphoneos; - }; - name = "Release-static"; - }; 6F0EB53720FC7F58009C02CF /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -557,9 +407,7 @@ isa = XCConfigurationList; buildConfigurations = ( 6F0EB53720FC7F58009C02CF /* Debug */, - 6F0C98DA2121E14000073AB6 /* Debug-static */, 6F0EB53820FC7F58009C02CF /* Release */, - 6F0C98DE2121E14600073AB6 /* Release-static */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -568,9 +416,7 @@ isa = XCConfigurationList; buildConfigurations = ( 6F8A93EC20FDCA0900AA6434 /* Debug */, - 6F0C98DC2121E14000073AB6 /* Debug-static */, 6F8A93ED20FDCA0900AA6434 /* Release */, - 6F0C98E02121E14600073AB6 /* Release-static */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; diff --git a/Tests/SRGIdentity-tests.xcodeproj/project.pbxproj b/Tests/SRGIdentity-tests.xcodeproj/project.pbxproj index ac52b1d..937bc37 100644 --- a/Tests/SRGIdentity-tests.xcodeproj/project.pbxproj +++ b/Tests/SRGIdentity-tests.xcodeproj/project.pbxproj @@ -255,26 +255,6 @@ }; name = Debug; }; - 08266643216E2B7400FD8E84 /* Debug-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - DEVELOPMENT_TEAM = VMGRRW6SG7; - INFOPLIST_FILE = SRGIdentityTestsHost/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests-host"; - SDKROOT = iphoneos; - }; - name = "Debug-static"; - }; 08266644216E2B7400FD8E84 /* Release */ = { isa = XCBuildConfiguration; baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; @@ -294,143 +274,6 @@ }; name = Release; }; - 08266645216E2B7400FD8E84 /* Release-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - DEVELOPMENT_TEAM = VMGRRW6SG7; - INFOPLIST_FILE = SRGIdentityTestsHost/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests-host"; - SDKROOT = iphoneos; - }; - name = "Release-static"; - }; - 6F0C98DA2121E14000073AB6 /* Debug-static */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "Apple Development"; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = dwarf; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = "Debug-static"; - }; - 6F0C98DE2121E14600073AB6 /* Release-static */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "Apple Development"; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - VALIDATE_PRODUCT = YES; - }; - name = "Release-static"; - }; 6F0EB53720FC7F58009C02CF /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -570,27 +413,6 @@ }; name = Debug; }; - 6F3C7A3724C6363400199F64 /* Debug-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = SRGIdentityTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SRGIdentity-tests-host.app/SRGIdentity-tests-host"; - }; - name = "Debug-static"; - }; 6F3C7A3824C6363400199F64 /* Release */ = { isa = XCBuildConfiguration; baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; @@ -611,26 +433,6 @@ }; name = Release; }; - 6F3C7A3924C6363400199F64 /* Release-static */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6F3C7A1824C6331300199F64 /* Tests.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = SRGIdentityTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.SRGIdentity-tests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SRGIdentity-tests-host.app/SRGIdentity-tests-host"; - }; - name = "Release-static"; - }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ @@ -638,9 +440,7 @@ isa = XCConfigurationList; buildConfigurations = ( 08266642216E2B7400FD8E84 /* Debug */, - 08266643216E2B7400FD8E84 /* Debug-static */, 08266644216E2B7400FD8E84 /* Release */, - 08266645216E2B7400FD8E84 /* Release-static */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -649,9 +449,7 @@ isa = XCConfigurationList; buildConfigurations = ( 6F0EB53720FC7F58009C02CF /* Debug */, - 6F0C98DA2121E14000073AB6 /* Debug-static */, 6F0EB53820FC7F58009C02CF /* Release */, - 6F0C98DE2121E14600073AB6 /* Release-static */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -660,9 +458,7 @@ isa = XCConfigurationList; buildConfigurations = ( 6F3C7A3624C6363400199F64 /* Debug */, - 6F3C7A3724C6363400199F64 /* Debug-static */, 6F3C7A3824C6363400199F64 /* Release */, - 6F3C7A3924C6363400199F64 /* Release-static */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; From 8cec17fe070d5071e68bae32a7f1e472ec045abe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Fri, 23 Oct 2020 17:23:40 +0200 Subject: [PATCH 24/26] Bump version number --- Demo/Demo.xcconfig | 2 +- Package.swift | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Demo/Demo.xcconfig b/Demo/Demo.xcconfig index 1b6f38a..be27dba 100644 --- a/Demo/Demo.xcconfig +++ b/Demo/Demo.xcconfig @@ -1,5 +1,5 @@ // Version information -MARKETING_VERSION = 2.0.5 +MARKETING_VERSION = 3.0.0 // Deployment targets IPHONEOS_DEPLOYMENT_TARGET = 9.0 diff --git a/Package.swift b/Package.swift index eea5cfb..5c414ee 100644 --- a/Package.swift +++ b/Package.swift @@ -3,7 +3,7 @@ import PackageDescription struct ProjectSettings { - static let marketingVersion: String = "2.0.5" + static let marketingVersion: String = "3.0.0" } let package = Package( From 94f3b50a2899c8aadcebf2a422eedef886e3cb35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20De=CC=81fago?= Date: Fri, 23 Oct 2020 17:24:12 +0200 Subject: [PATCH 25/26] Update with Xcode 12.1 --- Demo/SRGIdentity-demo.xcodeproj/project.pbxproj | 2 +- .../xcshareddata/xcschemes/SRGIdentity-demo.xcscheme | 2 +- Tests/SRGIdentity-tests.xcodeproj/project.pbxproj | 2 +- .../xcshareddata/xcschemes/SRGIdentity-tests.xcscheme | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Demo/SRGIdentity-demo.xcodeproj/project.pbxproj b/Demo/SRGIdentity-demo.xcodeproj/project.pbxproj index 56f90d8..6fe420c 100644 --- a/Demo/SRGIdentity-demo.xcodeproj/project.pbxproj +++ b/Demo/SRGIdentity-demo.xcodeproj/project.pbxproj @@ -184,7 +184,7 @@ 6F0EB52820FC7F58009C02CF /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1200; + LastUpgradeCheck = 1220; ORGANIZATIONNAME = "SRG SSR"; TargetAttributes = { 6F8A93D720FDCA0800AA6434 = { diff --git a/Demo/SRGIdentity-demo.xcodeproj/xcshareddata/xcschemes/SRGIdentity-demo.xcscheme b/Demo/SRGIdentity-demo.xcodeproj/xcshareddata/xcschemes/SRGIdentity-demo.xcscheme index b405cbc..889d9b8 100644 --- a/Demo/SRGIdentity-demo.xcodeproj/xcshareddata/xcschemes/SRGIdentity-demo.xcscheme +++ b/Demo/SRGIdentity-demo.xcodeproj/xcshareddata/xcschemes/SRGIdentity-demo.xcscheme @@ -1,6 +1,6 @@ Date: Fri, 23 Oct 2020 17:24:27 +0200 Subject: [PATCH 26/26] Update dependencies to official tags --- .../xcshareddata/swiftpm/Package.resolved | 34 +++++++-------- Package.resolved | 34 +++++++-------- Package.swift | 10 ++--- .../xcshareddata/swiftpm/Package.resolved | 42 +++++++++---------- 4 files changed, 60 insertions(+), 60 deletions(-) diff --git a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved index 332dd4e..2cf9347 100644 --- a/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Demo/SRGIdentity-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -5,27 +5,27 @@ "package": "FXReachability", "repositoryURL": "https://github.com/SRGSSR/FXReachability.git", "state": { - "branch": "master", + "branch": null, "revision": "1eac916df0045630e779fa60eef22ed0d185e15f", - "version": null + "version": "1.3.2-srg5" } }, { "package": "libextobjc", "repositoryURL": "https://github.com/SRGSSR/libextobjc.git", "state": { - "branch": "master", + "branch": null, "revision": "30ee5b73bdf57a826978aa146881277f22369be1", - "version": null + "version": "0.6.0-srg3" } }, { "package": "MAKVONotificationCenter", "repositoryURL": "https://github.com/SRGSSR/MAKVONotificationCenter.git", "state": { - "branch": "master", + "branch": null, "revision": "60395e0601ffd4a784856b423d4cac558366276d", - "version": null + "version": "1.0.0-srg5" } }, { @@ -41,27 +41,27 @@ "package": "SRGAppearance", "repositoryURL": "https://github.com/SRGSSR/srgappearance-apple.git", "state": { - "branch": "develop", - "revision": "6274a2d02f98f5624016023822b323c59545442f", - "version": null + "branch": null, + "revision": "48258a788952348c7fa38b5b8e9181b25f3c87b8", + "version": "3.0.0" } }, { "package": "SRGLogger", "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git", "state": { - "branch": "develop", - "revision": "0f40b67ae8f93c31271570deb16c6a5bd0a17419", - "version": null + "branch": null, + "revision": "cfc39d1223ed039aeb7df38c6c7570977b22d1aa", + "version": "3.0.0" } }, { "package": "SRGNetwork", "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git", "state": { - "branch": "develop", - "revision": "98c50251b8f2c94e626e1a264eb560c52662aa57", - "version": null + "branch": null, + "revision": "734fe399088b2f846e9e69d48a43118f6a8dc0d2", + "version": "3.0.0" } }, { @@ -69,8 +69,8 @@ "repositoryURL": "https://github.com/kishikawakatsumi/UICKeyChainStore.git", "state": { "branch": null, - "revision": "2f0380d539ec53b66eef211b3c983749ad9e2686", - "version": "2.2.0" + "revision": "8220ac38124613fb709508426f75fbac6921e261", + "version": "2.2.1" } } ] diff --git a/Package.resolved b/Package.resolved index 332dd4e..2cf9347 100644 --- a/Package.resolved +++ b/Package.resolved @@ -5,27 +5,27 @@ "package": "FXReachability", "repositoryURL": "https://github.com/SRGSSR/FXReachability.git", "state": { - "branch": "master", + "branch": null, "revision": "1eac916df0045630e779fa60eef22ed0d185e15f", - "version": null + "version": "1.3.2-srg5" } }, { "package": "libextobjc", "repositoryURL": "https://github.com/SRGSSR/libextobjc.git", "state": { - "branch": "master", + "branch": null, "revision": "30ee5b73bdf57a826978aa146881277f22369be1", - "version": null + "version": "0.6.0-srg3" } }, { "package": "MAKVONotificationCenter", "repositoryURL": "https://github.com/SRGSSR/MAKVONotificationCenter.git", "state": { - "branch": "master", + "branch": null, "revision": "60395e0601ffd4a784856b423d4cac558366276d", - "version": null + "version": "1.0.0-srg5" } }, { @@ -41,27 +41,27 @@ "package": "SRGAppearance", "repositoryURL": "https://github.com/SRGSSR/srgappearance-apple.git", "state": { - "branch": "develop", - "revision": "6274a2d02f98f5624016023822b323c59545442f", - "version": null + "branch": null, + "revision": "48258a788952348c7fa38b5b8e9181b25f3c87b8", + "version": "3.0.0" } }, { "package": "SRGLogger", "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git", "state": { - "branch": "develop", - "revision": "0f40b67ae8f93c31271570deb16c6a5bd0a17419", - "version": null + "branch": null, + "revision": "cfc39d1223ed039aeb7df38c6c7570977b22d1aa", + "version": "3.0.0" } }, { "package": "SRGNetwork", "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git", "state": { - "branch": "develop", - "revision": "98c50251b8f2c94e626e1a264eb560c52662aa57", - "version": null + "branch": null, + "revision": "734fe399088b2f846e9e69d48a43118f6a8dc0d2", + "version": "3.0.0" } }, { @@ -69,8 +69,8 @@ "repositoryURL": "https://github.com/kishikawakatsumi/UICKeyChainStore.git", "state": { "branch": null, - "revision": "2f0380d539ec53b66eef211b3c983749ad9e2686", - "version": "2.2.0" + "revision": "8220ac38124613fb709508426f75fbac6921e261", + "version": "2.2.1" } } ] diff --git a/Package.swift b/Package.swift index 5c414ee..23629d6 100644 --- a/Package.swift +++ b/Package.swift @@ -20,11 +20,11 @@ let package = Package( ) ], dependencies: [ - .package(name: "FXReachability", url: "https://github.com/SRGSSR/FXReachability.git", .branch("master")), - .package(name: "Mantle", url: "https://github.com/Mantle/Mantle.git", .upToNextMinor(from: "2.1.5")), - .package(name: "SRGAppearance", url: "https://github.com/SRGSSR/srgappearance-apple.git", .branch("develop")), - .package(name: "SRGNetwork", url: "https://github.com/SRGSSR/srgnetwork-apple.git", .branch("develop")), - .package(name: "UICKeyChainStore", url: "https://github.com/kishikawakatsumi/UICKeyChainStore.git", .exact("2.2.0")) + .package(name: "FXReachability", url: "https://github.com/SRGSSR/FXReachability.git", .exact("1.3.2-srg5")), + .package(name: "Mantle", url: "https://github.com/Mantle/Mantle.git", .upToNextMinor(from: "2.1.6")), + .package(name: "SRGAppearance", url: "https://github.com/SRGSSR/srgappearance-apple.git", .upToNextMinor(from: "3.0.0")), + .package(name: "SRGNetwork", url: "https://github.com/SRGSSR/srgnetwork-apple.git", .upToNextMinor(from: "3.0.0")), + .package(name: "UICKeyChainStore", url: "https://github.com/kishikawakatsumi/UICKeyChainStore.git", .upToNextMinor(from: "2.2.1")) ], targets: [ .target( diff --git a/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved index de4bfdd..4dd77bc 100644 --- a/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Tests/SRGIdentity-tests.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -5,36 +5,36 @@ "package": "FXReachability", "repositoryURL": "https://github.com/SRGSSR/FXReachability.git", "state": { - "branch": "master", + "branch": null, "revision": "1eac916df0045630e779fa60eef22ed0d185e15f", - "version": null + "version": "1.3.2-srg5" } }, { "package": "libextobjc", "repositoryURL": "https://github.com/SRGSSR/libextobjc.git", "state": { - "branch": "master", + "branch": null, "revision": "30ee5b73bdf57a826978aa146881277f22369be1", - "version": null + "version": "0.6.0-srg3" } }, { "package": "MAKVONotificationCenter", "repositoryURL": "https://github.com/SRGSSR/MAKVONotificationCenter.git", "state": { - "branch": "master", + "branch": null, "revision": "60395e0601ffd4a784856b423d4cac558366276d", - "version": null + "version": "1.0.0-srg5" } }, { "package": "Mantle", - "repositoryURL": "https://github.com/SRGSSR/Mantle.git", + "repositoryURL": "https://github.com/Mantle/Mantle.git", "state": { - "branch": "swift-package-manager-support", - "revision": "cd18bf7f9c6c5a0d2f4aec6012fe1615b86032fe", - "version": null + "branch": null, + "revision": "eb4ad298d81c023bcba20810ceffba695378ded4", + "version": "2.1.6" } }, { @@ -50,27 +50,27 @@ "package": "SRGAppearance", "repositoryURL": "https://github.com/SRGSSR/srgappearance-apple.git", "state": { - "branch": "develop", - "revision": "6274a2d02f98f5624016023822b323c59545442f", - "version": null + "branch": null, + "revision": "48258a788952348c7fa38b5b8e9181b25f3c87b8", + "version": "3.0.0" } }, { "package": "SRGLogger", "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git", "state": { - "branch": "develop", - "revision": "0f40b67ae8f93c31271570deb16c6a5bd0a17419", - "version": null + "branch": null, + "revision": "cfc39d1223ed039aeb7df38c6c7570977b22d1aa", + "version": "3.0.0" } }, { "package": "SRGNetwork", "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git", "state": { - "branch": "develop", - "revision": "98c50251b8f2c94e626e1a264eb560c52662aa57", - "version": null + "branch": null, + "revision": "734fe399088b2f846e9e69d48a43118f6a8dc0d2", + "version": "3.0.0" } }, { @@ -78,8 +78,8 @@ "repositoryURL": "https://github.com/kishikawakatsumi/UICKeyChainStore.git", "state": { "branch": null, - "revision": "2f0380d539ec53b66eef211b3c983749ad9e2686", - "version": "2.2.0" + "revision": "8220ac38124613fb709508426f75fbac6921e261", + "version": "2.2.1" } } ]