From 96ac83af0f7ed06471b1afc66916f5fdc8bc3cdc Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 21 Oct 2022 19:39:45 +1100 Subject: [PATCH 01/19] Remove target-level `IPHONEOS_DEPLOYMENT_TARGET` setting This way, all the targets will use the same iOS deployment, all coming from the project-level setting. --- WordPress/WordPress.xcodeproj/project.pbxproj | 72 ------------------- 1 file changed, 72 deletions(-) diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index 85ebb5617d10..e281b320d0e1 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -25368,7 +25368,6 @@ ); INFOPLIST_FILE = Info.plist; INFOPLIST_PREPROCESS = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -25435,7 +25434,6 @@ ); INFOPLIST_FILE = Info.plist; INFOPLIST_PREPROCESS = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -25500,7 +25498,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressStatsWidgets/Supporting Files/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -25554,7 +25551,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressStatsWidgets/Supporting Files/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -25607,7 +25603,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressStatsWidgets/Supporting Files/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -25660,7 +25655,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressStatsWidgets/Supporting Files/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -25713,7 +25707,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = UITestsFoundation/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -25763,7 +25756,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = UITestsFoundation/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -25811,7 +25803,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = UITestsFoundation/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -25859,7 +25850,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = UITestsFoundation/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -25906,7 +25896,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = WordPressNotificationContentExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -25955,7 +25944,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = WordPressNotificationContentExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26002,7 +25990,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressNotificationContentExtension/Info-Internal.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26049,7 +26036,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressNotificationContentExtension/Info-Alpha.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26097,7 +26083,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = WordPressNotificationServiceExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26147,7 +26132,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = WordPressNotificationServiceExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26195,7 +26179,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressNotificationServiceExtension/Info-Internal.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26243,7 +26226,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressNotificationServiceExtension/Info-Alpha.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26297,7 +26279,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES; INFOPLIST_FILE = WordPressDraftActionExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26353,7 +26334,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES; INFOPLIST_FILE = WordPressDraftActionExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26408,7 +26388,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES; INFOPLIST_FILE = "WordPressDraftActionExtension/Info-Internal.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26463,7 +26442,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES; INFOPLIST_FILE = "WordPressDraftActionExtension/Info-Alpha.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26537,7 +26515,6 @@ "\"$(SDKROOT)/usr/include/libxml2/\"", ); INFOPLIST_FILE = JetpackShareExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "@executable_path/Frameworks", "$(inherited)", @@ -26608,7 +26585,6 @@ "\"$(SDKROOT)/usr/include/libxml2/\"", ); INFOPLIST_FILE = JetpackShareExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "@executable_path/Frameworks", "$(inherited)", @@ -26678,7 +26654,6 @@ "\"$(SDKROOT)/usr/include/libxml2/\"", ); INFOPLIST_FILE = "JetpackShareExtension/Info-Internal.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "@executable_path/Frameworks", "$(inherited)", @@ -26749,7 +26724,6 @@ "\"$(SDKROOT)/usr/include/libxml2/\"", ); INFOPLIST_FILE = "JetpackShareExtension/Info-Alpha.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "@executable_path/Frameworks", "$(inherited)", @@ -26803,7 +26777,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES; INFOPLIST_FILE = JetpackDraftActionExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26860,7 +26833,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES; INFOPLIST_FILE = JetpackDraftActionExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26916,7 +26888,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES; INFOPLIST_FILE = "JetpackDraftActionExtension/Info-Internal.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -26972,7 +26943,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES; INFOPLIST_FILE = "JetpackDraftActionExtension/Info-Alpha.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -27022,7 +26992,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = JetpackNotificationServiceExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -27073,7 +27042,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = JetpackNotificationServiceExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -27122,7 +27090,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "JetpackNotificationServiceExtension/Info-Internal.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -27171,7 +27138,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "JetpackNotificationServiceExtension/Info-Alpha.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -27226,7 +27192,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = WordPressScreenshotGeneration/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -27276,7 +27241,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = WordPressScreenshotGeneration/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -27323,7 +27287,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = WordPressScreenshotGeneration/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -27369,7 +27332,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = WordPressScreenshotGeneration/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -27474,7 +27436,6 @@ ); INFOPLIST_FILE = "WordPress-Alpha-Info.plist"; INFOPLIST_PREPROCESS = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -27594,7 +27555,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = "WordPressTodayWidget/Info-Alpha.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; PRODUCT_BUNDLE_IDENTIFIER = "org.wordpress.alpha.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -27660,7 +27620,6 @@ "\"$(SDKROOT)/usr/include/libxml2/\"", ); INFOPLIST_FILE = WordPressShareExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "@executable_path/Frameworks", "$(inherited)", @@ -27729,7 +27688,6 @@ "\"$(SDKROOT)/usr/include/libxml2/\"", ); INFOPLIST_FILE = WordPressShareExtension/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "@executable_path/Frameworks", "$(inherited)", @@ -27797,7 +27755,6 @@ "\"$(SDKROOT)/usr/include/libxml2/\"", ); INFOPLIST_FILE = "WordPressShareExtension/Info-Internal.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "@executable_path/Frameworks", "$(inherited)", @@ -27866,7 +27823,6 @@ "\"$(SDKROOT)/usr/include/libxml2/\"", ); INFOPLIST_FILE = "WordPressShareExtension/Info-Alpha.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "@executable_path/Frameworks", "$(inherited)", @@ -27974,7 +27930,6 @@ ); INFOPLIST_FILE = "WordPress-Internal-Info.plist"; INFOPLIST_PREPROCESS = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -28084,7 +28039,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = WordPressTodayWidget/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = YES; PRODUCT_BUNDLE_IDENTIFIER = "org.wordpress.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -28141,7 +28095,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = WordPressTodayWidget/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; PRODUCT_BUNDLE_IDENTIFIER = "org.wordpress.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -28198,7 +28151,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = "WordPressTodayWidget/Info-Internal.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; PRODUCT_BUNDLE_IDENTIFIER = "org.wordpress.internal.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -28244,7 +28196,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = WordPressThisWeekWidget/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -28297,7 +28248,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = WordPressThisWeekWidget/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -28349,7 +28299,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = WordPressThisWeekWidget/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -28401,7 +28350,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = WordPressThisWeekWidget/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -28453,7 +28401,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = WordPressAllTimeWidget/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -28506,7 +28453,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = WordPressAllTimeWidget/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -28558,7 +28504,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressAllTimeWidget/Info-Internal.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -28610,7 +28555,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressAllTimeWidget/Info-Alpha.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -28881,7 +28825,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressIntents/Supporting Files/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -28933,7 +28876,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressIntents/Supporting Files/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -28984,7 +28926,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressIntents/Supporting Files/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -29035,7 +28976,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "WordPressIntents/Supporting Files/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -29090,7 +29030,6 @@ ); INFOPLIST_FILE = Jetpack/Info.plist; INFOPLIST_PREPROCESS = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -29160,7 +29099,6 @@ ); INFOPLIST_FILE = Jetpack/Info.plist; INFOPLIST_PREPROCESS = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -29229,7 +29167,6 @@ ); INFOPLIST_FILE = Jetpack/Info.plist; INFOPLIST_PREPROCESS = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -29297,7 +29234,6 @@ ); INFOPLIST_FILE = Jetpack/Info.plist; INFOPLIST_PREPROCESS = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -29367,7 +29303,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = JetpackScreenshotGeneration/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -29417,7 +29352,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = JetpackScreenshotGeneration/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -29464,7 +29398,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = JetpackScreenshotGeneration/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -29510,7 +29443,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = JetpackScreenshotGeneration/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -29564,7 +29496,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = WordPressUITests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -29614,7 +29545,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = WordPressUITests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -29661,7 +29591,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = WordPressUITests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -29706,7 +29635,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; INFOPLIST_FILE = WordPressUITests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", From 8c34b62787d0bb8195c93aa16c37731e350e1134 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 21 Oct 2022 19:44:24 +1100 Subject: [PATCH 02/19] Extract `IPHONEOS_DEPLOYMENT_TARGET` to `SDKVersions.xcconfig` --- WordPress/WordPress.xcodeproj/project.pbxproj | 4 ---- config/SDKVersions.xcconfig | 1 + 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index e281b320d0e1..3dc2c15c96e8 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -27384,7 +27384,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; OTHER_CFLAGS = ( "-Wno-incomplete-umbrella", "-Wno-format-security", @@ -27877,7 +27876,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; OTHER_CFLAGS = ( "-Wno-incomplete-umbrella", "-Wno-format-security", @@ -28643,7 +28641,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; ONLY_ACTIVE_ARCH = YES; OTHER_CFLAGS = ( "-Wno-incomplete-umbrella", @@ -28700,7 +28697,6 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; OTHER_CFLAGS = ( "-Wno-incomplete-umbrella", "-Wno-format-security", diff --git a/config/SDKVersions.xcconfig b/config/SDKVersions.xcconfig index 9d7a1c81abb3..c6dad88ab6a3 100644 --- a/config/SDKVersions.xcconfig +++ b/config/SDKVersions.xcconfig @@ -7,3 +7,4 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = $(inherited) $(WP_IOS_SDK) // TODO: Move to dedicated file WARNING_CFLAGS = -Wno-nullability-completeness +IPHONEOS_DEPLOYMENT_TARGET = 13.0 From 9f588258b41403a8514c74c414b35a0dd949e4d4 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 21 Oct 2022 19:45:09 +1100 Subject: [PATCH 03/19] Bump `IPHONEOS_DEPLOYMENT_TARGET` from 13.0 to 14.0 --- config/SDKVersions.xcconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/SDKVersions.xcconfig b/config/SDKVersions.xcconfig index c6dad88ab6a3..0a7ce8b64085 100644 --- a/config/SDKVersions.xcconfig +++ b/config/SDKVersions.xcconfig @@ -7,4 +7,4 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = $(inherited) $(WP_IOS_SDK) // TODO: Move to dedicated file WARNING_CFLAGS = -Wno-nullability-completeness -IPHONEOS_DEPLOYMENT_TARGET = 13.0 +IPHONEOS_DEPLOYMENT_TARGET = 14.0 From 357e080109e8221b154ad1dff0897af68a04cdbc Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 21 Oct 2022 20:00:14 +1100 Subject: [PATCH 04/19] Add `RELEASE-NOTES.txt` entry for dropping iOS 13 --- RELEASE-NOTES.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt index deae949c22e5..266a4580c8a6 100644 --- a/RELEASE-NOTES.txt +++ b/RELEASE-NOTES.txt @@ -4,6 +4,7 @@ * [*] [internal] Database access change: the 'new Core Data context structure' feature flag is turned on by default. [#19433] * [***] [Jetpack-only] Widgets are now on Jetpack. Find Today, This Week, and All Time Widgets to display your Stats on your home screen. [#19479] * [*] Block Editor: Fixed iOS Voice Control support within Image block captions. [https://github.com/WordPress/gutenberg/pull/44850] +* [***] Dropped support for iOS 13. Now supporting iOS 14.0 and above. [#19496] 21.0 ----- From 04a9a441ed646c6192048272b2026c4c7f636ad5 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Tue, 25 Oct 2022 20:30:49 +1100 Subject: [PATCH 05/19] Use `CLLocationManager` instance property for `authorizationStatus` The class property was deprecated in iOS 14. Xcode gave the following warning (which we treat as an error): > Deprecated. Use the instance property `authorizationStatus` instead. --- WordPress/Classes/Utility/LocationService.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WordPress/Classes/Utility/LocationService.m b/WordPress/Classes/Utility/LocationService.m index d4726753ae86..9ba184613958 100644 --- a/WordPress/Classes/Utility/LocationService.m +++ b/WordPress/Classes/Utility/LocationService.m @@ -58,7 +58,7 @@ - (BOOL)locationServicesDisabled - (BOOL)locationServicesDenied { - CLAuthorizationStatus status = [CLLocationManager authorizationStatus]; + CLAuthorizationStatus status = self.locationManager.authorizationStatus; if (status == kCLAuthorizationStatusRestricted || status == kCLAuthorizationStatusDenied) { return YES; } From 6de433b2f8f3aab91739996d8e3053bfacca6d13 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Tue, 25 Oct 2022 20:35:31 +1100 Subject: [PATCH 06/19] Replace deprecated `CLLocationManagerDelegate` method The deprecation warning in Xcode wasn't informative, but the deprecation annotation suggested what to do: ``` /* * locationManager:didChangeAuthorizationStatus: * * Discussion: * Invoked when the authorization status changes for this application. */ - (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status API_DEPRECATED_WITH_REPLACEMENT("-locationManagerDidChangeAuthorization:", ios(4.2, 14.0), macos(10.7, 11.0), watchos(1.0, 7.0), tvos(9.0, 14.0)); ``` --- WordPress/Classes/Utility/LocationService.m | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/WordPress/Classes/Utility/LocationService.m b/WordPress/Classes/Utility/LocationService.m index 9ba184613958..a1624197bbea 100644 --- a/WordPress/Classes/Utility/LocationService.m +++ b/WordPress/Classes/Utility/LocationService.m @@ -201,8 +201,9 @@ - (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray [self getAddressForLocation:location]; } -- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status +- (void)locationManagerDidChangeAuthorization:(CLLocationManager *)manager { + CLAuthorizationStatus status = manager.authorizationStatus; if (status == kCLAuthorizationStatusRestricted || status == kCLAuthorizationStatusDenied) { [self serviceFailed:[NSError errorWithDomain:LocationServiceErrorDomain code:LocationServiceErrorPermissionDenied userInfo:nil]]; } From a60d3d994d9dd978a5d2f5b65332b449a1586997 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Tue, 25 Oct 2022 21:10:34 +1100 Subject: [PATCH 07/19] Remove iOS 13 only `SchedulingCalendarViewController` --- .../SchedulingCalendarViewController.swift | 253 ------------------ .../SchedulingDatePickerViewController.swift | 2 +- .../SchedulingViewControllerPresenter.swift | 12 +- WordPress/WordPress.xcodeproj/project.pbxproj | 14 - ...chedulingCalendarViewControllerTests.swift | 70 ----- .../TimePickerViewControllerTests.swift | 28 -- 6 files changed, 7 insertions(+), 372 deletions(-) delete mode 100644 WordPress/Classes/ViewRelated/Post/Scheduling/SchedulingCalendarViewController.swift delete mode 100644 WordPress/WordPressTest/ViewRelated/Post/Controllers/SchedulingCalendarViewControllerTests.swift delete mode 100644 WordPress/WordPressTest/ViewRelated/Post/Controllers/TimePickerViewControllerTests.swift diff --git a/WordPress/Classes/ViewRelated/Post/Scheduling/SchedulingCalendarViewController.swift b/WordPress/Classes/ViewRelated/Post/Scheduling/SchedulingCalendarViewController.swift deleted file mode 100644 index 69ccb16c5c04..000000000000 --- a/WordPress/Classes/ViewRelated/Post/Scheduling/SchedulingCalendarViewController.swift +++ /dev/null @@ -1,253 +0,0 @@ -import Foundation -import Gridicons - -// MARK: - Date Picker -@available(iOS, deprecated: 14.0, message: "Use SchedulingDatePickerViewController, based on UIDatePicker.inline") -class SchedulingCalendarViewController: UIViewController, CalendarSheet, DateCoordinatorHandler, SchedulingViewControllerProtocol { - - var coordinator: DateCoordinator? = nil - - let chosenValueRow = ChosenValueRow(frame: .zero) - - lazy var calendarMonthView: CalendarMonthView = { - var calendar = Calendar.current - if let timeZone = coordinator?.timeZone { - calendar.timeZone = timeZone - } - let calendarMonthView = CalendarMonthView(calendar: calendar) - calendarMonthView.translatesAutoresizingMaskIntoConstraints = false - - let selectedDate = coordinator?.date ?? Date() - calendarMonthView.selectedDate = selectedDate - calendarMonthView.updated = { [weak self] date in - var newDate = date - - // Since the date from the calendar will not include hours and minutes, replace with the original date (either the current, or previously entered date) - var calendar = Calendar.current - if let timeZone = self?.coordinator?.timeZone { - calendar.timeZone = timeZone - } - let selectedComponents = calendar.dateComponents([.hour, .minute], from: selectedDate) - newDate = calendar.date(bySettingHour: selectedComponents.hour ?? 0, minute: selectedComponents.minute ?? 0, second: 0, of: newDate) ?? newDate - - self?.coordinator?.date = newDate - self?.chosenValueRow.detailLabel.text = self?.coordinator?.dateFormatter.string(from: date) - } - - return calendarMonthView - }() - - private lazy var closeButton: UIBarButtonItem = { - let item = UIBarButtonItem(image: .gridicon(.cross), - style: .plain, - target: self, - action: #selector(closeButtonPressed)) - item.accessibilityLabel = NSLocalizedString("Close", comment: "Accessibility label for the date picker's close button.") - return item - }() - private lazy var publishButton = UIBarButtonItem(title: NSLocalizedString("Publish immediately", comment: "Immediately publish button title"), style: .plain, target: self, action: #selector(SchedulingCalendarViewController.publishImmediately)) - - override func viewDidLoad() { - super.viewDidLoad() - - chosenValueRow.titleLabel.text = NSLocalizedString("Choose a date", comment: "Label for Publish date picker") - - let nextButton = UIBarButtonItem(title: NSLocalizedString("Next", comment: "Next screen button title"), style: .plain, target: self, action: #selector(nextButtonPressed)) - navigationItem.setRightBarButton(nextButton, animated: false) - - setup(topView: chosenValueRow, pickerView: calendarMonthView) - - calendarMonthView.setContentCompressionResistancePriority(.defaultHigh, for: .vertical) - calendarMonthView.setContentHuggingPriority(.defaultHigh, for: .horizontal) - calendarMonthView.setContentHuggingPriority(.defaultHigh, for: .vertical) - - setupForAccessibility() - } - - override func viewDidLayoutSubviews() { - super.viewDidLayoutSubviews() - calculatePreferredSize() - } - - private func calculatePreferredSize() { - let targetSize = CGSize(width: view.bounds.width, - height: UIView.layoutFittingCompressedSize.height) - preferredContentSize = view.systemLayoutSizeFitting(targetSize) - } - - override func prepare(for segue: UIStoryboardSegue, sender: Any?) { - (segue.destination as? DateCoordinatorHandler)?.coordinator = coordinator - } - - override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) { - super.traitCollectionDidChange(previousTraitCollection) - resetNavigationButtons() - } - - @objc func closeButtonPressed() { - dismiss(animated: true, completion: nil) - } - - override func accessibilityPerformEscape() -> Bool { - dismiss(animated: true, completion: nil) - return true - } - - @objc func publishImmediately() { - coordinator?.updated(nil) - navigationController?.dismiss(animated: true, completion: nil) - } - - @objc func nextButtonPressed() { - let vc = TimePickerViewController() - vc.coordinator = coordinator - navigationController?.pushViewController(vc, animated: true) - } - - @objc private func resetNavigationButtons() { - let includeCloseButton = traitCollection.verticalSizeClass == .compact || - (isVoiceOverOrSwitchControlRunning && navigationController?.modalPresentationStyle != .popover) - - if includeCloseButton { - navigationItem.leftBarButtonItems = [closeButton, publishButton] - } else { - navigationItem.leftBarButtonItems = [publishButton] - } - } -} - -extension SchedulingCalendarViewController { - @objc func presentationController(forPresented presented: UIViewController, presenting: UIViewController?, source: UIViewController) -> UIPresentationController? { - let presentationController = PartScreenPresentationController(presentedViewController: presented, presenting: presenting) - presentationController.delegate = self - return presentationController - } - - @objc func adaptivePresentationStyle(for: UIPresentationController, traitCollection: UITraitCollection) -> UIModalPresentationStyle { - return traitCollection.verticalSizeClass == .compact ? .overFullScreen : .none - } -} - -// MARK: Accessibility - -private extension SchedulingCalendarViewController { - func setupForAccessibility() { - let notificationNames = [ - UIAccessibility.voiceOverStatusDidChangeNotification, - UIAccessibility.switchControlStatusDidChangeNotification - ] - NotificationCenter.default.addObserver(self, - selector: #selector(resetNavigationButtons), - names: notificationNames, - object: nil) - } - - var isVoiceOverOrSwitchControlRunning: Bool { - UIAccessibility.isVoiceOverRunning || UIAccessibility.isSwitchControlRunning - } -} - -// MARK: - Time Picker - -class TimePickerViewController: UIViewController, DatePickerSheet, DateCoordinatorHandler { - - var coordinator: DateCoordinator? = nil - - let chosenValueRow = ChosenValueRow(frame: .zero) - - private lazy var datePicker: UIDatePicker = { - let datePicker = UIDatePicker() - - if #available(iOS 13.4, *) { - datePicker.preferredDatePickerStyle = .wheels - } - - datePicker.datePickerMode = .time - datePicker.timeZone = coordinator?.timeZone - datePicker.addTarget(self, action: #selector(timePickerChanged(_:)), for: .valueChanged) - if let date = coordinator?.date { - datePicker.date = date - } - return datePicker - }() - - override func viewDidLoad() { - super.viewDidLoad() - chosenValueRow.titleLabel.text = NSLocalizedString("Choose a time", comment: "Label for Publish time picker") - chosenValueRow.detailLabel.text = coordinator?.dateTimeFormatter.string(from: datePicker.date) - let doneButton = UIBarButtonItem(title: NSLocalizedString("Done", comment: "Label for Done button"), style: .done, target: self, action: #selector(done)) - - setup(topView: chosenValueRow, pickerView: datePicker) - - navigationItem.setRightBarButton(doneButton, animated: false) - } - - // MARK: Change Selectors - @objc func timePickerChanged(_ sender: Any) { - chosenValueRow.detailLabel.text = coordinator?.dateTimeFormatter.string(from: datePicker.date) - coordinator?.date = datePicker.date - } - - @objc func done() { - coordinator?.updated(coordinator?.date) - navigationController?.dismiss(animated: true, completion: nil) - } -} - -// MARK: DatePickerSheet Protocol -protocol CalendarSheet { - func configureStackView(topView: UIView, pickerView: UIView) -> UIView -} - -extension CalendarSheet { - /// Constructs a view with `topView` on top and `pickerView` on bottom - /// - Parameter topView: A view to be shown above `pickerView` - /// - Parameter pickerView: A view to be shown on the bottom - func configureStackView(topView: UIView, pickerView: UIView) -> UIView { - pickerView.translatesAutoresizingMaskIntoConstraints = false - - let pickerWrapperView = UIView() - pickerWrapperView.addSubview(pickerView) - - let sideConstraints: [NSLayoutConstraint] = [ - pickerView.leftAnchor.constraint(equalTo: pickerWrapperView.leftAnchor), - pickerView.rightAnchor.constraint(equalTo: pickerWrapperView.rightAnchor) - ] - - // Allow these to break on larger screen sizes and just center the content - sideConstraints.forEach() { constraint in - constraint.priority = .defaultHigh - } - - NSLayoutConstraint.activate([ - pickerView.centerXAnchor.constraint(equalTo: pickerWrapperView.safeCenterXAnchor), - pickerView.topAnchor.constraint(equalTo: pickerWrapperView.topAnchor), - pickerView.bottomAnchor.constraint(equalTo: pickerWrapperView.bottomAnchor) - ]) - - NSLayoutConstraint.activate(sideConstraints) - - let stackView = UIStackView(arrangedSubviews: [ - topView, - pickerWrapperView - ]) - stackView.axis = .vertical - stackView.translatesAutoresizingMaskIntoConstraints = false - - return stackView - } -} - -extension CalendarSheet where Self: UIViewController { - /// Adds `topView` and `pickerView` to view hierarchy + standard styling for the view controller's view - /// - Parameter topView: A view to show above `pickerView` (see `ChosenValueRow`) - /// - Parameter pickerView: A view to show below the top view - func setup(topView: UIView, pickerView: UIView) { - WPStyleGuide.configureColors(view: view, tableView: nil) - - let stackView = configureStackView(topView: topView, pickerView: pickerView) - - view.addSubview(stackView) - view.pinSubviewToSafeArea(stackView) - } -} diff --git a/WordPress/Classes/ViewRelated/Post/Scheduling/SchedulingDatePickerViewController.swift b/WordPress/Classes/ViewRelated/Post/Scheduling/SchedulingDatePickerViewController.swift index ce9a68378a9f..472e8257e50d 100644 --- a/WordPress/Classes/ViewRelated/Post/Scheduling/SchedulingDatePickerViewController.swift +++ b/WordPress/Classes/ViewRelated/Post/Scheduling/SchedulingDatePickerViewController.swift @@ -61,7 +61,7 @@ class SchedulingDatePickerViewController: UIViewController, DatePickerSheet, Dat return item }() - private lazy var publishButton = UIBarButtonItem(title: NSLocalizedString("Publish immediately", comment: "Immediately publish button title"), style: .plain, target: self, action: #selector(SchedulingCalendarViewController.publishImmediately)) + private lazy var publishButton = UIBarButtonItem(title: NSLocalizedString("Publish immediately", comment: "Immediately publish button title"), style: .plain, target: self, action: #selector(SchedulingDatePickerViewController.publishImmediately)) override func viewDidLoad() { super.viewDidLoad() diff --git a/WordPress/Classes/ViewRelated/Post/Scheduling/SchedulingViewControllerPresenter.swift b/WordPress/Classes/ViewRelated/Post/Scheduling/SchedulingViewControllerPresenter.swift index 68097f4dd0c2..dfb0bf7ab04c 100644 --- a/WordPress/Classes/ViewRelated/Post/Scheduling/SchedulingViewControllerPresenter.swift +++ b/WordPress/Classes/ViewRelated/Post/Scheduling/SchedulingViewControllerPresenter.swift @@ -49,12 +49,7 @@ class PresentableSchedulingViewControllerProvider: PresentableSchedulingViewCont } static func schedulingViewController(with viewModel: PublishSettingsViewModel, updated: @escaping (Date?) -> Void) -> SchedulingViewControllerProtocol { - let schedulingViewController: SchedulingViewControllerProtocol - if #available(iOS 14.0, *) { - schedulingViewController = SchedulingDatePickerViewController() - } else { - schedulingViewController = SchedulingCalendarViewController() - } + let schedulingViewController = SchedulingDatePickerViewController() schedulingViewController.coordinator = DateCoordinator(date: viewModel.date, timeZone: viewModel.timeZone, dateFormatter: viewModel.dateFormatter, @@ -64,6 +59,11 @@ class PresentableSchedulingViewControllerProvider: PresentableSchedulingViewCont } } +// FIXME: This protocol is redundant as of dropping iOS 13. +// +// It was used as a facade in between `SchedulingCalendarViewController` (iOS 13) and +// `SchedulingDatePickerViewController` (iOS 14+). `SchedulingCalendarViewController` has been +// deleted so we can remove this as well. protocol SchedulingViewControllerProtocol: UIViewController, UIViewControllerTransitioningDelegate, UIAdaptivePresentationControllerDelegate { var coordinator: DateCoordinator? { get set } } diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index 3dc2c15c96e8..6f7ca5e5377b 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -3467,11 +3467,9 @@ F53FF3A823EA723D001AD596 /* ActionRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = F53FF3A723EA723D001AD596 /* ActionRow.swift */; }; F53FF3AA23EA725C001AD596 /* SiteIconView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F53FF3A923EA725C001AD596 /* SiteIconView.swift */; }; F543AF5723A84E4D0022F595 /* PublishSettingsControllerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F543AF5623A84E4D0022F595 /* PublishSettingsControllerTests.swift */; }; - F543AF5923A84F200022F595 /* SchedulingCalendarViewControllerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F543AF5823A84F200022F595 /* SchedulingCalendarViewControllerTests.swift */; }; F551E7F523F6EA3100751212 /* FloatingActionButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = F551E7F423F6EA3100751212 /* FloatingActionButton.swift */; }; F551E7F723FC9A5C00751212 /* Collection+RotateTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F551E7F623FC9A5C00751212 /* Collection+RotateTests.swift */; }; F565190323CF6D1D003FACAF /* WKCookieJarTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F565190223CF6D1D003FACAF /* WKCookieJarTests.swift */; }; - F5660D03235CF73800020B1E /* SchedulingCalendarViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5660CFF235CE82100020B1E /* SchedulingCalendarViewController.swift */; }; F5660D07235D114500020B1E /* CalendarCollectionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5660D06235D114500020B1E /* CalendarCollectionView.swift */; }; F5660D09235D1CDD00020B1E /* CalendarMonthView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5660D08235D1CDD00020B1E /* CalendarMonthView.swift */; }; F56A33332538C0ED00E2AEF3 /* MySiteViewController+FAB.swift in Sources */ = {isa = PBXBuildFile; fileRef = F56A33322538C0ED00E2AEF3 /* MySiteViewController+FAB.swift */; }; @@ -3480,7 +3478,6 @@ F580C3C123D22E2D0038E243 /* PreviewDeviceLabel.swift in Sources */ = {isa = PBXBuildFile; fileRef = F580C3C023D22E2D0038E243 /* PreviewDeviceLabel.swift */; }; F580C3CB23D8F9B40038E243 /* AbstractPost+Dates.swift in Sources */ = {isa = PBXBuildFile; fileRef = F580C3CA23D8F9B40038E243 /* AbstractPost+Dates.swift */; }; F582060223A85495005159A9 /* SiteDateFormatters.swift in Sources */ = {isa = PBXBuildFile; fileRef = F582060123A85495005159A9 /* SiteDateFormatters.swift */; }; - F582060423A88379005159A9 /* TimePickerViewControllerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F582060323A88379005159A9 /* TimePickerViewControllerTests.swift */; }; F5844B6B235EAF3D007C6557 /* PartScreenPresentationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5844B6A235EAF3D007C6557 /* PartScreenPresentationController.swift */; }; F59AAC10235E430F00385EE6 /* ChosenValueRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = F59AAC0F235E430E00385EE6 /* ChosenValueRow.swift */; }; F59AAC16235EA46D00385EE6 /* LightNavigationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F59AAC15235EA46D00385EE6 /* LightNavigationController.swift */; }; @@ -4295,7 +4292,6 @@ FABB22BD2602FC2C00C8785C /* WPTableViewHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 5D6C4B071B603E03005E3C43 /* WPTableViewHandler.m */; }; FABB22BE2602FC2C00C8785C /* JetpackScanThreatViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = C78543D125B889CC006CEAFB /* JetpackScanThreatViewModel.swift */; }; FABB22BF2602FC2C00C8785C /* PublicizeConnectionStatsRecordValue+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40EE947D2213213F00CD264F /* PublicizeConnectionStatsRecordValue+CoreDataClass.swift */; }; - FABB22C02602FC2C00C8785C /* SchedulingCalendarViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5660CFF235CE82100020B1E /* SchedulingCalendarViewController.swift */; }; FABB22C12602FC2C00C8785C /* DomainsService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1702BBDF1CF3034E00766A33 /* DomainsService.swift */; }; FABB22C22602FC2C00C8785C /* PasswordAlertController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8B1CF00E2433902700578582 /* PasswordAlertController.swift */; }; FABB22C32602FC2C00C8785C /* ReaderTagsFooter.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA7F92B725E61C7E00502D2A /* ReaderTagsFooter.swift */; }; @@ -8667,11 +8663,9 @@ F53FF3A723EA723D001AD596 /* ActionRow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActionRow.swift; sourceTree = ""; }; F53FF3A923EA725C001AD596 /* SiteIconView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SiteIconView.swift; sourceTree = ""; }; F543AF5623A84E4D0022F595 /* PublishSettingsControllerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PublishSettingsControllerTests.swift; sourceTree = ""; }; - F543AF5823A84F200022F595 /* SchedulingCalendarViewControllerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SchedulingCalendarViewControllerTests.swift; sourceTree = ""; }; F551E7F423F6EA3100751212 /* FloatingActionButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FloatingActionButton.swift; sourceTree = ""; }; F551E7F623FC9A5C00751212 /* Collection+RotateTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Collection+RotateTests.swift"; sourceTree = ""; }; F565190223CF6D1D003FACAF /* WKCookieJarTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WKCookieJarTests.swift; sourceTree = ""; }; - F5660CFF235CE82100020B1E /* SchedulingCalendarViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SchedulingCalendarViewController.swift; sourceTree = ""; }; F5660D06235D114500020B1E /* CalendarCollectionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CalendarCollectionView.swift; sourceTree = ""; }; F5660D08235D1CDD00020B1E /* CalendarMonthView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CalendarMonthView.swift; sourceTree = ""; }; F56A33322538C0ED00E2AEF3 /* MySiteViewController+FAB.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "MySiteViewController+FAB.swift"; sourceTree = ""; }; @@ -8680,7 +8674,6 @@ F580C3C023D22E2D0038E243 /* PreviewDeviceLabel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PreviewDeviceLabel.swift; sourceTree = ""; }; F580C3CA23D8F9B40038E243 /* AbstractPost+Dates.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "AbstractPost+Dates.swift"; sourceTree = ""; }; F582060123A85495005159A9 /* SiteDateFormatters.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SiteDateFormatters.swift; sourceTree = ""; }; - F582060323A88379005159A9 /* TimePickerViewControllerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimePickerViewControllerTests.swift; sourceTree = ""; }; F5844B6A235EAF3D007C6557 /* PartScreenPresentationController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PartScreenPresentationController.swift; sourceTree = ""; }; F59AAC0F235E430E00385EE6 /* ChosenValueRow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChosenValueRow.swift; sourceTree = ""; }; F59AAC15235EA46D00385EE6 /* LightNavigationController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LightNavigationController.swift; sourceTree = ""; }; @@ -11539,8 +11532,6 @@ children = ( 8B939F4223832E5D00ACCB0F /* PostListViewControllerTests.swift */, F543AF5623A84E4D0022F595 /* PublishSettingsControllerTests.swift */, - F543AF5823A84F200022F595 /* SchedulingCalendarViewControllerTests.swift */, - F582060323A88379005159A9 /* TimePickerViewControllerTests.swift */, F5D0A65123CCD3B600B20D27 /* PreviewWebKitViewControllerTests.swift */, ); name = Controllers; @@ -16739,7 +16730,6 @@ F5660D06235D114500020B1E /* CalendarCollectionView.swift */, F59AAC0F235E430E00385EE6 /* ChosenValueRow.swift */, F5660D08235D1CDD00020B1E /* CalendarMonthView.swift */, - F5660CFF235CE82100020B1E /* SchedulingCalendarViewController.swift */, 03216EC5279946CA00D444CA /* SchedulingDatePickerViewController.swift */, 03216ECB27995F3500D444CA /* SchedulingViewControllerPresenter.swift */, F5844B6A235EAF3D007C6557 /* PartScreenPresentationController.swift */, @@ -20739,7 +20729,6 @@ 5D6C4B091B603E03005E3C43 /* WPTableViewHandler.m in Sources */, C78543D225B889CC006CEAFB /* JetpackScanThreatViewModel.swift in Sources */, 40EE947F2213213F00CD264F /* PublicizeConnectionStatsRecordValue+CoreDataClass.swift in Sources */, - F5660D03235CF73800020B1E /* SchedulingCalendarViewController.swift in Sources */, 1702BBE01CF3034E00766A33 /* DomainsService.swift in Sources */, 8B1CF00F2433902700578582 /* PasswordAlertController.swift in Sources */, 1770BD0D267A368100D5F8C0 /* BloggingRemindersPushPromptViewController.swift in Sources */, @@ -22593,7 +22582,6 @@ D81C2F5E20F88CE5002AE1F1 /* MarkAsSpamActionTests.swift in Sources */, D848CC1520FF33FC00A9038F /* NotificationContentRangeTests.swift in Sources */, D826D67F211D21C700A5D8FE /* NullMockUserDefaults.swift in Sources */, - F582060423A88379005159A9 /* TimePickerViewControllerTests.swift in Sources */, 7E987F58210811CC00CAFB88 /* NotificationContentRouterTests.swift in Sources */, E1C9AA561C10427100732665 /* MathTest.swift in Sources */, 93A379EC19FFBF7900415023 /* KeychainTest.m in Sources */, @@ -22601,7 +22589,6 @@ 436D5655212209D600CEAA33 /* RegisterDomainDetailsServiceProxyMock.swift in Sources */, F1450CF92437EEBB00A28BFE /* MediaRequestAuthenticatorTests.swift in Sources */, D821C817210036D9002ED995 /* ActivityContentFactoryTests.swift in Sources */, - F543AF5923A84F200022F595 /* SchedulingCalendarViewControllerTests.swift in Sources */, 931D26F719ED7F7500114F17 /* ReaderPostServiceTest.m in Sources */, B5772AC61C9C84900031F97E /* GravatarServiceTests.swift in Sources */, 937E3AB61E3EBE1600CDA01A /* PostEditorStateTests.swift in Sources */, @@ -23479,7 +23466,6 @@ FABB22BD2602FC2C00C8785C /* WPTableViewHandler.m in Sources */, FABB22BE2602FC2C00C8785C /* JetpackScanThreatViewModel.swift in Sources */, FABB22BF2602FC2C00C8785C /* PublicizeConnectionStatsRecordValue+CoreDataClass.swift in Sources */, - FABB22C02602FC2C00C8785C /* SchedulingCalendarViewController.swift in Sources */, FABB22C12602FC2C00C8785C /* DomainsService.swift in Sources */, 98BAA7C426F925F70073A2F9 /* InlineEditableSingleLineCell.swift in Sources */, FABB22C22602FC2C00C8785C /* PasswordAlertController.swift in Sources */, diff --git a/WordPress/WordPressTest/ViewRelated/Post/Controllers/SchedulingCalendarViewControllerTests.swift b/WordPress/WordPressTest/ViewRelated/Post/Controllers/SchedulingCalendarViewControllerTests.swift deleted file mode 100644 index 2fb4ce31e19b..000000000000 --- a/WordPress/WordPressTest/ViewRelated/Post/Controllers/SchedulingCalendarViewControllerTests.swift +++ /dev/null @@ -1,70 +0,0 @@ -import XCTest -@testable import WordPress - -class SchedulingCalendarViewControllerTests: XCTestCase { - - var calendarVC: SchedulingCalendarViewController? - var navigationController: UINavigationController? - - override func setUp() { - calendarVC = SchedulingCalendarViewController() - navigationController = UINavigationController(rootViewController: calendarVC!) - } - - override func tearDown() { - // Put teardown code here. This method is called after the invocation of each test method in the class. - } - - func testVCCoordinatorPassing() { - let dateValue = Date() - let coordinator = DateCoordinator(date: dateValue, timeZone: TimeZone(secondsFromGMT: 0)!, dateFormatter: DateFormatter(), dateTimeFormatter: DateFormatter(), updated: { _ in }) - calendarVC?.coordinator = coordinator - calendarVC?.nextButtonPressed() - - let coordinatorDate = (navigationController?.topViewController as? DateCoordinatorHandler)?.coordinator?.date - - XCTAssertEqual(coordinatorDate, dateValue, "Passed date should be the same") - } - - /// Tests that the hours and minutes are retained even with a date change - func testVCCoordinatorComponents() { - let dateValue = Date() - let coordinator = DateCoordinator(date: dateValue, timeZone: TimeZone(secondsFromGMT: 0)!, dateFormatter: DateFormatter(), dateTimeFormatter: DateFormatter(), updated: { _ in }) - calendarVC?.coordinator = coordinator - calendarVC?.calendarMonthView.updated?(dateValue.addingTimeInterval(24000)) - calendarVC?.nextButtonPressed() - - let coordinatorDate = (navigationController?.topViewController as? DateCoordinatorHandler)?.coordinator?.date - - XCTAssertNotNil(coordinatorDate, "Coordinator date should not be nil") - - let newComponents = Calendar.current.dateComponents([.hour, .minute], from: coordinatorDate!) - let originalComponents = Calendar.current.dateComponents([.hour, .minute], from: dateValue) - - XCTAssertNotEqual(dateValue, coordinatorDate, "Dates should not be equal.") - XCTAssertEqual(newComponents, originalComponents, "Date should retain its hours and minutes") - } - - /// Tests that proper calendar is used based on site time zone insted of device time zone - func testVCCoordinatorCalendar() { - - let currentDate = Date() - let dateValue = Calendar.current.date(bySettingHour: 0, minute: 0, second: 0, of: currentDate)! - let timeZone = TimeZone(secondsFromGMT: TimeZone.current.secondsFromGMT(for: currentDate) - 60 * 60)! - - let coordinator = DateCoordinator(date: nil, timeZone: timeZone, dateFormatter: DateFormatter(), dateTimeFormatter: DateFormatter(), updated: { _ in }) - calendarVC?.coordinator = coordinator - calendarVC?.calendarMonthView.updated?(dateValue) - calendarVC?.nextButtonPressed() - - let coordinatorDate = calendarVC?.coordinator?.date - - var calendar = Calendar.current - calendar.timeZone = timeZone - - let convertedComponents = calendar.dateComponents([.year, .month, .day], from: dateValue) - let coordinatorComponents = calendar.dateComponents([.year, .month, .day], from: coordinatorDate!) - - XCTAssertEqual(coordinatorComponents, convertedComponents, "Date should be converted to proper day of time zone.") - } -} diff --git a/WordPress/WordPressTest/ViewRelated/Post/Controllers/TimePickerViewControllerTests.swift b/WordPress/WordPressTest/ViewRelated/Post/Controllers/TimePickerViewControllerTests.swift deleted file mode 100644 index a3b9c4af3ef1..000000000000 --- a/WordPress/WordPressTest/ViewRelated/Post/Controllers/TimePickerViewControllerTests.swift +++ /dev/null @@ -1,28 +0,0 @@ -import XCTest -@testable import WordPress - -class TimePickerViewControllerTests: XCTestCase { - - var timePickerVC: TimePickerViewController? - var navigationController: UINavigationController? - - override func setUp() { - timePickerVC = TimePickerViewController() - navigationController = UINavigationController(rootViewController: timePickerVC!) - } - - override func tearDown() { - // Put teardown code here. This method is called after the invocation of each test method in the class. - } - - func testVCCoordinatorPassing() { - let dateValue = Date() - let coordinator = DateCoordinator(date: dateValue, timeZone: TimeZone(secondsFromGMT: 0)!, dateFormatter: DateFormatter(), dateTimeFormatter: DateFormatter(), updated: { _ in }) - timePickerVC?.coordinator = coordinator - timePickerVC?.timePickerChanged(0) - - let coordinatorDate = (navigationController?.topViewController as? DateCoordinatorHandler)?.coordinator?.date - - XCTAssertEqual(coordinatorDate, dateValue, "Passed date should be the same") - } -} From 1ba9de3fb7333b46ce7eea164b9b2d7a1f9ecb94 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Tue, 25 Oct 2022 14:39:49 +1100 Subject: [PATCH 08/19] Remove `WordPressTodayWidget` in preparation to drop iOS 13 This legacy widget extension has been superseded by `WordPressStatsWidgets`. --- Podfile | 12 - Podfile.lock | 2 +- .../Today Widgets/Data/TodayWidgetStats.swift | 1 - WordPress/Info.plist | 2 - WordPress/WordPress-Internal-Info.plist | 2 - WordPress/WordPress.xcodeproj/project.pbxproj | 489 ----------------- .../xcschemes/WordPressTodayWidget.xcscheme | 126 ----- .../WordPressTodayWidget/Info-Alpha.plist | 33 -- .../WordPressTodayWidget/Info-Internal.plist | 33 -- WordPress/WordPressTodayWidget/Info.plist | 33 -- .../MainInterface.storyboard | 43 -- .../TodayViewController.swift | 499 ------------------ .../TodayWidgetPrefix.pch | 8 - .../Tracks+TodayWidget.swift | 37 -- .../WordPressTodayWidget-Alpha.entitlements | 14 - .../WordPressTodayWidget-Bridging-Header.h | 2 - ...WordPressTodayWidget-Internal.entitlements | 14 - .../WordPressTodayWidget.entitlements | 14 - WordPress/Wordpress-Alpha-Info.plist | 2 - fastlane/Fastfile | 1 - 20 files changed, 1 insertion(+), 1366 deletions(-) delete mode 100644 WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressTodayWidget.xcscheme delete mode 100644 WordPress/WordPressTodayWidget/Info-Alpha.plist delete mode 100644 WordPress/WordPressTodayWidget/Info-Internal.plist delete mode 100644 WordPress/WordPressTodayWidget/Info.plist delete mode 100644 WordPress/WordPressTodayWidget/MainInterface.storyboard delete mode 100644 WordPress/WordPressTodayWidget/TodayViewController.swift delete mode 100644 WordPress/WordPressTodayWidget/TodayWidgetPrefix.pch delete mode 100644 WordPress/WordPressTodayWidget/Tracks+TodayWidget.swift delete mode 100644 WordPress/WordPressTodayWidget/WordPressTodayWidget-Alpha.entitlements delete mode 100644 WordPress/WordPressTodayWidget/WordPressTodayWidget-Bridging-Header.h delete mode 100644 WordPress/WordPressTodayWidget/WordPressTodayWidget-Internal.entitlements delete mode 100644 WordPress/WordPressTodayWidget/WordPressTodayWidget.entitlements diff --git a/Podfile b/Podfile index f67dc87eadb9..a35ca3aac51f 100644 --- a/Podfile +++ b/Podfile @@ -305,18 +305,6 @@ target 'JetpackDraftActionExtension' do wordpress_ui end -## Today Widget -## ============ -## -target 'WordPressTodayWidget' do - project 'WordPress/WordPress.xcodeproj' - - shared_with_all_pods - shared_with_networking_pods - - wordpress_ui -end - ## All Time Widget ## ============ ## diff --git a/Podfile.lock b/Podfile.lock index 004733dab4c0..5217a2b53728 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -880,6 +880,6 @@ SPEC CHECKSUMS: ZendeskSupportSDK: 3a8e508ab1d9dd22dc038df6c694466414e037ba ZIPFoundation: ae5b4b813d216d3bf0a148773267fff14bd51d37 -PODFILE CHECKSUM: 6e0bd6cd6b3071e696c6a4d965d8c3a3b625b149 +PODFILE CHECKSUM: 9aa46b42e7b64d8c7bfe36b8b3ab46b28d328e5e COCOAPODS: 1.11.2 diff --git a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Data/TodayWidgetStats.swift b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Data/TodayWidgetStats.swift index 54ae521fc410..2585ccc3d0de 100644 --- a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Data/TodayWidgetStats.swift +++ b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Data/TodayWidgetStats.swift @@ -3,7 +3,6 @@ import Foundation /// This struct contains data for the Insights Today stats to be displayed in the corresponding widget. /// The data is stored in a plist for the widget to access. -/// This file is shared with WordPressTodayWidget, which accesses the data when it is viewed. /// struct TodayWidgetStats: Codable { diff --git a/WordPress/Info.plist b/WordPress/Info.plist index 7cc1f3a3412c..291a11539656 100644 --- a/WordPress/Info.plist +++ b/WordPress/Info.plist @@ -550,8 +550,6 @@ Nunito-Bold.ttf EBGaramond-Regular.ttf - UIApplicationShortcutWidget - org.wordpress.WordPressTodayWidget UIBackgroundModes fetch diff --git a/WordPress/WordPress-Internal-Info.plist b/WordPress/WordPress-Internal-Info.plist index 220da175c5e1..ec04baaa4aab 100644 --- a/WordPress/WordPress-Internal-Info.plist +++ b/WordPress/WordPress-Internal-Info.plist @@ -492,8 +492,6 @@ Noticons.ttf - UIApplicationShortcutWidget - org.wordpress.internal.WordPressTodayWidget UIBackgroundModes fetch diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index 6f7ca5e5377b..e0e9c083b3fe 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -118,7 +118,6 @@ 0107E16428FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16528FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16628FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; - 0107E16728FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16828FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16928FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16A28FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; @@ -140,7 +139,6 @@ 0148CC2B2859C87000CF5D96 /* BlogServiceMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0148CC2A2859C87000CF5D96 /* BlogServiceMock.swift */; }; 01CE5007290A889F00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; 01CE5008290A88BD00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; - 01CE5009290A88BE00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; 01CE500A290A88BE00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; 01CE500B290A88BF00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; 01CE500C290A88BF00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; @@ -260,7 +258,6 @@ 08F8CD371EBD2AA80049D0C0 /* test-image-device-photo-gps.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 08F8CD341EBD2AA80049D0C0 /* test-image-device-photo-gps.jpg */; }; 08F8CD391EBD2C970049D0C0 /* MediaURLExporter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 08F8CD381EBD2C970049D0C0 /* MediaURLExporter.swift */; }; 08F8CD3B1EBD2D020049D0C0 /* MediaURLExporterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 08F8CD3A1EBD2D020049D0C0 /* MediaURLExporterTests.swift */; }; - 092C3800275E718000BBBDD9 /* AppLocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F2656A025AF4DFA0073A832 /* AppLocalizedString.swift */; }; 092C3801275E718100BBBDD9 /* AppLocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F2656A025AF4DFA0073A832 /* AppLocalizedString.swift */; }; 092C3802275E718100BBBDD9 /* AppLocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F2656A025AF4DFA0073A832 /* AppLocalizedString.swift */; }; 098B8576275E76FE004D299F /* AppLocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F2656A025AF4DFA0073A832 /* AppLocalizedString.swift */; }; @@ -284,7 +281,6 @@ 1707CE421F3121750020B7FE /* UICollectionViewCell+Tint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1707CE411F3121750020B7FE /* UICollectionViewCell+Tint.swift */; }; 170BEC872391530D0017AEC1 /* FeatureFlagOverrideStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A09B98238FE13B0022AE0D /* FeatureFlagOverrideStore.swift */; }; 170BEC88239153110017AEC1 /* FeatureFlagOverrideStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A09B98238FE13B0022AE0D /* FeatureFlagOverrideStore.swift */; }; - 170BEC89239153120017AEC1 /* FeatureFlagOverrideStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A09B98238FE13B0022AE0D /* FeatureFlagOverrideStore.swift */; }; 170BEC8A239153160017AEC1 /* FeatureFlagOverrideStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A09B98238FE13B0022AE0D /* FeatureFlagOverrideStore.swift */; }; 170BEC8B239153160017AEC1 /* FeatureFlagOverrideStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A09B98238FE13B0022AE0D /* FeatureFlagOverrideStore.swift */; }; 170BEC8C2391533D0017AEC1 /* KeyValueDatabase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1751E5901CE0E552000CA08D /* KeyValueDatabase.swift */; }; @@ -376,7 +372,6 @@ 17523381246C4F9200870B4A /* HomepageSettingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17523380246C4F9200870B4A /* HomepageSettingsViewController.swift */; }; 1752D4F9238D702D002B79E7 /* KeyValueDatabase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1751E5901CE0E552000CA08D /* KeyValueDatabase.swift */; }; 1752D4FA238D702E002B79E7 /* KeyValueDatabase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1751E5901CE0E552000CA08D /* KeyValueDatabase.swift */; }; - 1752D4FB238D702F002B79E7 /* KeyValueDatabase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1751E5901CE0E552000CA08D /* KeyValueDatabase.swift */; }; 1752D4FC238D703A002B79E7 /* KeyValueDatabase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1751E5901CE0E552000CA08D /* KeyValueDatabase.swift */; }; 175507B327A062980038ED28 /* PublicizeConnectionURLMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 175507B227A062980038ED28 /* PublicizeConnectionURLMatcher.swift */; }; 175507B427A062980038ED28 /* PublicizeConnectionURLMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 175507B227A062980038ED28 /* PublicizeConnectionURLMatcher.swift */; }; @@ -956,7 +951,6 @@ 4322A20D203E1885004EA740 /* SignupUsernameTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4322A20C203E1885004EA740 /* SignupUsernameTableViewController.swift */; }; 4326191522FCB9DC003C7642 /* MurielColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4326191422FCB9DC003C7642 /* MurielColor.swift */; }; 4326191622FCB9F8003C7642 /* MurielColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4326191422FCB9DC003C7642 /* MurielColor.swift */; }; - 4326191722FCB9F9003C7642 /* MurielColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4326191422FCB9DC003C7642 /* MurielColor.swift */; }; 4326191822FCB9F9003C7642 /* MurielColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4326191422FCB9DC003C7642 /* MurielColor.swift */; }; 4326191922FCB9FA003C7642 /* MurielColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4326191422FCB9DC003C7642 /* MurielColor.swift */; }; 4328FED12314788C000EC32A /* ColorPalette.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 435B76292297484200511813 /* ColorPalette.xcassets */; }; @@ -973,7 +967,6 @@ 433ADC19223B2A0200ED9DE1 /* TextBundleWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 43EE90EE223B1028006A33E9 /* TextBundleWrapper.m */; }; 433ADC1A223B2A7D00ED9DE1 /* TextBundleWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 43EE90EE223B1028006A33E9 /* TextBundleWrapper.m */; }; 433ADC1B223B2A7E00ED9DE1 /* TextBundleWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 43EE90EE223B1028006A33E9 /* TextBundleWrapper.m */; }; - 433ADC1C223B2A7E00ED9DE1 /* TextBundleWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 43EE90EE223B1028006A33E9 /* TextBundleWrapper.m */; }; 433ADC1D223B2A7F00ED9DE1 /* TextBundleWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 43EE90EE223B1028006A33E9 /* TextBundleWrapper.m */; }; 4348C88321002FBD00735DC0 /* QuickStartTourGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4348C88221002FBD00735DC0 /* QuickStartTourGuide.swift */; }; 4349B0AC218A45270034118A /* RevisionsTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4349B0AB218A45270034118A /* RevisionsTableViewController.swift */; }; @@ -992,9 +985,6 @@ 435B762B2297484200511813 /* ColorPalette.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 435B76292297484200511813 /* ColorPalette.xcassets */; }; 435B762C2297484200511813 /* ColorPalette.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 435B76292297484200511813 /* ColorPalette.xcassets */; }; 435D101A2130C2AB00BB2AA8 /* BlogDetailsViewController+FancyAlerts.swift in Sources */ = {isa = PBXBuildFile; fileRef = 435D10192130C2AB00BB2AA8 /* BlogDetailsViewController+FancyAlerts.swift */; }; - 436110D922C3ED18000773AD /* UIColor+MurielColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 435B762122973D0600511813 /* UIColor+MurielColors.swift */; }; - 436110DA22C3ED44000773AD /* FeatureFlag.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1D690151F828FF000200E30 /* FeatureFlag.swift */; }; - 436110DB22C3ED4C000773AD /* BuildConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1D690141F828FF000200E30 /* BuildConfiguration.swift */; }; 436110DC22C41ADB000773AD /* UIColor+MurielColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 435B762122973D0600511813 /* UIColor+MurielColors.swift */; }; 436110DD22C41AFD000773AD /* FeatureFlag.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1D690151F828FF000200E30 /* FeatureFlag.swift */; }; 436110DE22C41B02000773AD /* BuildConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1D690141F828FF000200E30 /* BuildConfiguration.swift */; }; @@ -1793,7 +1783,6 @@ 830A58D92793AB4500CDE94F /* LoginEpilogueAnimator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 830A58D72793AB4400CDE94F /* LoginEpilogueAnimator.swift */; }; 8320BDE5283D9359009DF2DE /* BlogService+BloggingPrompts.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8320BDE4283D9359009DF2DE /* BlogService+BloggingPrompts.swift */; }; 8320BDE6283D9359009DF2DE /* BlogService+BloggingPrompts.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8320BDE4283D9359009DF2DE /* BlogService+BloggingPrompts.swift */; }; - 8323789528526E6B003F4443 /* AppConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA25F9FD2609AA830005E08F /* AppConfiguration.swift */; }; 8323789628526E6C003F4443 /* AppConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA25F9FD2609AA830005E08F /* AppConfiguration.swift */; }; 8323789728526E6C003F4443 /* AppConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA25F9FD2609AA830005E08F /* AppConfiguration.swift */; }; 8323789828526E6D003F4443 /* AppConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA25F9FD2609AA830005E08F /* AppConfiguration.swift */; }; @@ -1823,7 +1812,6 @@ 839B150C2795DEE0009F5E77 /* UIView+Margins.swift in Sources */ = {isa = PBXBuildFile; fileRef = 839B150A2795DEE0009F5E77 /* UIView+Margins.swift */; }; 83A1B19528AFE47900E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; 83A1B19628AFE47A00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; - 83A1B19728AFE47A00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; 83A1B19828AFE47B00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; 83A1B19928AFE47B00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; 83A1B19A28AFE47C00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; @@ -2036,7 +2024,6 @@ 934098C3271957A600B3E77E /* SiteStatsInsightsDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 934098C2271957A600B3E77E /* SiteStatsInsightsDelegate.swift */; }; 934098C4271957A600B3E77E /* SiteStatsInsightsDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 934098C2271957A600B3E77E /* SiteStatsInsightsDelegate.swift */; }; 93414DE51E2D25AE003143A3 /* PostEditorState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93414DE41E2D25AE003143A3 /* PostEditorState.swift */; }; - 934884AB19B73BA6004028D8 /* Constants.m in Sources */ = {isa = PBXBuildFile; fileRef = B5CC05F51962150600975CAC /* Constants.m */; }; 93594BD5191D2F5A0079E6B2 /* stats-batch.json in Resources */ = {isa = PBXBuildFile; fileRef = 93594BD4191D2F5A0079E6B2 /* stats-batch.json */; }; 9363113F19FA996700B0C739 /* AccountServiceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9363113E19FA996700B0C739 /* AccountServiceTests.swift */; }; 937250EE267A492D0086075F /* StatsPeriodStoreTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 937250ED267A492D0086075F /* StatsPeriodStoreTests.swift */; }; @@ -2047,14 +2034,11 @@ 938466B92683CA0E00A538DC /* ReferrerDetailsViewModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 938466B82683CA0E00A538DC /* ReferrerDetailsViewModelTests.swift */; }; 938CF3DC1EF1BE6800AF838E /* CocoaLumberjack.swift in Sources */ = {isa = PBXBuildFile; fileRef = 938CF3DB1EF1BE6800AF838E /* CocoaLumberjack.swift */; }; 938CF3DD1EF1BE7F00AF838E /* CocoaLumberjack.swift in Sources */ = {isa = PBXBuildFile; fileRef = 938CF3DB1EF1BE6800AF838E /* CocoaLumberjack.swift */; }; - 938CF3DE1EF1BE8000AF838E /* CocoaLumberjack.swift in Sources */ = {isa = PBXBuildFile; fileRef = 938CF3DB1EF1BE6800AF838E /* CocoaLumberjack.swift */; }; 93A379EC19FFBF7900415023 /* KeychainTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 93A379EB19FFBF7900415023 /* KeychainTest.m */; }; 93A3F7DE1843F6F00082FEEA /* CoreTelephony.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 93A3F7DD1843F6F00082FEEA /* CoreTelephony.framework */; }; 93B853231B4416A30064FE72 /* WPAnalyticsTrackerAutomatticTracksTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 93B853221B4416A30064FE72 /* WPAnalyticsTrackerAutomatticTracksTests.m */; }; 93C1147F18EC5DD500DAC95C /* AccountService.m in Sources */ = {isa = PBXBuildFile; fileRef = 93C1147E18EC5DD500DAC95C /* AccountService.m */; }; 93C1148518EDF6E100DAC95C /* BlogService.m in Sources */ = {isa = PBXBuildFile; fileRef = 93C1148418EDF6E100DAC95C /* BlogService.m */; }; - 93C2075A1CC7FF9C00C94D04 /* Tracks.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FA22821C99F6180016CA7C /* Tracks.swift */; }; - 93C2075D1CC7FFC800C94D04 /* Tracks+TodayWidget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93C2075C1CC7FFC800C94D04 /* Tracks+TodayWidget.swift */; }; 93C4864F181043D700A24725 /* ActivityLogDetailViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 93069F581762410B000C966D /* ActivityLogDetailViewController.m */; }; 93C486511810445D00A24725 /* ActivityLogViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 93069F55176237A4000C966D /* ActivityLogViewController.m */; }; 93C882A11EEB18D700227A59 /* html_page_with_link_to_rsd_non_standard.html in Resources */ = {isa = PBXBuildFile; fileRef = 93C882981EEB18D700227A59 /* html_page_with_link_to_rsd_non_standard.html */; }; @@ -2066,11 +2050,6 @@ 93CDC72226CD342900C8A3A8 /* DestructiveAlertHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93CDC72026CD342900C8A3A8 /* DestructiveAlertHelper.swift */; }; 93D86B981C691E71003D8E3E /* LocalCoreDataServiceTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 59A9AB391B4C3ECD00A433DC /* LocalCoreDataServiceTests.m */; }; 93DEB88219E5BF7100F9546D /* TodayExtensionService.m in Sources */ = {isa = PBXBuildFile; fileRef = 93DEB88119E5BF7100F9546D /* TodayExtensionService.m */; }; - 93E3D3C819ACE8E300B1C509 /* SFHFKeychainUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 292CECFF1027259000BD407D /* SFHFKeychainUtils.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 93E5283C19A7741A003A1A9C /* NotificationCenter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 93E5283B19A7741A003A1A9C /* NotificationCenter.framework */; }; - 93E5284119A7741A003A1A9C /* TodayViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93E5284019A7741A003A1A9C /* TodayViewController.swift */; }; - 93E5284319A7741A003A1A9C /* MainInterface.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 93E5284219A7741A003A1A9C /* MainInterface.storyboard */; }; - 93E5284619A7741A003A1A9C /* WordPressTodayWidget.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = 93E5283A19A7741A003A1A9C /* WordPressTodayWidget.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; 93E5285619A77BAC003A1A9C /* NotificationCenter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 93E5283B19A7741A003A1A9C /* NotificationCenter.framework */; }; 93E63369272AC532009DACF8 /* LoginEpilogueChooseSiteTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93E63368272AC532009DACF8 /* LoginEpilogueChooseSiteTableViewCell.swift */; }; 93E6336A272AC532009DACF8 /* LoginEpilogueChooseSiteTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93E63368272AC532009DACF8 /* LoginEpilogueChooseSiteTableViewCell.swift */; }; @@ -2182,7 +2161,6 @@ 98579BC8203DD86F004086E4 /* EpilogueSectionHeaderFooter.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98579BC6203DD86E004086E4 /* EpilogueSectionHeaderFooter.xib */; }; 985ED0E223C686CA00B8D06A /* ColorPalette.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 435B76292297484200511813 /* ColorPalette.xcassets */; }; 985ED0E423C6950600B8D06A /* WidgetStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 985ED0E323C6950600B8D06A /* WidgetStyles.swift */; }; - 985ED0E723C6964500B8D06A /* WidgetStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 985ED0E323C6950600B8D06A /* WidgetStyles.swift */; }; 985ED0E823C6964600B8D06A /* WidgetStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 985ED0E323C6950600B8D06A /* WidgetStyles.swift */; }; 98622E9F274C59A400061A5F /* ReaderDetailCommentsTableViewDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98622E9E274C59A400061A5F /* ReaderDetailCommentsTableViewDelegate.swift */; }; 98622EA0274C59A400061A5F /* ReaderDetailCommentsTableViewDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98622E9E274C59A400061A5F /* ReaderDetailCommentsTableViewDelegate.swift */; }; @@ -2201,10 +2179,8 @@ 986FF2A0214198D9005B28EC /* String+Ranges.swift in Sources */ = {isa = PBXBuildFile; fileRef = B55FFCF91F034F1A0070812C /* String+Ranges.swift */; }; 98712D1B23DA1C7E00555316 /* WidgetNoConnectionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */; }; 98712D1C23DA1C7E00555316 /* WidgetNoConnectionCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */; }; - 98712D1D23DA1D0800555316 /* WidgetNoConnectionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */; }; 98712D1E23DA1D0900555316 /* WidgetNoConnectionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */; }; 98712D1F23DA1D0A00555316 /* WidgetNoConnectionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */; }; - 98712D2023DA1D1000555316 /* WidgetNoConnectionCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */; }; 98712D2123DA1D1100555316 /* WidgetNoConnectionCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */; }; 98712D2223DA1D1200555316 /* WidgetNoConnectionCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */; }; 9872CB30203B8A730066A293 /* SignupEpilogueTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9872CB2F203B8A730066A293 /* SignupEpilogueTableViewController.swift */; }; @@ -2233,22 +2209,16 @@ 988AC37922F10E2C00BC1433 /* FileDownloadsStatsRecordValue+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988AC37822F10E2C00BC1433 /* FileDownloadsStatsRecordValue+CoreDataClass.swift */; }; 988F073523D0CE8800AC67A6 /* WidgetUrlCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */; }; 988F073623D0CE8800AC67A6 /* WidgetUrlCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */; }; - 988F073723D0D15D00AC67A6 /* WidgetUrlCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */; }; 988F073823D0D15D00AC67A6 /* WidgetUrlCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */; }; 988F073923D0D15E00AC67A6 /* WidgetUrlCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */; }; - 988F073A23D0D16700AC67A6 /* WidgetUrlCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */; }; 988F073B23D0D16800AC67A6 /* WidgetUrlCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */; }; 988F073C23D0D16800AC67A6 /* WidgetUrlCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */; }; 988FD74A279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */; }; 988FD74B279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */; }; 98906502237CC1DF00218CD2 /* WidgetUnconfiguredCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FB237CC1DE00218CD2 /* WidgetUnconfiguredCell.swift */; }; - 98906503237CC1DF00218CD2 /* WidgetUnconfiguredCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FB237CC1DE00218CD2 /* WidgetUnconfiguredCell.swift */; }; 98906504237CC1DF00218CD2 /* WidgetUnconfiguredCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989064FC237CC1DE00218CD2 /* WidgetUnconfiguredCell.xib */; }; - 98906505237CC1DF00218CD2 /* WidgetUnconfiguredCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989064FC237CC1DE00218CD2 /* WidgetUnconfiguredCell.xib */; }; 98906506237CC1DF00218CD2 /* WidgetTwoColumnCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FD237CC1DE00218CD2 /* WidgetTwoColumnCell.swift */; }; - 98906507237CC1DF00218CD2 /* WidgetTwoColumnCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FD237CC1DE00218CD2 /* WidgetTwoColumnCell.swift */; }; 98906508237CC1DF00218CD2 /* WidgetTwoColumnCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989064FE237CC1DE00218CD2 /* WidgetTwoColumnCell.xib */; }; - 98906509237CC1DF00218CD2 /* WidgetTwoColumnCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989064FE237CC1DE00218CD2 /* WidgetTwoColumnCell.xib */; }; 98921EF721372E12004949AA /* MediaCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98921EF621372E12004949AA /* MediaCoordinator.swift */; }; 9895401126C1F39300EDEB5A /* EditCommentTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */; }; 9895401226C1F39300EDEB5A /* EditCommentTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */; }; @@ -2307,7 +2277,6 @@ 98BFF57E23984345008A1DCB /* AllTimeWidgetStats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98BFF57D23984344008A1DCB /* AllTimeWidgetStats.swift */; }; 98BFF57F23984345008A1DCB /* AllTimeWidgetStats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98BFF57D23984344008A1DCB /* AllTimeWidgetStats.swift */; }; 98C0CE9B23C559C800D0F27C /* Double+Stats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 981C82B52193A7B900A06E84 /* Double+Stats.swift */; }; - 98C0CE9C23C559C800D0F27C /* Double+Stats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 981C82B52193A7B900A06E84 /* Double+Stats.swift */; }; 98CAD296221B4ED2003E8F45 /* StatSection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98CAD295221B4ED1003E8F45 /* StatSection.swift */; }; 98D31B8F2396ED7F009CFF43 /* NotificationCenter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 93E5283B19A7741A003A1A9C /* NotificationCenter.framework */; }; 98D31B992396ED7F009CFF43 /* WordPressAllTimeWidget.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = 98D31B8E2396ED7E009CFF43 /* WordPressAllTimeWidget.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; @@ -2334,8 +2303,6 @@ 98E55019265C977E00B4BE9A /* ReaderDetailLikesView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98E55018265C977E00B4BE9A /* ReaderDetailLikesView.xib */; }; 98E5501A265C977E00B4BE9A /* ReaderDetailLikesView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98E55018265C977E00B4BE9A /* ReaderDetailLikesView.xib */; }; 98E58A2F2360D23400E5534B /* TodayWidgetStats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98E58A2E2360D23400E5534B /* TodayWidgetStats.swift */; }; - 98E58A302360D23400E5534B /* TodayWidgetStats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98E58A2E2360D23400E5534B /* TodayWidgetStats.swift */; }; - 98E58A442361019300E5534B /* Pods_WordPressTodayWidget.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 98E58A432361019300E5534B /* Pods_WordPressTodayWidget.framework */; }; 98E5D4922620C2B40074A56A /* UserProfileSectionHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98E5D4912620C2B40074A56A /* UserProfileSectionHeader.xib */; }; 98E5D4932620C2B40074A56A /* UserProfileSectionHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98E5D4912620C2B40074A56A /* UserProfileSectionHeader.xib */; }; 98EB126A20D2DC2500D2D5B5 /* NoResultsViewController+Model.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98EB126920D2DC2500D2D5B5 /* NoResultsViewController+Model.swift */; }; @@ -2356,7 +2323,6 @@ 9A09F915230C3E9700F42AB7 /* StoreFetchingStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A09F914230C3E9700F42AB7 /* StoreFetchingStatus.swift */; }; 9A09F91C230C49FD00F42AB7 /* StatsStackViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9A09F91A230C49FD00F42AB7 /* StatsStackViewCell.xib */; }; 9A09F91E230C4C0200F42AB7 /* StatsGhostTableViewRows.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A09F91D230C4C0200F42AB7 /* StatsGhostTableViewRows.swift */; }; - 9A144AC822FD6A650069DD71 /* ColorPalette.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 435B76292297484200511813 /* ColorPalette.xcassets */; }; 9A162F2321C26D7500FDC035 /* RevisionPreviewViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A162F2221C26D7500FDC035 /* RevisionPreviewViewController.swift */; }; 9A162F2521C26F5F00FDC035 /* UIViewController+ChildViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A162F2421C26F5F00FDC035 /* UIViewController+ChildViewController.swift */; }; 9A162F2921C271D300FDC035 /* RevisionBrowserState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A162F2821C271D300FDC035 /* RevisionBrowserState.swift */; }; @@ -5172,14 +5138,12 @@ FAD2539026116A1600EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD2539126116A1600EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD2544226116CEA00EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2544126116CEA00EDAF88 /* AppStyleGuide.swift */; }; - FAD2566C2611AEC300EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD2566D2611AEC500EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD2566E2611AEC600EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD2566F2611AEC700EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD256932611B01700EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; FAD256A62611B01A00EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; FAD256B82611B01B00EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; - FAD256CA2611B01C00EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; FAD256EE2611B01F00EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; FAD257132611B04D00EDAF88 /* UIColor+JetpackColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD257112611B04D00EDAF88 /* UIColor+JetpackColors.swift */; }; FAD257F42611B54100EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; @@ -5428,20 +5392,6 @@ remoteGlobalIDString = 932225A61C7CE50300443B02; remoteInfo = WordPressShare; }; - 93E5284419A7741A003A1A9C /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */; - proxyType = 1; - remoteGlobalIDString = 93E5283919A7741A003A1A9C; - remoteInfo = WordPressTodayWidget; - }; - 93E5284719A7741A003A1A9C /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */; - proxyType = 1; - remoteGlobalIDString = 93E5283919A7741A003A1A9C; - remoteInfo = WordPressTodayWidget; - }; 98A3C2F8239997DA0048D38D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */; @@ -5499,7 +5449,6 @@ 7358E6BF210BD318002323EB /* WordPressNotificationServiceExtension.appex in Embed Foundation Extensions */, 98D31B992396ED7F009CFF43 /* WordPressAllTimeWidget.appex in Embed Foundation Extensions */, 932225B11C7CE50300443B02 /* WordPressShareExtension.appex in Embed Foundation Extensions */, - 93E5284619A7741A003A1A9C /* WordPressTodayWidget.appex in Embed Foundation Extensions */, 3F526C5C2538CF2B0069706C /* WordPressStatsWidgets.appex in Embed Foundation Extensions */, ); name = "Embed Foundation Extensions"; @@ -5729,7 +5678,6 @@ 0A9610F828B2E56300076EBA /* UserSuggestion+Comparable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UserSuggestion+Comparable.swift"; sourceTree = ""; }; 0A9687BB28B40771009DCD2F /* FullScreenCommentReplyViewModelMock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FullScreenCommentReplyViewModelMock.swift; sourceTree = ""; }; 0EAD25F1E69B6B91783C4963 /* Pods-WordPressAllTimeWidget.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressAllTimeWidget.debug.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressAllTimeWidget/Pods-WordPressAllTimeWidget.debug.xcconfig"; sourceTree = ""; }; - 0F01F606071B0B9BD9DB34DE /* Pods-WordPressTodayWidget.release-alpha.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressTodayWidget.release-alpha.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressTodayWidget/Pods-WordPressTodayWidget.release-alpha.xcconfig"; sourceTree = ""; }; 10BBFF34EBDA2F9B8CB48DF6 /* Pods-WordPressUITests.release-internal.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressUITests.release-internal.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressUITests/Pods-WordPressUITests.release-internal.xcconfig"; sourceTree = ""; }; 131D0EE49695795ECEDAA446 /* Pods-WordPressTest.release-alpha.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressTest.release-alpha.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressTest/Pods-WordPressTest.release-alpha.xcconfig"; sourceTree = ""; }; 150B6590614A28DF9AD25491 /* Pods-Apps-Jetpack.release-alpha.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Apps-Jetpack.release-alpha.xcconfig"; path = "../Pods/Target Support Files/Pods-Apps-Jetpack/Pods-Apps-Jetpack.release-alpha.xcconfig"; sourceTree = ""; }; @@ -6103,11 +6051,9 @@ 32F2565F25012D3F006B8BC4 /* LinearGradientView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LinearGradientView.swift; sourceTree = ""; }; 33D5016BDA00B45DFCAF3818 /* Pods-WordPressNotificationServiceExtension.release-internal.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressNotificationServiceExtension.release-internal.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressNotificationServiceExtension/Pods-WordPressNotificationServiceExtension.release-internal.xcconfig"; sourceTree = ""; }; 33E5165A9AB08C676380FA34 /* Pods-JetpackNotificationServiceExtension.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-JetpackNotificationServiceExtension.debug.xcconfig"; path = "../Pods/Target Support Files/Pods-JetpackNotificationServiceExtension/Pods-JetpackNotificationServiceExtension.debug.xcconfig"; sourceTree = ""; }; - 368127CE6F1CA15EC198147D /* Pods-WordPressTodayWidget.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressTodayWidget.debug.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressTodayWidget/Pods-WordPressTodayWidget.debug.xcconfig"; sourceTree = ""; }; 37022D8F1981BF9200F322B7 /* VerticallyStackedButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VerticallyStackedButton.h; sourceTree = ""; }; 37022D901981BF9200F322B7 /* VerticallyStackedButton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = VerticallyStackedButton.m; sourceTree = ""; }; 374CB16115B93C0800DD0EBC /* AudioToolbox.framework */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; - 37E3F5EA2ED7005A5E0BBEC3 /* Pods-WordPressTodayWidget.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressTodayWidget.release.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressTodayWidget/Pods-WordPressTodayWidget.release.xcconfig"; sourceTree = ""; }; 37EAAF4C1A11799A006D6306 /* CircularImageView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CircularImageView.swift; sourceTree = ""; }; 3AB6A3B516053EA8D0BC3B17 /* Pods-JetpackStatsWidgets.release-alpha.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-JetpackStatsWidgets.release-alpha.xcconfig"; path = "../Pods/Target Support Files/Pods-JetpackStatsWidgets/Pods-JetpackStatsWidgets.release-alpha.xcconfig"; sourceTree = ""; }; 3C8DE270EF0498A2129349B0 /* Pods-JetpackNotificationServiceExtension.release-alpha.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-JetpackNotificationServiceExtension.release-alpha.xcconfig"; path = "../Pods/Target Support Files/Pods-JetpackNotificationServiceExtension/Pods-JetpackNotificationServiceExtension.release-alpha.xcconfig"; sourceTree = ""; }; @@ -6521,7 +6467,6 @@ 5903AE1C19B60AB9009D5354 /* WPButtonForNavigationBar.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WPButtonForNavigationBar.h; sourceTree = ""; usesTabs = 0; }; 590E873A1CB8205700D1B734 /* PostListViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PostListViewController.swift; sourceTree = ""; }; 591232681CCEAA5100B86207 /* AbstractPostListViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = AbstractPostListViewController.swift; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.swift; }; - 591252291A38AE9C00468279 /* TodayWidgetPrefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TodayWidgetPrefix.pch; sourceTree = ""; }; 591A428D1A6DC6F2003807A6 /* WPGUIConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WPGUIConstants.h; sourceTree = ""; }; 591A428E1A6DC6F2003807A6 /* WPGUIConstants.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WPGUIConstants.m; sourceTree = ""; }; 591AA4FF1CEF9BF20074934F /* Post.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Post.swift; sourceTree = ""; }; @@ -7008,10 +6953,8 @@ 8511CFC41C60884400B7CEED /* SnapshotHelper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SnapshotHelper.swift; sourceTree = ""; }; 8511CFC61C60894200B7CEED /* WordPressScreenshotGeneration.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WordPressScreenshotGeneration.swift; sourceTree = ""; }; 8527B15717CE98C5001CBA2E /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = System/Library/Frameworks/Accelerate.framework; sourceTree = SDKROOT; }; - 8546B44A1BEAD3B300193C07 /* Info-Alpha.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Info-Alpha.plist"; sourceTree = ""; }; 8546B44C1BEAD3EC00193C07 /* Wordpress-Alpha-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Wordpress-Alpha-Info.plist"; sourceTree = ""; }; 8546B44E1BEAD48900193C07 /* WordPress-Alpha.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = "WordPress-Alpha.entitlements"; sourceTree = ""; }; - 8546B4501BEAD4D100193C07 /* WordPressTodayWidget-Alpha.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = "WordPressTodayWidget-Alpha.entitlements"; sourceTree = ""; }; 855408851A6F105700DDBD79 /* app-review-prompt-all-enabled.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "app-review-prompt-all-enabled.json"; sourceTree = ""; }; 855408871A6F106800DDBD79 /* app-review-prompt-notifications-disabled.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "app-review-prompt-notifications-disabled.json"; sourceTree = ""; }; 855408891A6F107D00DDBD79 /* app-review-prompt-global-disable.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "app-review-prompt-global-disable.json"; sourceTree = ""; }; @@ -7138,7 +7081,6 @@ 8BFE36FC230F16580061EBA8 /* AbstractPost+fixLocalMediaURLs.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "AbstractPost+fixLocalMediaURLs.swift"; sourceTree = ""; }; 8BFE36FE230F1C850061EBA8 /* AbstractPost+fixLocalMediaURLsTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "AbstractPost+fixLocalMediaURLsTests.swift"; sourceTree = ""; }; 8C6A22E325783D2000A79950 /* JetpackScanService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JetpackScanService.swift; sourceTree = ""; }; - 8CE5BBD00FF1470AC4B88247 /* Pods_WordPressTodayWidget.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_WordPressTodayWidget.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 8DCE7542239FBC709B90EA85 /* Pods_WordPressUITests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_WordPressUITests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 8DE205D2AC15F16289E7D21A /* Pods-WordPressDraftActionExtension.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressDraftActionExtension.release.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressDraftActionExtension/Pods-WordPressDraftActionExtension.release.xcconfig"; sourceTree = ""; }; @@ -7185,7 +7127,6 @@ 931F312B2714302A0075433B /* PublicizeServicesState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PublicizeServicesState.swift; sourceTree = ""; }; 932225A71C7CE50300443B02 /* WordPressShareExtension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = WordPressShareExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; }; 932645A31E7C206600134988 /* GutenbergSettingsTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GutenbergSettingsTests.swift; sourceTree = ""; }; - 93267A6019B896CD00997EB8 /* Info-Internal.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Info-Internal.plist"; sourceTree = ""; }; 933D1F451EA64108009FB462 /* TestingAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TestingAppDelegate.h; sourceTree = ""; }; 933D1F461EA64108009FB462 /* TestingAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TestingAppDelegate.m; sourceTree = ""; }; 933D1F6B1EA7A3AB009FB462 /* TestingMode.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = TestingMode.storyboard; sourceTree = ""; }; @@ -7194,7 +7135,6 @@ 934098C2271957A600B3E77E /* SiteStatsInsightsDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SiteStatsInsightsDelegate.swift; sourceTree = ""; }; 93414DE41E2D25AE003143A3 /* PostEditorState.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = PostEditorState.swift; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.swift; }; 93460A36189D5091000E26CE /* WordPress 14.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "WordPress 14.xcdatamodel"; sourceTree = ""; }; - 934884AC19B78723004028D8 /* WordPressTodayWidget-Internal.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = "WordPressTodayWidget-Internal.entitlements"; sourceTree = ""; }; 934884AE19B7875C004028D8 /* WordPress-Internal.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = "WordPress-Internal.entitlements"; sourceTree = ""; }; 934F1B3119ACCE5600E9E63E /* WordPress.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = WordPress.entitlements; sourceTree = ""; }; 93594BD4191D2F5A0079E6B2 /* stats-batch.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "stats-batch.json"; sourceTree = ""; }; @@ -7228,7 +7168,6 @@ 93C1147E18EC5DD500DAC95C /* AccountService.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AccountService.m; sourceTree = ""; }; 93C1148318EDF6E100DAC95C /* BlogService.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BlogService.h; sourceTree = ""; }; 93C1148418EDF6E100DAC95C /* BlogService.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BlogService.m; sourceTree = ""; }; - 93C2075C1CC7FFC800C94D04 /* Tracks+TodayWidget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Tracks+TodayWidget.swift"; sourceTree = ""; }; 93C3C2561CAB031E0092F837 /* Info-Internal.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "Info-Internal.plist"; path = "WordPressShareExtension/Info-Internal.plist"; sourceTree = SOURCE_ROOT; }; 93C3C2581CAB032C0092F837 /* Info-Alpha.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "Info-Alpha.plist"; path = "WordPressShareExtension/Info-Alpha.plist"; sourceTree = SOURCE_ROOT; }; 93C882981EEB18D700227A59 /* html_page_with_link_to_rsd_non_standard.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = html_page_with_link_to_rsd_non_standard.html; sourceTree = ""; }; @@ -7241,13 +7180,7 @@ 93D86B941C63EC31003D8E3E /* en-CA */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "en-CA"; path = "en-CA.lproj/Localizable.strings"; sourceTree = ""; }; 93DEB88019E5BF7100F9546D /* TodayExtensionService.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TodayExtensionService.h; sourceTree = ""; }; 93DEB88119E5BF7100F9546D /* TodayExtensionService.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TodayExtensionService.m; sourceTree = ""; }; - 93E5283A19A7741A003A1A9C /* WordPressTodayWidget.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = WordPressTodayWidget.appex; sourceTree = BUILT_PRODUCTS_DIR; }; 93E5283B19A7741A003A1A9C /* NotificationCenter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = NotificationCenter.framework; path = System/Library/Frameworks/NotificationCenter.framework; sourceTree = SDKROOT; }; - 93E5283F19A7741A003A1A9C /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 93E5284019A7741A003A1A9C /* TodayViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TodayViewController.swift; sourceTree = ""; }; - 93E5284219A7741A003A1A9C /* MainInterface.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = MainInterface.storyboard; sourceTree = ""; }; - 93E5284F19A77824003A1A9C /* WordPressTodayWidget-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "WordPressTodayWidget-Bridging-Header.h"; sourceTree = ""; }; - 93E5285719A7AA5C003A1A9C /* WordPressTodayWidget.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = WordPressTodayWidget.entitlements; sourceTree = ""; }; 93E63368272AC532009DACF8 /* LoginEpilogueChooseSiteTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginEpilogueChooseSiteTableViewCell.swift; sourceTree = ""; }; 93E6336B272AF504009DACF8 /* LoginEpilogueDividerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginEpilogueDividerView.swift; sourceTree = ""; }; 93E6336E272C1074009DACF8 /* LoginEpilogueCreateNewSiteCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginEpilogueCreateNewSiteCell.swift; sourceTree = ""; }; @@ -7449,8 +7382,6 @@ 98E54FF1265C972900B4BE9A /* ReaderDetailLikesView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ReaderDetailLikesView.swift; sourceTree = ""; }; 98E55018265C977E00B4BE9A /* ReaderDetailLikesView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ReaderDetailLikesView.xib; sourceTree = ""; }; 98E58A2E2360D23400E5534B /* TodayWidgetStats.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TodayWidgetStats.swift; sourceTree = ""; }; - 98E58A412361017500E5534B /* Pods_WordPressTodayWidget.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Pods_WordPressTodayWidget.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 98E58A432361019300E5534B /* Pods_WordPressTodayWidget.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Pods_WordPressTodayWidget.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 98E5D4912620C2B40074A56A /* UserProfileSectionHeader.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UserProfileSectionHeader.xib; sourceTree = ""; }; 98EB126920D2DC2500D2D5B5 /* NoResultsViewController+Model.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "NoResultsViewController+Model.swift"; sourceTree = ""; }; 98ED5962265EBD0000A0B33E /* ReaderDetailLikesListController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReaderDetailLikesListController.swift; sourceTree = ""; }; @@ -7465,7 +7396,6 @@ 98FCFC212231DF43006ECDD4 /* PostStatsTitleCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostStatsTitleCell.swift; sourceTree = ""; }; 98FCFC222231DF43006ECDD4 /* PostStatsTitleCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PostStatsTitleCell.xib; sourceTree = ""; }; 98FF6A3D23A30A240025FD72 /* QuickStartNavigationSettings.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = QuickStartNavigationSettings.swift; sourceTree = ""; }; - 99D675225C3282AC88B89F04 /* Pods-WordPressTodayWidget.release-internal.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressTodayWidget.release-internal.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressTodayWidget/Pods-WordPressTodayWidget.release-internal.xcconfig"; sourceTree = ""; }; 9A034CEA237DB8660047B41B /* StatsForegroundObservable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatsForegroundObservable.swift; sourceTree = ""; }; 9A09F914230C3E9700F42AB7 /* StoreFetchingStatus.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StoreFetchingStatus.swift; sourceTree = ""; }; 9A09F91A230C49FD00F42AB7 /* StatsStackViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = StatsStackViewCell.xib; sourceTree = ""; }; @@ -9130,15 +9060,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 93E5283719A7741A003A1A9C /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 98E58A442361019300E5534B /* Pods_WordPressTodayWidget.framework in Frameworks */, - 93E5283C19A7741A003A1A9C /* NotificationCenter.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 98A3C2EC239997DA0048D38D /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -9885,7 +9806,6 @@ children = ( 1D6058910D05DD3D006BFB54 /* WordPress.app */, E16AB92A14D978240047A2E5 /* WordPressTest.xctest */, - 93E5283A19A7741A003A1A9C /* WordPressTodayWidget.appex */, 8511CFB61C607A7000B7CEED /* WordPressScreenshotGeneration.xctest */, 932225A71C7CE50300443B02 /* WordPressShareExtension.appex */, FF27168F1CAAC87A0006E2D4 /* WordPressUITests.xctest */, @@ -9966,7 +9886,6 @@ 733F36072126197800988727 /* WordPressNotificationContentExtension */, 7358E6B9210BD318002323EB /* WordPressNotificationServiceExtension */, 932225A81C7CE50300443B02 /* WordPressShareExtension */, - 93E5283D19A7741A003A1A9C /* WordPressTodayWidget */, 98D31B902396ED7F009CFF43 /* WordPressAllTimeWidget */, 98A3C2F1239997DA0048D38D /* WordPressThisWeekWidget */, 3F526C512538CF2A0069706C /* WordPressStatsWidgets */, @@ -10038,8 +9957,6 @@ FF4DEAD7244B56E200ACA032 /* CoreServices.framework */, 9884B145236225230021D8E9 /* WordPressUI.framework */, 9884B143236224F80021D8E9 /* WordPressUI.framework */, - 98E58A432361019300E5534B /* Pods_WordPressTodayWidget.framework */, - 98E58A412361017500E5534B /* Pods_WordPressTodayWidget.framework */, 7E21C760202BBC8D00837CF5 /* iAd.framework */, 8527B15717CE98C5001CBA2E /* Accelerate.framework */, CC24E5F41577E16B00A6D5B5 /* Accounts.framework */, @@ -10091,7 +10008,6 @@ E19DF740141F7BDD000002F3 /* libz.dylib */, B7556D1D8CFA5CEAEAC481B9 /* Pods.framework */, B921F5DD9A1F257C792EC225 /* Pods_WordPressTest.framework */, - 8CE5BBD00FF1470AC4B88247 /* Pods_WordPressTodayWidget.framework */, 733F36052126197800988727 /* UserNotificationsUI.framework */, AB390AA9C94F16E78184E9D1 /* Pods_WordPressScreenshotGeneration.framework */, 8DCE7542239FBC709B90EA85 /* Pods_WordPressUITests.framework */, @@ -13201,40 +13117,6 @@ name = Analytics; sourceTree = ""; }; - 93C2075B1CC7FFB100C94D04 /* Tracks */ = { - isa = PBXGroup; - children = ( - 93C2075C1CC7FFC800C94D04 /* Tracks+TodayWidget.swift */, - ); - name = Tracks; - sourceTree = ""; - }; - 93E5283D19A7741A003A1A9C /* WordPressTodayWidget */ = { - isa = PBXGroup; - children = ( - 93E5284219A7741A003A1A9C /* MainInterface.storyboard */, - 93E5284019A7741A003A1A9C /* TodayViewController.swift */, - 93E5283E19A7741A003A1A9C /* Supporting Files */, - 93C2075B1CC7FFB100C94D04 /* Tracks */, - 93E5284F19A77824003A1A9C /* WordPressTodayWidget-Bridging-Header.h */, - ); - path = WordPressTodayWidget; - sourceTree = ""; - }; - 93E5283E19A7741A003A1A9C /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 8546B44A1BEAD3B300193C07 /* Info-Alpha.plist */, - 93267A6019B896CD00997EB8 /* Info-Internal.plist */, - 93E5283F19A7741A003A1A9C /* Info.plist */, - 591252291A38AE9C00468279 /* TodayWidgetPrefix.pch */, - 8546B4501BEAD4D100193C07 /* WordPressTodayWidget-Alpha.entitlements */, - 934884AC19B78723004028D8 /* WordPressTodayWidget-Internal.entitlements */, - 93E5285719A7AA5C003A1A9C /* WordPressTodayWidget.entitlements */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; 93FA59DA18D88BDB001446BC /* Services */ = { isa = PBXGroup; children = ( @@ -14382,10 +14264,6 @@ EF379F0A70B6AC45330EE287 /* Pods-WordPressTest.release.xcconfig */, C9264D275F6288F66C33D2CE /* Pods-WordPressTest.release-internal.xcconfig */, 131D0EE49695795ECEDAA446 /* Pods-WordPressTest.release-alpha.xcconfig */, - 368127CE6F1CA15EC198147D /* Pods-WordPressTodayWidget.debug.xcconfig */, - 37E3F5EA2ED7005A5E0BBEC3 /* Pods-WordPressTodayWidget.release.xcconfig */, - 99D675225C3282AC88B89F04 /* Pods-WordPressTodayWidget.release-internal.xcconfig */, - 0F01F606071B0B9BD9DB34DE /* Pods-WordPressTodayWidget.release-alpha.xcconfig */, A27DA63A5ECD1D0262C589EC /* Pods-WordPressNotificationServiceExtension.debug.xcconfig */, 73FEFF1991AE9912FB2DA9BC /* Pods-WordPressNotificationServiceExtension.release.xcconfig */, 33D5016BDA00B45DFCAF3818 /* Pods-WordPressNotificationServiceExtension.release-internal.xcconfig */, @@ -17342,8 +17220,6 @@ ); dependencies = ( 096A92FD26E2A0AE00448C68 /* PBXTargetDependency */, - 93E5284519A7741A003A1A9C /* PBXTargetDependency */, - 93E5284819A7741A003A1A9C /* PBXTargetDependency */, 932225B01C7CE50300443B02 /* PBXTargetDependency */, 7457667B202B558C00F42E40 /* PBXTargetDependency */, 7358E6BE210BD318002323EB /* PBXTargetDependency */, @@ -17555,25 +17431,6 @@ productReference = 932225A71C7CE50300443B02 /* WordPressShareExtension.appex */; productType = "com.apple.product-type.app-extension"; }; - 93E5283919A7741A003A1A9C /* WordPressTodayWidget */ = { - isa = PBXNativeTarget; - buildConfigurationList = 93E5284D19A7741A003A1A9C /* Build configuration list for PBXNativeTarget "WordPressTodayWidget" */; - buildPhases = ( - 4CB8AA817C9BD74F3416B27C /* [CP] Check Pods Manifest.lock */, - 93E5283619A7741A003A1A9C /* Sources */, - 93E5283719A7741A003A1A9C /* Frameworks */, - 93E5283819A7741A003A1A9C /* Resources */, - 59B02D1583A9AC2ACCFFD153 /* [CP] Copy Pods Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = WordPressTodayWidget; - productName = WordPressTodayWidget; - productReference = 93E5283A19A7741A003A1A9C /* WordPressTodayWidget.appex */; - productType = "com.apple.product-type.app-extension"; - }; 98A3C2EE239997DA0048D38D /* WordPressThisWeekWidget */ = { isa = PBXNativeTarget; buildConfigurationList = 98A3C2FF239997DB0048D38D /* Build configuration list for PBXNativeTarget "WordPressThisWeekWidget" */; @@ -17831,19 +17688,6 @@ }; }; }; - 93E5283919A7741A003A1A9C = { - CreatedOnToolsVersion = 6.0; - DevelopmentTeam = PZYM8XX95Q; - LastSwiftMigration = 1000; - SystemCapabilities = { - com.apple.ApplicationGroups.iOS = { - enabled = 1; - }; - com.apple.Keychain = { - enabled = 1; - }; - }; - }; 98A3C2EE239997DA0048D38D = { CreatedOnToolsVersion = 11.2.1; LastSwiftMigration = 1120; @@ -17937,7 +17781,6 @@ 1D6058900D05DD3D006BFB54 /* WordPress */, 932225A61C7CE50300443B02 /* WordPressShareExtension */, 74576671202B558C00F42E40 /* WordPressDraftActionExtension */, - 93E5283919A7741A003A1A9C /* WordPressTodayWidget */, 98D31B8D2396ED7E009CFF43 /* WordPressAllTimeWidget */, 98A3C2EE239997DA0048D38D /* WordPressThisWeekWidget */, 3F526C4B2538CF2A0069706C /* WordPressStatsWidgets */, @@ -18395,19 +18238,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 93E5283819A7741A003A1A9C /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 93E5284319A7741A003A1A9C /* MainInterface.storyboard in Resources */, - 98906509237CC1DF00218CD2 /* WidgetTwoColumnCell.xib in Resources */, - 9A144AC822FD6A650069DD71 /* ColorPalette.xcassets in Resources */, - 98712D2023DA1D1000555316 /* WidgetNoConnectionCell.xib in Resources */, - 98906505237CC1DF00218CD2 /* WidgetUnconfiguredCell.xib in Resources */, - 988F073723D0D15D00AC67A6 /* WidgetUrlCell.xib in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 98A3C2ED239997DA0048D38D /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -19293,24 +19123,6 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-JetpackShareExtension/Pods-JetpackShareExtension-resources.sh\"\n"; showEnvVarsInLog = 0; }; - 4CB8AA817C9BD74F3416B27C /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-WordPressTodayWidget-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; 4F4D5C2BB6478A3E90ADC3C5 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -19373,28 +19185,6 @@ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - 59B02D1583A9AC2ACCFFD153 /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-WordPressTodayWidget/Pods-WordPressTodayWidget-resources.sh", - "${PODS_ROOT}/FormatterKit/FormatterKit/FormatterKit.bundle", - "${PODS_CONFIGURATION_BUILD_DIR}/WordPressShared/WordPressShared.bundle", - "${PODS_CONFIGURATION_BUILD_DIR}/WordPressUI/WordPressUIResources.bundle", - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FormatterKit.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/WordPressShared.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/WordPressUIResources.bundle", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-WordPressTodayWidget/Pods-WordPressTodayWidget-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; 61CF58FC6EB9AB58632C4770 /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -22364,40 +22154,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 93E5283619A7741A003A1A9C /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 98906507237CC1DF00218CD2 /* WidgetTwoColumnCell.swift in Sources */, - 433ADC1C223B2A7E00ED9DE1 /* TextBundleWrapper.m in Sources */, - 93E5284119A7741A003A1A9C /* TodayViewController.swift in Sources */, - FAD2566C2611AEC300EDAF88 /* AppStyleGuide.swift in Sources */, - 938CF3DE1EF1BE8000AF838E /* CocoaLumberjack.swift in Sources */, - 98712D1D23DA1D0800555316 /* WidgetNoConnectionCell.swift in Sources */, - 0107E16728FFED1800DE87DB /* WidgetConfiguration.swift in Sources */, - 98C0CE9C23C559C800D0F27C /* Double+Stats.swift in Sources */, - 93C2075A1CC7FF9C00C94D04 /* Tracks.swift in Sources */, - 436110DA22C3ED44000773AD /* FeatureFlag.swift in Sources */, - 436110DB22C3ED4C000773AD /* BuildConfiguration.swift in Sources */, - 98906503237CC1DF00218CD2 /* WidgetUnconfiguredCell.swift in Sources */, - 01CE5009290A88BE00A9C2E0 /* TracksConfiguration.swift in Sources */, - 93C2075D1CC7FFC800C94D04 /* Tracks+TodayWidget.swift in Sources */, - 98E58A302360D23400E5534B /* TodayWidgetStats.swift in Sources */, - 83A1B19728AFE47A00E737AC /* KeychainUtils.swift in Sources */, - 4326191722FCB9F9003C7642 /* MurielColor.swift in Sources */, - 436110D922C3ED18000773AD /* UIColor+MurielColors.swift in Sources */, - FAD256CA2611B01C00EDAF88 /* UIColor+WordPressColors.swift in Sources */, - 092C3800275E718000BBBDD9 /* AppLocalizedString.swift in Sources */, - 988F073A23D0D16700AC67A6 /* WidgetUrlCell.swift in Sources */, - 8323789528526E6B003F4443 /* AppConfiguration.swift in Sources */, - 1752D4FB238D702F002B79E7 /* KeyValueDatabase.swift in Sources */, - 170BEC89239153120017AEC1 /* FeatureFlagOverrideStore.swift in Sources */, - 985ED0E723C6964500B8D06A /* WidgetStyles.swift in Sources */, - 93E3D3C819ACE8E300B1C509 /* SFHFKeychainUtils.m in Sources */, - 934884AB19B73BA6004028D8 /* Constants.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 98A3C2EB239997DA0048D38D /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -24636,16 +24392,6 @@ target = 932225A61C7CE50300443B02 /* WordPressShareExtension */; targetProxy = 932225AF1C7CE50300443B02 /* PBXContainerItemProxy */; }; - 93E5284519A7741A003A1A9C /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 93E5283919A7741A003A1A9C /* WordPressTodayWidget */; - targetProxy = 93E5284419A7741A003A1A9C /* PBXContainerItemProxy */; - }; - 93E5284819A7741A003A1A9C /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 93E5283919A7741A003A1A9C /* WordPressTodayWidget */; - targetProxy = 93E5284719A7741A003A1A9C /* PBXContainerItemProxy */; - }; 98A3C2F9239997DA0048D38D /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 98A3C2EE239997DA0048D38D /* WordPressThisWeekWidget */; @@ -27496,62 +27242,6 @@ }; name = "Release-Alpha"; }; - 8546B4471BEAD39700193C07 /* Release-Alpha */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 0F01F606071B0B9BD9DB34DE /* Pods-WordPressTodayWidget.release-alpha.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - ALWAYS_SEARCH_USER_PATHS = NO; - APPLICATION_EXTENSION_API_ONLY = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = "$(inherited)"; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_ENTITLEMENTS = "WordPressTodayWidget/WordPressTodayWidget-Alpha.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Distribution: Automattic, Inc."; - COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = 99KV9Z6BKV; - ENABLE_BITCODE = NO; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = WordPressTodayWidget/TodayWidgetPrefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = ( - "$(inherited)", - "COCOAPODS=1", - ALPHA_BUILD, - "WPCOM_SCHEME=\\@\\\"${WPCOM_SCHEME}\\\"", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - INFOPLIST_FILE = "WordPressTodayWidget/Info-Alpha.plist"; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = "org.wordpress.alpha.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "match InHouse org.wordpress.alpha.WordPressTodayWidget"; - SKIP_INSTALL = YES; - SWIFT_OBJC_BRIDGING_HEADER = "WordPressTodayWidget/WordPressTodayWidget-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - WPCOM_SCHEME = wpalpha; - }; - name = "Release-Alpha"; - }; 932225B21C7CE50400443B02 /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = CB1DAFB7DE085F2FF0314622 /* Pods-WordPressShareExtension.debug.xcconfig */; @@ -27979,174 +27669,6 @@ }; name = "Release-Internal"; }; - 93E5284919A7741A003A1A9C /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 368127CE6F1CA15EC198147D /* Pods-WordPressTodayWidget.debug.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - ALWAYS_SEARCH_USER_PATHS = NO; - APPLICATION_EXTENSION_API_ONLY = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = "$(inherited)"; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_ENTITLEMENTS = WordPressTodayWidget/WordPressTodayWidget.entitlements; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - ENABLE_BITCODE = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = WordPressTodayWidget/TodayWidgetPrefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - "WPCOM_SCHEME=\\@\\\"${WPCOM_SCHEME}\\\"", - ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - INFOPLIST_FILE = WordPressTodayWidget/Info.plist; - MTL_ENABLE_DEBUG_INFO = YES; - PRODUCT_BUNDLE_IDENTIFIER = "org.wordpress.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "WordPress Today Widget Development"; - SKIP_INSTALL = YES; - SWIFT_OBJC_BRIDGING_HEADER = "WordPressTodayWidget/WordPressTodayWidget-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - WPCOM_SCHEME = wpdebug; - }; - name = Debug; - }; - 93E5284A19A7741A003A1A9C /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 37E3F5EA2ED7005A5E0BBEC3 /* Pods-WordPressTodayWidget.release.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - ALWAYS_SEARCH_USER_PATHS = NO; - APPLICATION_EXTENSION_API_ONLY = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = "$(inherited)"; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_ENTITLEMENTS = WordPressTodayWidget/WordPressTodayWidget.entitlements; - CODE_SIGN_IDENTITY = "Apple Distribution: Automattic, Inc. (PZYM8XX95Q)"; - COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = PZYM8XX95Q; - ENABLE_BITCODE = NO; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = WordPressTodayWidget/TodayWidgetPrefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = ( - "$(inherited)", - "COCOAPODS=1", - "WPCOM_SCHEME=\\@\\\"${WPCOM_SCHEME}\\\"", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - INFOPLIST_FILE = WordPressTodayWidget/Info.plist; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = "org.wordpress.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "match AppStore org.wordpress.WordPressTodayWidget"; - SKIP_INSTALL = YES; - SWIFT_OBJC_BRIDGING_HEADER = "WordPressTodayWidget/WordPressTodayWidget-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - WPCOM_SCHEME = wordpress; - }; - name = Release; - }; - 93E5284B19A7741A003A1A9C /* Release-Internal */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 99D675225C3282AC88B89F04 /* Pods-WordPressTodayWidget.release-internal.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - ALWAYS_SEARCH_USER_PATHS = NO; - APPLICATION_EXTENSION_API_ONLY = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = "$(inherited)"; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_ENTITLEMENTS = "WordPressTodayWidget/WordPressTodayWidget-Internal.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Distribution: Automattic, Inc."; - COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = 99KV9Z6BKV; - ENABLE_BITCODE = NO; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = WordPressTodayWidget/TodayWidgetPrefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = ( - "$(inherited)", - "COCOAPODS=1", - INTERNAL_BUILD, - "WPCOM_SCHEME=\\@\\\"${WPCOM_SCHEME}\\\"", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - INFOPLIST_FILE = "WordPressTodayWidget/Info-Internal.plist"; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = "org.wordpress.internal.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "match InHouse org.wordpress.internal.WordPressTodayWidget"; - SKIP_INSTALL = YES; - SWIFT_OBJC_BRIDGING_HEADER = "WordPressTodayWidget/WordPressTodayWidget-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - WPCOM_SCHEME = wpinternal; - }; - name = "Release-Internal"; - }; 98A3C2FB239997DB0048D38D /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = D1216A69ECC61E7772AB8C41 /* Pods-WordPressThisWeekWidget.debug.xcconfig */; @@ -29823,17 +29345,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 93E5284D19A7741A003A1A9C /* Build configuration list for PBXNativeTarget "WordPressTodayWidget" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 93E5284919A7741A003A1A9C /* Debug */, - 93E5284A19A7741A003A1A9C /* Release */, - 93E5284B19A7741A003A1A9C /* Release-Internal */, - 8546B4471BEAD39700193C07 /* Release-Alpha */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; 98A3C2FF239997DB0048D38D /* Build configuration list for PBXNativeTarget "WordPressThisWeekWidget" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressTodayWidget.xcscheme b/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressTodayWidget.xcscheme deleted file mode 100644 index b9516b827d6d..000000000000 --- a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressTodayWidget.xcscheme +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WordPress/WordPressTodayWidget/Info-Alpha.plist b/WordPress/WordPressTodayWidget/Info-Alpha.plist deleted file mode 100644 index abe4acb8a34f..000000000000 --- a/WordPress/WordPressTodayWidget/Info-Alpha.plist +++ /dev/null @@ -1,33 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleDisplayName - WordPress Today (Alpha) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - XPC! - CFBundleShortVersionString - ${VERSION_SHORT} - CFBundleSignature - ???? - CFBundleVersion - ${VERSION_LONG} - NSExtension - - NSExtensionMainStoryboard - MainInterface - NSExtensionPointIdentifier - com.apple.widget-extension - - - diff --git a/WordPress/WordPressTodayWidget/Info-Internal.plist b/WordPress/WordPressTodayWidget/Info-Internal.plist deleted file mode 100644 index 2b30787ddb2f..000000000000 --- a/WordPress/WordPressTodayWidget/Info-Internal.plist +++ /dev/null @@ -1,33 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleDisplayName - WordPress Today (Internal) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - XPC! - CFBundleShortVersionString - ${VERSION_SHORT} - CFBundleSignature - ???? - CFBundleVersion - ${VERSION_LONG} - NSExtension - - NSExtensionMainStoryboard - MainInterface - NSExtensionPointIdentifier - com.apple.widget-extension - - - diff --git a/WordPress/WordPressTodayWidget/Info.plist b/WordPress/WordPressTodayWidget/Info.plist deleted file mode 100644 index 7e8abd5a3e20..000000000000 --- a/WordPress/WordPressTodayWidget/Info.plist +++ /dev/null @@ -1,33 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleDisplayName - WordPress Today - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - XPC! - CFBundleShortVersionString - ${VERSION_SHORT} - CFBundleSignature - ???? - CFBundleVersion - ${VERSION_LONG} - NSExtension - - NSExtensionMainStoryboard - MainInterface - NSExtensionPointIdentifier - com.apple.widget-extension - - - diff --git a/WordPress/WordPressTodayWidget/MainInterface.storyboard b/WordPress/WordPressTodayWidget/MainInterface.storyboard deleted file mode 100644 index 09af3c01057d..000000000000 --- a/WordPress/WordPressTodayWidget/MainInterface.storyboard +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WordPress/WordPressTodayWidget/TodayViewController.swift b/WordPress/WordPressTodayWidget/TodayViewController.swift deleted file mode 100644 index 0904e1e95b89..000000000000 --- a/WordPress/WordPressTodayWidget/TodayViewController.swift +++ /dev/null @@ -1,499 +0,0 @@ -import UIKit -import NotificationCenter -import CocoaLumberjack -import WordPressKit -import WordPressUI -import Reachability - -class TodayViewController: UIViewController { - - // MARK: - Properties - - @IBOutlet private var tableView: UITableView! - - private var statsValues: TodayWidgetStats? { - didSet { - updateStatsLabels() - tableView.reloadData() - } - } - - private var visitorCount: String = Constants.noDataLabel - private var viewCount: String = Constants.noDataLabel - private var likeCount: String = Constants.noDataLabel - private var commentCount: String = Constants.noDataLabel - private var siteUrl: String = Constants.noDataLabel - - private var haveSiteUrl: Bool { - siteUrl != Constants.noDataLabel - } - - private var siteID: NSNumber? - private var timeZone: TimeZone? - private var oauthToken: String? - private var isConfigured = false { - didSet { - setAvailableDisplayMode() - } - } - - private var isReachable = true { - didSet { - setAvailableDisplayMode() - - if isReachable != oldValue, - let completionHandler = widgetCompletionBlock { - widgetPerformUpdate(completionHandler: completionHandler) - } - } - } - - private var showNoConnection: Bool { - return !isReachable && statsValues == nil - } - - private var loadingFailed = false { - didSet { - setAvailableDisplayMode() - - if loadingFailed != oldValue { - tableView.reloadData() - } - } - } - - private var failedState: Bool { - return !isConfigured || showNoConnection || loadingFailed - } - - private let tracks = Tracks(appGroupName: WPAppGroupName) - private let reachability: Reachability = .forInternetConnection() - - private typealias WidgetCompletionBlock = (NCUpdateResult) -> Void - private var widgetCompletionBlock: WidgetCompletionBlock? - - // MARK: - View - - override func viewDidLoad() { - super.viewDidLoad() - retrieveSiteConfiguration() - registerTableCells() - } - - override func viewWillAppear(_ animated: Bool) { - super.viewWillAppear(animated) - setupReachability() - loadSavedData() - resizeView() - } - - override func viewWillDisappear(_ animated: Bool) { - super.viewWillDisappear(animated) - reachability.stopNotifier() - } - - override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) { - super.viewWillTransition(to: size, with: coordinator) - - let updatedRowCount = numberOfRowsToDisplay() - - // If the number of rows has not changed, do nothing. - guard updatedRowCount != tableView.numberOfRows(inSection: 0) else { - return - } - - coordinator.animate(alongsideTransition: { _ in - self.tableView.performBatchUpdates({ - - var indexPathsToInsert = [IndexPath]() - var indexPathsToDelete = [IndexPath]() - - // If no connection was displayed, then rows are just being added. - // Otherwise, a data row is being inserted/deleted. - if self.tableView.visibleCells.first is WidgetNoConnectionCell { - let indexRange = (1.. self.minRowsToDisplay() ? - self.tableView.insertRows(at: indexPathsToInsert, with: .fade) : - self.tableView.deleteRows(at: indexPathsToDelete, with: .fade) - }) - }) - } - -} - -// MARK: - Widget Updating - -extension TodayViewController: NCWidgetProviding { - - func widgetPerformUpdate(completionHandler: (@escaping (NCUpdateResult) -> Void)) { - widgetCompletionBlock = completionHandler - retrieveSiteConfiguration() - isReachable = reachability.isReachable() - - if !isConfigured || !isReachable { - DDLogError("Today Widget: unable to update. Configured: \(isConfigured) Reachable: \(isReachable)") - - DispatchQueue.main.async { [weak self] in - self?.tableView.reloadData() - } - - completionHandler(.failed) - return - } - - fetchData(completionHandler: completionHandler) - } - - func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) { - tracks.trackDisplayModeChanged(properties: ["expanded": activeDisplayMode == .expanded]) - resizeView(withMaximumSize: maxSize) - } - -} - -// MARK: - Table View Methods - -extension TodayViewController: UITableViewDelegate, UITableViewDataSource { - - func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { - return numberOfRowsToDisplay() - } - - func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { - if showNoConnection { - return noConnectionCellFor(indexPath: indexPath) - } - - if !isConfigured || loadingFailed { - return unconfiguredCellFor(indexPath: indexPath) - } - - return statCellFor(indexPath: indexPath) - } - - func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { - - if failedState, - let maxCompactSize = extensionContext?.widgetMaximumSize(for: .compact) { - // Use the max compact height for unconfigured view. - return maxCompactSize.height - } - - if showUrl() && indexPath.row == numberOfRowsToDisplay() - 1 { - return WidgetUrlCell.height - } - - return UITableView.automaticDimension - } - -} - -// MARK: - Private Extension - -private extension TodayViewController { - - // MARK: - Tap Gesture Handling - - @IBAction func handleTapGesture() { - - // If showing the loading failed view, reload the widget. - if loadingFailed, - let completionHandler = widgetCompletionBlock { - widgetPerformUpdate(completionHandler: completionHandler) - return - } - - // Otherwise, open the app. - guard isReachable, - let extensionContext = extensionContext, - let containingAppURL = appURL() else { - DDLogError("Today Widget: Unable to get extensionContext or appURL.") - return - } - - trackAppLaunch() - extensionContext.open(containingAppURL, completionHandler: nil) - } - - func appURL() -> URL? { - let urlString = (siteID != nil) ? (Constants.statsUrl + siteID!.stringValue) : Constants.baseUrl - return URL(string: urlString) - } - - func trackAppLaunch() { - guard let siteID = siteID else { - tracks.trackExtensionConfigureLaunched() - return - } - - tracks.trackExtensionStatsLaunched(siteID.intValue) - } - - // MARK: - Site Configuration - - func retrieveSiteConfiguration() { - guard let sharedDefaults = UserDefaults(suiteName: WPAppGroupName) else { - DDLogError("Today Widget: Unable to get sharedDefaults.") - isConfigured = false - return - } - - siteID = sharedDefaults.object(forKey: AppConfiguration.Widget.StatsToday.userDefaultsSiteIdKey) as? NSNumber - siteUrl = sharedDefaults.string(forKey: AppConfiguration.Widget.StatsToday.userDefaultsSiteUrlKey) ?? Constants.noDataLabel - oauthToken = fetchOAuthBearerToken() - - if let timeZoneName = sharedDefaults.string(forKey: AppConfiguration.Widget.StatsToday.userDefaultsSiteTimeZoneKey) { - timeZone = TimeZone(identifier: timeZoneName) - } - - isConfigured = siteID != nil && timeZone != nil && oauthToken != nil - } - - func fetchOAuthBearerToken() -> String? { - let oauth2Token = try? KeychainUtils.shared.getPasswordForUsername(AppConfiguration.Widget.Stats.keychainTokenKey, serviceName: AppConfiguration.Widget.Stats.keychainServiceName, accessGroup: WPAppKeychainAccessGroup) - - return oauth2Token as String? - } - - // MARK: - Data Management - - func loadSavedData() { - statsValues = TodayWidgetStats.loadSavedData() - } - - func saveData() { - statsValues?.saveData() - } - - func fetchData(completionHandler: (@escaping (NCUpdateResult) -> Void)) { - guard let statsRemote = statsRemote() else { - return - } - - statsRemote.getInsight { [weak self] (todayInsight: StatsTodayInsight?, error) in - self?.loadingFailed = (error != nil) - - if error != nil { - DDLogError("Today Widget: Error fetching StatsTodayInsight: \(String(describing: error?.localizedDescription))") - completionHandler(.failed) - return - } - - DDLogDebug("Today Widget: Fetched StatsTodayInsight data.") - - DispatchQueue.main.async { [weak self] in - let updatedStats = TodayWidgetStats(views: todayInsight?.viewsCount, - visitors: todayInsight?.visitorsCount, - likes: todayInsight?.likesCount, - comments: todayInsight?.commentsCount) - - // Update the widget only if the data has changed. - guard updatedStats != self?.statsValues else { - completionHandler(.noData) - return - } - - self?.statsValues = updatedStats - completionHandler(.newData) - self?.saveData() - } - } - } - - func statsRemote() -> StatsServiceRemoteV2? { - guard - let siteID = siteID, - let timeZone = timeZone, - let oauthToken = oauthToken - else { - DDLogError("Today Widget: Missing site ID, timeZone or oauth2Token") - return nil - } - - let wpApi = WordPressComRestApi(oAuthToken: oauthToken) - return StatsServiceRemoteV2(wordPressComRestApi: wpApi, siteID: siteID.intValue, siteTimezone: timeZone) - } - - // MARK: - Table Helpers - - func registerTableCells() { - let twoColumnCellNib = UINib(nibName: String(describing: WidgetTwoColumnCell.self), bundle: Bundle(for: WidgetTwoColumnCell.self)) - tableView.register(twoColumnCellNib, forCellReuseIdentifier: WidgetTwoColumnCell.reuseIdentifier) - - let unconfiguredCellNib = UINib(nibName: String(describing: WidgetUnconfiguredCell.self), bundle: Bundle(for: WidgetUnconfiguredCell.self)) - tableView.register(unconfiguredCellNib, forCellReuseIdentifier: WidgetUnconfiguredCell.reuseIdentifier) - - let urlCellNib = UINib(nibName: String(describing: WidgetUrlCell.self), bundle: Bundle(for: WidgetUrlCell.self)) - tableView.register(urlCellNib, forCellReuseIdentifier: WidgetUrlCell.reuseIdentifier) - - let noConnectionCellNib = UINib(nibName: String(describing: WidgetNoConnectionCell.self), bundle: Bundle(for: WidgetNoConnectionCell.self)) - tableView.register(noConnectionCellNib, forCellReuseIdentifier: WidgetNoConnectionCell.reuseIdentifier) - } - - func noConnectionCellFor(indexPath: IndexPath) -> UITableViewCell { - guard let cell = tableView.dequeueReusableCell(withIdentifier: WidgetNoConnectionCell.reuseIdentifier, for: indexPath) as? WidgetNoConnectionCell else { - return UITableViewCell() - } - - return cell - } - - func unconfiguredCellFor(indexPath: IndexPath) -> UITableViewCell { - guard let cell = tableView.dequeueReusableCell(withIdentifier: WidgetUnconfiguredCell.reuseIdentifier, for: indexPath) as? WidgetUnconfiguredCell else { - return UITableViewCell() - } - - loadingFailed ? cell.configure(for: .loadingFailed) : cell.configure(for: .today) - return cell - } - - func statCellFor(indexPath: IndexPath) -> UITableViewCell { - - // URL Cell - if showUrl() && indexPath.row == numberOfRowsToDisplay() - 1 { - guard let urlCell = tableView.dequeueReusableCell(withIdentifier: WidgetUrlCell.reuseIdentifier, for: indexPath) as? WidgetUrlCell else { - return UITableViewCell() - } - - urlCell.configure(siteUrl: siteUrl) - return urlCell - } - - // Data Cells - guard let cell = tableView.dequeueReusableCell(withIdentifier: WidgetTwoColumnCell.reuseIdentifier, for: indexPath) as? WidgetTwoColumnCell else { - return UITableViewCell() - } - - if indexPath.row == 0 { - cell.configure(leftItemName: LocalizedText.views, - leftItemData: viewCount, - rightItemName: LocalizedText.visitors, - rightItemData: visitorCount) - } else { - cell.configure(leftItemName: LocalizedText.likes, - leftItemData: likeCount, - rightItemName: LocalizedText.comments, - rightItemData: commentCount) - } - - return cell - } - - func showUrl() -> Bool { - return (isConfigured && haveSiteUrl) - } - - // MARK: - Expand / Compact View Helpers - - func setAvailableDisplayMode() { - // If something went wrong, don't allow the widget to be expanded. - extensionContext?.widgetLargestAvailableDisplayMode = failedState ? .compact : .expanded - } - - func minRowsToDisplay() -> Int { - if showNoConnection { - return 1 - } - - return showUrl() ? 2 : 1 - } - - func maxRowsToDisplay() -> Int { - if showNoConnection { - return 1 - } - - return showUrl() ? 3 : 2 - } - - func numberOfRowsToDisplay() -> Int { - return extensionContext?.widgetActiveDisplayMode == .compact ? minRowsToDisplay() : maxRowsToDisplay() - } - - func resizeView(withMaximumSize size: CGSize? = nil) { - guard let maxSize = size ?? extensionContext?.widgetMaximumSize(for: .compact) else { - return - } - - let expanded = extensionContext?.widgetActiveDisplayMode == .expanded - preferredContentSize = expanded ? CGSize(width: maxSize.width, height: expandedHeight()) : maxSize - } - - func expandedHeight() -> CGFloat { - var height: CGFloat = 0 - let dataRowHeight: CGFloat - - // This method is called before the rows are updated. - // So if a no connection cell was displayed, use the default height for data rows. - // Otherwise, use the actual height from the first data row. - if tableView.visibleCells.first is WidgetNoConnectionCell { - dataRowHeight = WidgetTwoColumnCell.defaultHeight - } else { - dataRowHeight = tableView.rectForRow(at: IndexPath(row: 0, section: 0)).height - } - - let numRows = numberOfRowsToDisplay() - - if showUrl() { - height += WidgetUrlCell.height - height += (dataRowHeight * CGFloat(numRows - 1)) - } else { - height += (dataRowHeight * CGFloat(numRows)) - } - - return height - } - - // MARK: - Reachability - - func setupReachability() { - isReachable = reachability.isReachable() - - NotificationCenter.default.addObserver(self, - selector: #selector(reachabilityChanged), - name: NSNotification.Name.reachabilityChanged, - object: nil) - reachability.startNotifier() - } - - @objc func reachabilityChanged() { - isReachable = reachability.isReachable() - } - - // MARK: - Helpers - - func updateStatsLabels() { - guard let values = statsValues else { - return - } - - viewCount = values.views.abbreviatedString() - visitorCount = values.visitors.abbreviatedString() - likeCount = values.likes.abbreviatedString() - commentCount = values.comments.abbreviatedString() - } - - // MARK: - Constants - - enum LocalizedText { - static let visitors = AppLocalizedString("Visitors", comment: "Stats Visitors Label") - static let views = AppLocalizedString("Views", comment: "Stats Views Label") - static let likes = AppLocalizedString("Likes", comment: "Stats Likes Label") - static let comments = AppLocalizedString("Comments", comment: "Stats Comments Label") - } - - enum Constants { - static let noDataLabel = "-" - static let baseUrl: String = "\(WPComScheme)://" - static let statsUrl: String = Constants.baseUrl + "viewstats?siteId=" - } - -} diff --git a/WordPress/WordPressTodayWidget/TodayWidgetPrefix.pch b/WordPress/WordPressTodayWidget/TodayWidgetPrefix.pch deleted file mode 100644 index eb1f13aa03b1..000000000000 --- a/WordPress/WordPressTodayWidget/TodayWidgetPrefix.pch +++ /dev/null @@ -1,8 +0,0 @@ -#ifdef __OBJC__ - -#ifndef WPCOM_SCHEME -#warning WPCOM_SCHEME is not defined for this target configuration! Defaulting to "wordpress". -#define WPCOM_SCHEME @"wordpress" -#endif - -#endif diff --git a/WordPress/WordPressTodayWidget/Tracks+TodayWidget.swift b/WordPress/WordPressTodayWidget/Tracks+TodayWidget.swift deleted file mode 100644 index 0c9ad6a99b6a..000000000000 --- a/WordPress/WordPressTodayWidget/Tracks+TodayWidget.swift +++ /dev/null @@ -1,37 +0,0 @@ -import Foundation - - -/// This extension implements helper tracking methods, meant for Today Widget Usage. -/// -extension Tracks { - - // MARK: - Public Methods - - public func trackExtensionStatsLaunched(_ siteID: Int) { - let properties = ["site_id": siteID] - trackExtensionEvent(.statsLaunched, properties: properties as [String: AnyObject]?) - } - - public func trackExtensionConfigureLaunched() { - trackExtensionEvent(.configureLaunched) - } - - public func trackDisplayModeChanged(properties: [String: Bool]) { - trackExtensionEvent(.displayModeChanged, properties: properties as [String: AnyObject]) - } - - // MARK: - Private Helpers - - fileprivate func trackExtensionEvent(_ event: ExtensionEvents, properties: [String: AnyObject]? = nil) { - track(event.rawValue, properties: properties) - } - - - // MARK: - Private Enums - - fileprivate enum ExtensionEvents: String { - case statsLaunched = "wpios_today_extension_stats_launched" - case configureLaunched = "wpios_today_extension_configure_launched" - case displayModeChanged = "wpios_today_extension_display_mode_changed" - } -} diff --git a/WordPress/WordPressTodayWidget/WordPressTodayWidget-Alpha.entitlements b/WordPress/WordPressTodayWidget/WordPressTodayWidget-Alpha.entitlements deleted file mode 100644 index dca30c5b176d..000000000000 --- a/WordPress/WordPressTodayWidget/WordPressTodayWidget-Alpha.entitlements +++ /dev/null @@ -1,14 +0,0 @@ - - - - - com.apple.security.application-groups - - group.org.wordpress.alpha - - keychain-access-groups - - 99KV9Z6BKV.org.wordpress.alpha - - - diff --git a/WordPress/WordPressTodayWidget/WordPressTodayWidget-Bridging-Header.h b/WordPress/WordPressTodayWidget/WordPressTodayWidget-Bridging-Header.h deleted file mode 100644 index ff4dac2f06fc..000000000000 --- a/WordPress/WordPressTodayWidget/WordPressTodayWidget-Bridging-Header.h +++ /dev/null @@ -1,2 +0,0 @@ -#import "SFHFKeychainUtils.h" -#import "Constants.h" diff --git a/WordPress/WordPressTodayWidget/WordPressTodayWidget-Internal.entitlements b/WordPress/WordPressTodayWidget/WordPressTodayWidget-Internal.entitlements deleted file mode 100644 index 54ecf75e3680..000000000000 --- a/WordPress/WordPressTodayWidget/WordPressTodayWidget-Internal.entitlements +++ /dev/null @@ -1,14 +0,0 @@ - - - - - com.apple.security.application-groups - - group.org.wordpress.internal - - keychain-access-groups - - 99KV9Z6BKV.org.wordpress.internal - - - diff --git a/WordPress/WordPressTodayWidget/WordPressTodayWidget.entitlements b/WordPress/WordPressTodayWidget/WordPressTodayWidget.entitlements deleted file mode 100644 index 7eb5daa80a0d..000000000000 --- a/WordPress/WordPressTodayWidget/WordPressTodayWidget.entitlements +++ /dev/null @@ -1,14 +0,0 @@ - - - - - com.apple.security.application-groups - - group.org.wordpress - - keychain-access-groups - - 3TMU3BH3NK.org.wordpress - - - diff --git a/WordPress/Wordpress-Alpha-Info.plist b/WordPress/Wordpress-Alpha-Info.plist index 1d295453d98a..c6d5ac195404 100644 --- a/WordPress/Wordpress-Alpha-Info.plist +++ b/WordPress/Wordpress-Alpha-Info.plist @@ -491,8 +491,6 @@ Noticons.ttf - UIApplicationShortcutWidget - org.wordpress.alpha.WordPressTodayWidget UIBackgroundModes fetch diff --git a/fastlane/Fastfile b/fastlane/Fastfile index da90e149d69d..333b16437a61 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -31,7 +31,6 @@ WORDPRESS_BUNDLE_IDENTIFIER = 'org.wordpress' WORDPRESS_EXTENSIONS_BUNDLE_IDENTIFIERS = %w[ WordPressShare WordPressDraftAction - WordPressTodayWidget WordPressStatsWidgets WordPressNotificationServiceExtension WordPressNotificationContentExtension From 81d2e711a69c5dda26cf74a3df1971d4482ba254 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Thu, 27 Oct 2022 14:59:27 +1100 Subject: [PATCH 09/19] Remove `WordPressAllTimeWidget` in preparation to drop iOS 13 This legacy widget extension has been superseded by `WordPressStatsWidgets`. --- Podfile | 12 - Podfile.lock | 2 +- .../Data/AllTimeWidgetStats.swift | 1 - WordPress/WordPress.xcodeproj/project.pbxproj | 446 ---------------- .../AllTimeViewController.swift | 490 ------------------ .../AllTimeWidgetPrefix.pch | 8 - .../WordPressAllTimeWidget/Info-Alpha.plist | 33 -- .../Info-Internal.plist | 33 -- WordPress/WordPressAllTimeWidget/Info.plist | 33 -- .../MainInterface.storyboard | 43 -- .../Tracks+AllTimeWidget.swift | 37 -- .../WordPressAllTimeWidget-Alpha.entitlements | 14 - .../WordPressAllTimeWidget-Bridging-Header.h | 2 - ...rdPressAllTimeWidget-Internal.entitlements | 14 - .../WordPressAllTimeWidget.entitlements | 14 - fastlane/Fastfile | 1 - 16 files changed, 1 insertion(+), 1182 deletions(-) delete mode 100644 WordPress/WordPressAllTimeWidget/AllTimeViewController.swift delete mode 100644 WordPress/WordPressAllTimeWidget/AllTimeWidgetPrefix.pch delete mode 100644 WordPress/WordPressAllTimeWidget/Info-Alpha.plist delete mode 100644 WordPress/WordPressAllTimeWidget/Info-Internal.plist delete mode 100644 WordPress/WordPressAllTimeWidget/Info.plist delete mode 100644 WordPress/WordPressAllTimeWidget/MainInterface.storyboard delete mode 100644 WordPress/WordPressAllTimeWidget/Tracks+AllTimeWidget.swift delete mode 100644 WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget-Alpha.entitlements delete mode 100644 WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget-Bridging-Header.h delete mode 100644 WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget-Internal.entitlements delete mode 100644 WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget.entitlements diff --git a/Podfile b/Podfile index a35ca3aac51f..8797935a2b30 100644 --- a/Podfile +++ b/Podfile @@ -305,18 +305,6 @@ target 'JetpackDraftActionExtension' do wordpress_ui end -## All Time Widget -## ============ -## -target 'WordPressAllTimeWidget' do - project 'WordPress/WordPress.xcodeproj' - - shared_with_all_pods - shared_with_networking_pods - - wordpress_ui -end - ## This Week Widget ## ============ ## diff --git a/Podfile.lock b/Podfile.lock index 5217a2b53728..680055ed696a 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -880,6 +880,6 @@ SPEC CHECKSUMS: ZendeskSupportSDK: 3a8e508ab1d9dd22dc038df6c694466414e037ba ZIPFoundation: ae5b4b813d216d3bf0a148773267fff14bd51d37 -PODFILE CHECKSUM: 9aa46b42e7b64d8c7bfe36b8b3ab46b28d328e5e +PODFILE CHECKSUM: 3046b733107c3eb95b571475fde974dffb1b6cab COCOAPODS: 1.11.2 diff --git a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Data/AllTimeWidgetStats.swift b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Data/AllTimeWidgetStats.swift index 1dc6a77692af..ef233a10aad3 100644 --- a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Data/AllTimeWidgetStats.swift +++ b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Data/AllTimeWidgetStats.swift @@ -2,7 +2,6 @@ import Foundation /// This struct contains data for the Insights All Time stats to be displayed in the corresponding widget. /// The data is stored in a plist for the widget to access. -/// This file is shared with WordPressAllTimeWidget, which accesses the data when it is viewed. /// struct AllTimeWidgetStats: Codable { diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index e0e9c083b3fe..82e4babbb648 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -118,7 +118,6 @@ 0107E16428FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16528FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16628FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; - 0107E16828FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16928FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16A28FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16B28FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; @@ -139,7 +138,6 @@ 0148CC2B2859C87000CF5D96 /* BlogServiceMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0148CC2A2859C87000CF5D96 /* BlogServiceMock.swift */; }; 01CE5007290A889F00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; 01CE5008290A88BD00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; - 01CE500A290A88BE00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; 01CE500B290A88BF00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; 01CE500C290A88BF00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; 01CE500E290A88C100A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; @@ -258,7 +256,6 @@ 08F8CD371EBD2AA80049D0C0 /* test-image-device-photo-gps.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 08F8CD341EBD2AA80049D0C0 /* test-image-device-photo-gps.jpg */; }; 08F8CD391EBD2C970049D0C0 /* MediaURLExporter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 08F8CD381EBD2C970049D0C0 /* MediaURLExporter.swift */; }; 08F8CD3B1EBD2D020049D0C0 /* MediaURLExporterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 08F8CD3A1EBD2D020049D0C0 /* MediaURLExporterTests.swift */; }; - 092C3801275E718100BBBDD9 /* AppLocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F2656A025AF4DFA0073A832 /* AppLocalizedString.swift */; }; 092C3802275E718100BBBDD9 /* AppLocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F2656A025AF4DFA0073A832 /* AppLocalizedString.swift */; }; 098B8576275E76FE004D299F /* AppLocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F2656A025AF4DFA0073A832 /* AppLocalizedString.swift */; }; 098B8577275E9765004D299F /* AppLocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F2656A025AF4DFA0073A832 /* AppLocalizedString.swift */; }; @@ -467,12 +464,8 @@ 17A4A36920EE51870071C2CA /* Routes+Reader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A4A36820EE51870071C2CA /* Routes+Reader.swift */; }; 17A4A36C20EE55320071C2CA /* ReaderCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A4A36B20EE55320071C2CA /* ReaderCoordinator.swift */; }; 17A4B69C24F91022002DFB8E /* FeatureFlag.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1D690151F828FF000200E30 /* FeatureFlag.swift */; }; - 17A4B69D24F91023002DFB8E /* FeatureFlag.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1D690151F828FF000200E30 /* FeatureFlag.swift */; }; - 17A4B69E24F9104F002DFB8E /* BuildConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1D690141F828FF000200E30 /* BuildConfiguration.swift */; }; 17A4B69F24F91050002DFB8E /* BuildConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1D690141F828FF000200E30 /* BuildConfiguration.swift */; }; - 17A4B6A024F91070002DFB8E /* FeatureFlagOverrideStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A09B98238FE13B0022AE0D /* FeatureFlagOverrideStore.swift */; }; 17A4B6A124F91072002DFB8E /* FeatureFlagOverrideStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A09B98238FE13B0022AE0D /* FeatureFlagOverrideStore.swift */; }; - 17A4B6A224F911D4002DFB8E /* KeyValueDatabase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1751E5901CE0E552000CA08D /* KeyValueDatabase.swift */; }; 17A4B6A324F911D5002DFB8E /* KeyValueDatabase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1751E5901CE0E552000CA08D /* KeyValueDatabase.swift */; }; 17A8858D2757B97F0071FCA3 /* AutomatticAbout in Frameworks */ = {isa = PBXBuildFile; productRef = 17A8858C2757B97F0071FCA3 /* AutomatticAbout */; }; 17A8858F2757BEC00071FCA3 /* AutomatticAbout in Frameworks */ = {isa = PBXBuildFile; productRef = 17A8858E2757BEC00071FCA3 /* AutomatticAbout */; }; @@ -1225,7 +1218,6 @@ 5DFA7EC31AF7CB910072023B /* Pages.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 5DFA7EC21AF7CB910072023B /* Pages.storyboard */; }; 5DFA7EC71AF814E40072023B /* PageListTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 5DFA7EC51AF814E40072023B /* PageListTableViewCell.m */; }; 5DFA7EC81AF814E40072023B /* PageListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 5DFA7EC61AF814E40072023B /* PageListTableViewCell.xib */; }; - 638E2F3D4DFE9E93AF660CED /* Pods_WordPressAllTimeWidget.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0075A07B739C4EDB5EC613B8 /* Pods_WordPressAllTimeWidget.framework */; }; 660A036E6EE9D353F2712081 /* (null) in Frameworks */ = {isa = PBXBuildFile; }; 6E5BA46926A59D620043A6F2 /* SupportScreenTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E5BA46826A59D620043A6F2 /* SupportScreenTests.swift */; }; 730354BA21C867E500CD18C2 /* SiteCreatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 730354B921C867E500CD18C2 /* SiteCreatorTests.swift */; }; @@ -1783,7 +1775,6 @@ 830A58D92793AB4500CDE94F /* LoginEpilogueAnimator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 830A58D72793AB4400CDE94F /* LoginEpilogueAnimator.swift */; }; 8320BDE5283D9359009DF2DE /* BlogService+BloggingPrompts.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8320BDE4283D9359009DF2DE /* BlogService+BloggingPrompts.swift */; }; 8320BDE6283D9359009DF2DE /* BlogService+BloggingPrompts.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8320BDE4283D9359009DF2DE /* BlogService+BloggingPrompts.swift */; }; - 8323789628526E6C003F4443 /* AppConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA25F9FD2609AA830005E08F /* AppConfiguration.swift */; }; 8323789728526E6C003F4443 /* AppConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA25F9FD2609AA830005E08F /* AppConfiguration.swift */; }; 8323789828526E6D003F4443 /* AppConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA25F9FD2609AA830005E08F /* AppConfiguration.swift */; }; 8323789928526E6E003F4443 /* AppConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA25F9FD2609AA830005E08F /* AppConfiguration.swift */; }; @@ -1812,7 +1803,6 @@ 839B150C2795DEE0009F5E77 /* UIView+Margins.swift in Sources */ = {isa = PBXBuildFile; fileRef = 839B150A2795DEE0009F5E77 /* UIView+Margins.swift */; }; 83A1B19528AFE47900E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; 83A1B19628AFE47A00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; - 83A1B19828AFE47B00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; 83A1B19928AFE47B00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; 83A1B19A28AFE47C00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; 83A1B19B28AFE47D00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; @@ -2159,9 +2149,7 @@ 985793C922F23D7000643DBF /* CustomizeInsightsCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 985793C722F23D7000643DBF /* CustomizeInsightsCell.xib */; }; 98579BC7203DD86F004086E4 /* EpilogueSectionHeaderFooter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98579BC5203DD86D004086E4 /* EpilogueSectionHeaderFooter.swift */; }; 98579BC8203DD86F004086E4 /* EpilogueSectionHeaderFooter.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98579BC6203DD86E004086E4 /* EpilogueSectionHeaderFooter.xib */; }; - 985ED0E223C686CA00B8D06A /* ColorPalette.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 435B76292297484200511813 /* ColorPalette.xcassets */; }; 985ED0E423C6950600B8D06A /* WidgetStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 985ED0E323C6950600B8D06A /* WidgetStyles.swift */; }; - 985ED0E823C6964600B8D06A /* WidgetStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 985ED0E323C6950600B8D06A /* WidgetStyles.swift */; }; 98622E9F274C59A400061A5F /* ReaderDetailCommentsTableViewDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98622E9E274C59A400061A5F /* ReaderDetailCommentsTableViewDelegate.swift */; }; 98622EA0274C59A400061A5F /* ReaderDetailCommentsTableViewDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98622E9E274C59A400061A5F /* ReaderDetailCommentsTableViewDelegate.swift */; }; 9865257D2194D77F0078B916 /* SiteStatsInsightsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9865257C2194D77E0078B916 /* SiteStatsInsightsViewModel.swift */; }; @@ -2179,9 +2167,7 @@ 986FF2A0214198D9005B28EC /* String+Ranges.swift in Sources */ = {isa = PBXBuildFile; fileRef = B55FFCF91F034F1A0070812C /* String+Ranges.swift */; }; 98712D1B23DA1C7E00555316 /* WidgetNoConnectionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */; }; 98712D1C23DA1C7E00555316 /* WidgetNoConnectionCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */; }; - 98712D1E23DA1D0900555316 /* WidgetNoConnectionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */; }; 98712D1F23DA1D0A00555316 /* WidgetNoConnectionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */; }; - 98712D2123DA1D1100555316 /* WidgetNoConnectionCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */; }; 98712D2223DA1D1200555316 /* WidgetNoConnectionCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */; }; 9872CB30203B8A730066A293 /* SignupEpilogueTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9872CB2F203B8A730066A293 /* SignupEpilogueTableViewController.swift */; }; 9874766F219630240080967F /* SiteStatsTableViewCells.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9874766E219630240080967F /* SiteStatsTableViewCells.swift */; }; @@ -2209,9 +2195,7 @@ 988AC37922F10E2C00BC1433 /* FileDownloadsStatsRecordValue+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988AC37822F10E2C00BC1433 /* FileDownloadsStatsRecordValue+CoreDataClass.swift */; }; 988F073523D0CE8800AC67A6 /* WidgetUrlCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */; }; 988F073623D0CE8800AC67A6 /* WidgetUrlCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */; }; - 988F073823D0D15D00AC67A6 /* WidgetUrlCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */; }; 988F073923D0D15E00AC67A6 /* WidgetUrlCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */; }; - 988F073B23D0D16800AC67A6 /* WidgetUrlCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */; }; 988F073C23D0D16800AC67A6 /* WidgetUrlCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */; }; 988FD74A279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */; }; 988FD74B279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */; }; @@ -2241,12 +2225,6 @@ 98A3C2FA239997DA0048D38D /* WordPressThisWeekWidget.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = 98A3C2EF239997DA0048D38D /* WordPressThisWeekWidget.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; 98A3C3022399A19F0048D38D /* MainInterface.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 98A3C3002399A1850048D38D /* MainInterface.storyboard */; }; 98A3C3052399A2370048D38D /* ThisWeekViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A3C3042399A2370048D38D /* ThisWeekViewController.swift */; }; - 98A6B98F2398807F0031AEBD /* WidgetTwoColumnCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FD237CC1DE00218CD2 /* WidgetTwoColumnCell.swift */; }; - 98A6B9902398808B0031AEBD /* WidgetUnconfiguredCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FB237CC1DE00218CD2 /* WidgetUnconfiguredCell.swift */; }; - 98A6B992239881630031AEBD /* UIColor+MurielColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 435B762122973D0600511813 /* UIColor+MurielColors.swift */; }; - 98A6B993239881860031AEBD /* MurielColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4326191422FCB9DC003C7642 /* MurielColor.swift */; }; - 98A6B9942398821B0031AEBD /* WidgetTwoColumnCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989064FE237CC1DE00218CD2 /* WidgetTwoColumnCell.xib */; }; - 98A6B996239882350031AEBD /* WidgetUnconfiguredCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989064FC237CC1DE00218CD2 /* WidgetUnconfiguredCell.xib */; }; 98AA6D1126B8CE7200920C8B /* Comment+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AA6D1026B8CE7200920C8B /* Comment+CoreDataClass.swift */; }; 98AA6D1226B8CE7200920C8B /* Comment+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AA6D1026B8CE7200920C8B /* Comment+CoreDataClass.swift */; }; 98AA9F2127EA890800B3A98C /* FeatureIntroductionViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AA9F2027EA890800B3A98C /* FeatureIntroductionViewController.swift */; }; @@ -2273,21 +2251,10 @@ 98BC522D27F62B6300D6E8C2 /* BloggingPromptsFeatureDescriptionView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98BC522C27F62B6300D6E8C2 /* BloggingPromptsFeatureDescriptionView.xib */; }; 98BC522E27F62B6300D6E8C2 /* BloggingPromptsFeatureDescriptionView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98BC522C27F62B6300D6E8C2 /* BloggingPromptsFeatureDescriptionView.xib */; }; 98BDFF6B20D0732900C72C58 /* SupportTableViewController+Activity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98BDFF6A20D0732900C72C58 /* SupportTableViewController+Activity.swift */; }; - 98BFF57C2398406A008A1DCB /* CocoaLumberjack.swift in Sources */ = {isa = PBXBuildFile; fileRef = 938CF3DB1EF1BE6800AF838E /* CocoaLumberjack.swift */; }; 98BFF57E23984345008A1DCB /* AllTimeWidgetStats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98BFF57D23984344008A1DCB /* AllTimeWidgetStats.swift */; }; - 98BFF57F23984345008A1DCB /* AllTimeWidgetStats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98BFF57D23984344008A1DCB /* AllTimeWidgetStats.swift */; }; - 98C0CE9B23C559C800D0F27C /* Double+Stats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 981C82B52193A7B900A06E84 /* Double+Stats.swift */; }; 98CAD296221B4ED2003E8F45 /* StatSection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98CAD295221B4ED1003E8F45 /* StatSection.swift */; }; - 98D31B8F2396ED7F009CFF43 /* NotificationCenter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 93E5283B19A7741A003A1A9C /* NotificationCenter.framework */; }; - 98D31B992396ED7F009CFF43 /* WordPressAllTimeWidget.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = 98D31B8E2396ED7E009CFF43 /* WordPressAllTimeWidget.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; - 98D31BA72396F7E2009CFF43 /* AllTimeViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98D31BA52396F7BF009CFF43 /* AllTimeViewController.swift */; }; - 98D31BAC23970078009CFF43 /* Tracks+AllTimeWidget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98D31BAB23970078009CFF43 /* Tracks+AllTimeWidget.swift */; }; - 98D31BAD2397015C009CFF43 /* Tracks.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FA22821C99F6180016CA7C /* Tracks.swift */; }; - 98D31BAE239708FB009CFF43 /* Constants.m in Sources */ = {isa = PBXBuildFile; fileRef = B5CC05F51962150600975CAC /* Constants.m */; }; - 98D31BC223972A79009CFF43 /* SFHFKeychainUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 292CECFF1027259000BD407D /* SFHFKeychainUtils.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 98D52C3222B1CFEC00831529 /* StatsTwoColumnRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98D52C3022B1CFEB00831529 /* StatsTwoColumnRow.swift */; }; 98D52C3322B1CFEC00831529 /* StatsTwoColumnRow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98D52C3122B1CFEC00831529 /* StatsTwoColumnRow.xib */; }; - 98D7ECCE23983D0800B87710 /* MainInterface.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 98DE9A9E239835C800A88D01 /* MainInterface.storyboard */; }; 98DCF4A5275945E00008630F /* ReaderDetailNoCommentCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98DCF4A3275945DF0008630F /* ReaderDetailNoCommentCell.swift */; }; 98DCF4A6275945E00008630F /* ReaderDetailNoCommentCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98DCF4A3275945DF0008630F /* ReaderDetailNoCommentCell.swift */; }; 98DCF4A7275945E00008630F /* ReaderDetailNoCommentCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98DCF4A4275945DF0008630F /* ReaderDetailNoCommentCell.xib */; }; @@ -5138,13 +5105,11 @@ FAD2539026116A1600EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD2539126116A1600EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD2544226116CEA00EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2544126116CEA00EDAF88 /* AppStyleGuide.swift */; }; - FAD2566D2611AEC500EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD2566E2611AEC600EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD2566F2611AEC700EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD256932611B01700EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; FAD256A62611B01A00EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; FAD256B82611B01B00EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; - FAD256EE2611B01F00EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; FAD257132611B04D00EDAF88 /* UIColor+JetpackColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD257112611B04D00EDAF88 /* UIColor+JetpackColors.swift */; }; FAD257F42611B54100EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; FAD257F52611B54200EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; @@ -5399,13 +5364,6 @@ remoteGlobalIDString = 98A3C2EE239997DA0048D38D; remoteInfo = WordPressThisWeekWidget; }; - 98D31B972396ED7F009CFF43 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */; - proxyType = 1; - remoteGlobalIDString = 98D31B8D2396ED7E009CFF43; - remoteInfo = WordPressAllTimeWidget; - }; E16AB93E14D978520047A2E5 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */; @@ -5447,7 +5405,6 @@ 7457667C202B558C00F42E40 /* WordPressDraftActionExtension.appex in Embed Foundation Extensions */, F1F163D625658B4D003DC13B /* WordPressIntents.appex in Embed Foundation Extensions */, 7358E6BF210BD318002323EB /* WordPressNotificationServiceExtension.appex in Embed Foundation Extensions */, - 98D31B992396ED7F009CFF43 /* WordPressAllTimeWidget.appex in Embed Foundation Extensions */, 932225B11C7CE50300443B02 /* WordPressShareExtension.appex in Embed Foundation Extensions */, 3F526C5C2538CF2B0069706C /* WordPressStatsWidgets.appex in Embed Foundation Extensions */, ); @@ -5472,7 +5429,6 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ - 0075A07B739C4EDB5EC613B8 /* Pods_WordPressAllTimeWidget.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_WordPressAllTimeWidget.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 0107E0EA28F97D5000DE87DB /* JetpackStatsWidgets.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = JetpackStatsWidgets.appex; sourceTree = BUILT_PRODUCTS_DIR; }; 0107E15428FE9DB200DE87DB /* JetpackIntents.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = JetpackIntents.appex; sourceTree = BUILT_PRODUCTS_DIR; }; 0107E15C28FFE99300DE87DB /* WidgetConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WidgetConfiguration.swift; sourceTree = ""; }; @@ -5677,7 +5633,6 @@ 0A69300A28B5AA5E00E98DE1 /* FullScreenCommentReplyViewModelTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FullScreenCommentReplyViewModelTests.swift; sourceTree = ""; }; 0A9610F828B2E56300076EBA /* UserSuggestion+Comparable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UserSuggestion+Comparable.swift"; sourceTree = ""; }; 0A9687BB28B40771009DCD2F /* FullScreenCommentReplyViewModelMock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FullScreenCommentReplyViewModelMock.swift; sourceTree = ""; }; - 0EAD25F1E69B6B91783C4963 /* Pods-WordPressAllTimeWidget.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressAllTimeWidget.debug.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressAllTimeWidget/Pods-WordPressAllTimeWidget.debug.xcconfig"; sourceTree = ""; }; 10BBFF34EBDA2F9B8CB48DF6 /* Pods-WordPressUITests.release-internal.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressUITests.release-internal.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressUITests/Pods-WordPressUITests.release-internal.xcconfig"; sourceTree = ""; }; 131D0EE49695795ECEDAA446 /* Pods-WordPressTest.release-alpha.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressTest.release-alpha.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressTest/Pods-WordPressTest.release-alpha.xcconfig"; sourceTree = ""; }; 150B6590614A28DF9AD25491 /* Pods-Apps-Jetpack.release-alpha.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Apps-Jetpack.release-alpha.xcconfig"; path = "../Pods/Target Support Files/Pods-Apps-Jetpack/Pods-Apps-Jetpack.release-alpha.xcconfig"; sourceTree = ""; }; @@ -6279,7 +6234,6 @@ 40F50B7F221310D400CBBB73 /* FollowersStatsRecordValueTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FollowersStatsRecordValueTests.swift; sourceTree = ""; }; 40F50B81221310F000CBBB73 /* StatsTestCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatsTestCase.swift; sourceTree = ""; }; 40FC6B7E2072E3EB00B9A1CD /* ActivityDetailViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActivityDetailViewController.swift; sourceTree = ""; }; - 41341F0000A9A65A3326F2EC /* Pods-WordPressAllTimeWidget.release-internal.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressAllTimeWidget.release-internal.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressAllTimeWidget/Pods-WordPressAllTimeWidget.release-internal.xcconfig"; sourceTree = ""; }; 430693731DD25F31009398A2 /* PostPost.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = PostPost.storyboard; sourceTree = ""; }; 430D50BD212B7AAE008F15F4 /* NoticeStyle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeStyle.swift; sourceTree = ""; }; 430F7B409FE22699ADB1A724 /* Pods_JetpackDraftActionExtension.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_JetpackDraftActionExtension.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -6592,7 +6546,6 @@ 5DFA7EC61AF814E40072023B /* PageListTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = PageListTableViewCell.xib; sourceTree = ""; }; 5E48AA7F709A5B0F2318A7E3 /* Pods-JetpackDraftActionExtension.release-internal.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-JetpackDraftActionExtension.release-internal.xcconfig"; path = "../Pods/Target Support Files/Pods-JetpackDraftActionExtension/Pods-JetpackDraftActionExtension.release-internal.xcconfig"; sourceTree = ""; }; 67832AB9D81652460A80BE66 /* Pods-Apps-Jetpack.release-internal.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Apps-Jetpack.release-internal.xcconfig"; path = "../Pods/Target Support Files/Pods-Apps-Jetpack/Pods-Apps-Jetpack.release-internal.xcconfig"; sourceTree = ""; }; - 6A9F41AAF18FB527262CC57C /* Pods-WordPressAllTimeWidget.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressAllTimeWidget.release.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressAllTimeWidget/Pods-WordPressAllTimeWidget.release.xcconfig"; sourceTree = ""; }; 6C1B070FAD875CA331772B57 /* Pods-WordPressStatsWidgets.release-alpha.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressStatsWidgets.release-alpha.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressStatsWidgets/Pods-WordPressStatsWidgets.release-alpha.xcconfig"; sourceTree = ""; }; 6E5BA46826A59D620043A6F2 /* SupportScreenTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SupportScreenTests.swift; sourceTree = ""; }; 6EC71EC22689A67400ACC0A0 /* SupportScreen.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SupportScreen.swift; sourceTree = ""; }; @@ -7358,23 +7311,11 @@ 98BDFF6A20D0732900C72C58 /* SupportTableViewController+Activity.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "SupportTableViewController+Activity.swift"; sourceTree = ""; }; 98BFF57D23984344008A1DCB /* AllTimeWidgetStats.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AllTimeWidgetStats.swift; sourceTree = ""; }; 98CAD295221B4ED1003E8F45 /* StatSection.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StatSection.swift; sourceTree = ""; }; - 98D31B8E2396ED7E009CFF43 /* WordPressAllTimeWidget.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = WordPressAllTimeWidget.appex; sourceTree = BUILT_PRODUCTS_DIR; }; - 98D31B962396ED7F009CFF43 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 98D31BA02396F417009CFF43 /* Info-Alpha.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-Alpha.plist"; sourceTree = ""; }; - 98D31BA12396F417009CFF43 /* Info-Internal.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-Internal.plist"; sourceTree = ""; }; - 98D31BA22396F5C1009CFF43 /* WordPressAllTimeWidget.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = WordPressAllTimeWidget.entitlements; sourceTree = ""; }; - 98D31BA32396F5C1009CFF43 /* WordPressAllTimeWidget-Alpha.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "WordPressAllTimeWidget-Alpha.entitlements"; sourceTree = ""; }; - 98D31BA42396F5C2009CFF43 /* WordPressAllTimeWidget-Internal.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "WordPressAllTimeWidget-Internal.entitlements"; sourceTree = ""; }; - 98D31BA52396F7BF009CFF43 /* AllTimeViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AllTimeViewController.swift; sourceTree = ""; }; - 98D31BA82396FAD2009CFF43 /* WordPressAllTimeWidget-Bridging-Header.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WordPressAllTimeWidget-Bridging-Header.h"; sourceTree = ""; }; - 98D31BA92396FBDC009CFF43 /* AllTimeWidgetPrefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AllTimeWidgetPrefix.pch; sourceTree = ""; }; - 98D31BAB23970078009CFF43 /* Tracks+AllTimeWidget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Tracks+AllTimeWidget.swift"; sourceTree = ""; }; 98D52C3022B1CFEB00831529 /* StatsTwoColumnRow.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StatsTwoColumnRow.swift; sourceTree = ""; }; 98D52C3122B1CFEC00831529 /* StatsTwoColumnRow.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = StatsTwoColumnRow.xib; sourceTree = ""; }; 98DCF4A3275945DF0008630F /* ReaderDetailNoCommentCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ReaderDetailNoCommentCell.swift; sourceTree = ""; }; 98DCF4A4275945DF0008630F /* ReaderDetailNoCommentCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = ReaderDetailNoCommentCell.xib; sourceTree = ""; }; 98DD1EF2263337C400CF0440 /* WordPress 122.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "WordPress 122.xcdatamodel"; sourceTree = ""; }; - 98DE9A9E239835C800A88D01 /* MainInterface.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = MainInterface.storyboard; sourceTree = ""; }; 98E0829E2637545C00537BF1 /* PostService+Likes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "PostService+Likes.swift"; sourceTree = ""; }; 98E14A3B27C9712D007B0896 /* NotificationCommentDetailViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationCommentDetailViewController.swift; sourceTree = ""; }; 98E419DD2399B5A700D8C822 /* Tracks+ThisWeekWidget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Tracks+ThisWeekWidget.swift"; sourceTree = ""; }; @@ -8255,7 +8196,6 @@ E2AA87A418523E5300886693 /* UIView+Subviews.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIView+Subviews.m"; sourceTree = ""; }; E2E7EB44185FB140004F5E72 /* WPBlogSelectorButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WPBlogSelectorButton.h; sourceTree = ""; }; E2E7EB45185FB140004F5E72 /* WPBlogSelectorButton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WPBlogSelectorButton.m; sourceTree = ""; }; - E5B3F5F559826C230DB0DCDD /* Pods-WordPressAllTimeWidget.release-alpha.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressAllTimeWidget.release-alpha.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressAllTimeWidget/Pods-WordPressAllTimeWidget.release-alpha.xcconfig"; sourceTree = ""; }; E603C76F1BC94AED00AD49D7 /* WordPress-37-38.xcmappingmodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcmappingmodel; path = "WordPress-37-38.xcmappingmodel"; sourceTree = ""; }; E60BD230230A3DD400727E82 /* KeyringAccountHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyringAccountHelper.swift; sourceTree = ""; }; E61084B91B9B47BA008050C5 /* ReaderAbstractTopic.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ReaderAbstractTopic.swift; sourceTree = ""; }; @@ -9069,15 +9009,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 98D31B8B2396ED7E009CFF43 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 98D31B8F2396ED7F009CFF43 /* NotificationCenter.framework in Frameworks */, - 638E2F3D4DFE9E93AF660CED /* Pods_WordPressAllTimeWidget.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; E16AB92614D978240047A2E5 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -9813,7 +9744,6 @@ 7358E6B8210BD318002323EB /* WordPressNotificationServiceExtension.appex */, 733F36032126197800988727 /* WordPressNotificationContentExtension.appex */, 98A3C2EF239997DA0048D38D /* WordPressThisWeekWidget.appex */, - 98D31B8E2396ED7E009CFF43 /* WordPressAllTimeWidget.appex */, 3F526C4C2538CF2A0069706C /* WordPressStatsWidgets.appex */, F1F163BE25658B4D003DC13B /* WordPressIntents.appex */, FABB26522602FC2C00C8785C /* Jetpack.app */, @@ -9886,7 +9816,6 @@ 733F36072126197800988727 /* WordPressNotificationContentExtension */, 7358E6B9210BD318002323EB /* WordPressNotificationServiceExtension */, 932225A81C7CE50300443B02 /* WordPressShareExtension */, - 98D31B902396ED7F009CFF43 /* WordPressAllTimeWidget */, 98A3C2F1239997DA0048D38D /* WordPressThisWeekWidget */, 3F526C512538CF2A0069706C /* WordPressStatsWidgets */, F1F163BF25658B4D003DC13B /* WordPressIntents */, @@ -10012,7 +9941,6 @@ AB390AA9C94F16E78184E9D1 /* Pods_WordPressScreenshotGeneration.framework */, 8DCE7542239FBC709B90EA85 /* Pods_WordPressUITests.framework */, 979B445A45E13F3289F2E99E /* Pods_WordPressThisWeekWidget.framework */, - 0075A07B739C4EDB5EC613B8 /* Pods_WordPressAllTimeWidget.framework */, 3F526C4D2538CF2A0069706C /* WidgetKit.framework */, 3F526C4F2538CF2A0069706C /* SwiftUI.framework */, F1F163C825658B4D003DC13B /* IntentsUI.framework */, @@ -13564,40 +13492,6 @@ name = "Social Signup"; sourceTree = ""; }; - 98D31B902396ED7F009CFF43 /* WordPressAllTimeWidget */ = { - isa = PBXGroup; - children = ( - 98D31BA52396F7BF009CFF43 /* AllTimeViewController.swift */, - 98DE9A9E239835C800A88D01 /* MainInterface.storyboard */, - 98D31BA82396FAD2009CFF43 /* WordPressAllTimeWidget-Bridging-Header.h */, - 98D31B9F2396EFAD009CFF43 /* Supporting Files */, - 98D31BAA23970060009CFF43 /* Tracks */, - ); - path = WordPressAllTimeWidget; - sourceTree = ""; - }; - 98D31B9F2396EFAD009CFF43 /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 98D31BA92396FBDC009CFF43 /* AllTimeWidgetPrefix.pch */, - 98D31BA02396F417009CFF43 /* Info-Alpha.plist */, - 98D31BA12396F417009CFF43 /* Info-Internal.plist */, - 98D31B962396ED7F009CFF43 /* Info.plist */, - 98D31BA32396F5C1009CFF43 /* WordPressAllTimeWidget-Alpha.entitlements */, - 98D31BA42396F5C2009CFF43 /* WordPressAllTimeWidget-Internal.entitlements */, - 98D31BA22396F5C1009CFF43 /* WordPressAllTimeWidget.entitlements */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; - 98D31BAA23970060009CFF43 /* Tracks */ = { - isa = PBXGroup; - children = ( - 98D31BAB23970078009CFF43 /* Tracks+AllTimeWidget.swift */, - ); - name = Tracks; - sourceTree = ""; - }; 98E419DC2399B57F00D8C822 /* Tracks */ = { isa = PBXGroup; children = ( @@ -14276,10 +14170,6 @@ 7DFD69454E24EC0A1A0BACCD /* Pods-WordPressThisWeekWidget.release.xcconfig */, 8E65034AFB7DC85D70CCC064 /* Pods-WordPressThisWeekWidget.release-internal.xcconfig */, 40F031E19B32BAF8654838C0 /* Pods-WordPressThisWeekWidget.release-alpha.xcconfig */, - 0EAD25F1E69B6B91783C4963 /* Pods-WordPressAllTimeWidget.debug.xcconfig */, - 6A9F41AAF18FB527262CC57C /* Pods-WordPressAllTimeWidget.release.xcconfig */, - 41341F0000A9A65A3326F2EC /* Pods-WordPressAllTimeWidget.release-internal.xcconfig */, - E5B3F5F559826C230DB0DCDD /* Pods-WordPressAllTimeWidget.release-alpha.xcconfig */, E6C80205BDC1D7FF04D6316A /* Pods-WordPressHomeWidgetToday.debug.xcconfig */, CF343E897B9953453334768C /* Pods-WordPressHomeWidgetToday.release.xcconfig */, 0A27D496128FBCDFA3658994 /* Pods-WordPressHomeWidgetToday.release-internal.xcconfig */, @@ -17224,7 +17114,6 @@ 7457667B202B558C00F42E40 /* PBXTargetDependency */, 7358E6BE210BD318002323EB /* PBXTargetDependency */, 98A3C2F9239997DA0048D38D /* PBXTargetDependency */, - 98D31B982396ED7F009CFF43 /* PBXTargetDependency */, 3F526C5B2538CF2B0069706C /* PBXTargetDependency */, F1F163D525658B4D003DC13B /* PBXTargetDependency */, ); @@ -17450,25 +17339,6 @@ productReference = 98A3C2EF239997DA0048D38D /* WordPressThisWeekWidget.appex */; productType = "com.apple.product-type.app-extension"; }; - 98D31B8D2396ED7E009CFF43 /* WordPressAllTimeWidget */ = { - isa = PBXNativeTarget; - buildConfigurationList = 98D31B9E2396ED7F009CFF43 /* Build configuration list for PBXNativeTarget "WordPressAllTimeWidget" */; - buildPhases = ( - FF1C536C9FA7489B5AAA0FC2 /* [CP] Check Pods Manifest.lock */, - 98D31B8A2396ED7E009CFF43 /* Sources */, - 98D31B8B2396ED7E009CFF43 /* Frameworks */, - 98D31B8C2396ED7E009CFF43 /* Resources */, - 61CF58FC6EB9AB58632C4770 /* [CP] Copy Pods Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = WordPressAllTimeWidget; - productName = WordPressAllTimeWidget; - productReference = 98D31B8E2396ED7E009CFF43 /* WordPressAllTimeWidget.appex */; - productType = "com.apple.product-type.app-extension"; - }; E16AB92914D978240047A2E5 /* WordPressTest */ = { isa = PBXNativeTarget; buildConfigurationList = E16AB93D14D978240047A2E5 /* Build configuration list for PBXNativeTarget "WordPressTest" */; @@ -17693,10 +17563,6 @@ LastSwiftMigration = 1120; ProvisioningStyle = Manual; }; - 98D31B8D2396ED7E009CFF43 = { - CreatedOnToolsVersion = 11.2.1; - ProvisioningStyle = Manual; - }; A2795807198819DE0031C6A3 = { DevelopmentTeam = PZYM8XX95Q; }; @@ -17781,7 +17647,6 @@ 1D6058900D05DD3D006BFB54 /* WordPress */, 932225A61C7CE50300443B02 /* WordPressShareExtension */, 74576671202B558C00F42E40 /* WordPressDraftActionExtension */, - 98D31B8D2396ED7E009CFF43 /* WordPressAllTimeWidget */, 98A3C2EE239997DA0048D38D /* WordPressThisWeekWidget */, 3F526C4B2538CF2A0069706C /* WordPressStatsWidgets */, 733F36022126197800988727 /* WordPressNotificationContentExtension */, @@ -18251,19 +18116,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 98D31B8C2396ED7E009CFF43 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 98A6B9942398821B0031AEBD /* WidgetTwoColumnCell.xib in Resources */, - 985ED0E223C686CA00B8D06A /* ColorPalette.xcassets in Resources */, - 98712D2123DA1D1100555316 /* WidgetNoConnectionCell.xib in Resources */, - 98A6B996239882350031AEBD /* WidgetUnconfiguredCell.xib in Resources */, - 98D7ECCE23983D0800B87710 /* MainInterface.storyboard in Resources */, - 988F073823D0D15D00AC67A6 /* WidgetUrlCell.xib in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; E16AB92714D978240047A2E5 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -19185,28 +19037,6 @@ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - 61CF58FC6EB9AB58632C4770 /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-WordPressAllTimeWidget/Pods-WordPressAllTimeWidget-resources.sh", - "${PODS_ROOT}/FormatterKit/FormatterKit/FormatterKit.bundle", - "${PODS_CONFIGURATION_BUILD_DIR}/WordPressShared/WordPressShared.bundle", - "${PODS_CONFIGURATION_BUILD_DIR}/WordPressUI/WordPressUIResources.bundle", - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FormatterKit.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/WordPressShared.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/WordPressUIResources.bundle", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-WordPressAllTimeWidget/Pods-WordPressAllTimeWidget-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; 72BB9EE3CC91D92F3735F4F3 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -19791,28 +19621,6 @@ shellPath = /bin/sh; shellScript = "# Print commands before executing them (useful for troubleshooting)\nset -x\nDEST=$CONFIGURATION_BUILD_DIR/$UNLOCALIZED_RESOURCES_FOLDER_PATH\n\nif [[ \"$CONFIGURATION\" = *Debug* && ! \"$PLATFORM_NAME\" == *simulator ]]; then\nIP=$(ipconfig getifaddr en0)\nif [ -z \"$IP\" ]; then\nIP=$(ifconfig | grep 'inet ' | grep -v ' 127.' | cut -d\\ -f2 | awk 'NR==1{print $1}')\nfi\n\necho \"$IP\" > \"$DEST/ip.txt\"\nfi\n\nBUNDLE_FILE=\"$DEST/main.jsbundle\"\ncp ${PODS_ROOT}/Gutenberg/bundle/ios/App.js \"${BUNDLE_FILE}\"\n\nBUNDLE_ASSETS=\"$DEST/assets/\"\ncp -r ${PODS_ROOT}/Gutenberg/bundle/ios/assets/ \"${BUNDLE_ASSETS}\"\n"; }; - FF1C536C9FA7489B5AAA0FC2 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-WordPressAllTimeWidget-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; FFA8E2301F94E3EF0002170F /* ShellScript */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -22187,39 +21995,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 98D31B8A2396ED7E009CFF43 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 17A4B6A024F91070002DFB8E /* FeatureFlagOverrideStore.swift in Sources */, - 98A6B98F2398807F0031AEBD /* WidgetTwoColumnCell.swift in Sources */, - 98D31BAD2397015C009CFF43 /* Tracks.swift in Sources */, - 17A4B69D24F91023002DFB8E /* FeatureFlag.swift in Sources */, - 98BFF57C2398406A008A1DCB /* CocoaLumberjack.swift in Sources */, - 98BFF57F23984345008A1DCB /* AllTimeWidgetStats.swift in Sources */, - 98A6B992239881630031AEBD /* UIColor+MurielColors.swift in Sources */, - 98A6B9902398808B0031AEBD /* WidgetUnconfiguredCell.swift in Sources */, - 17A4B69E24F9104F002DFB8E /* BuildConfiguration.swift in Sources */, - 98D31BAC23970078009CFF43 /* Tracks+AllTimeWidget.swift in Sources */, - 988F073B23D0D16800AC67A6 /* WidgetUrlCell.swift in Sources */, - 98D31BA72396F7E2009CFF43 /* AllTimeViewController.swift in Sources */, - 98712D1E23DA1D0900555316 /* WidgetNoConnectionCell.swift in Sources */, - 98A6B993239881860031AEBD /* MurielColor.swift in Sources */, - 092C3801275E718100BBBDD9 /* AppLocalizedString.swift in Sources */, - 8323789628526E6C003F4443 /* AppConfiguration.swift in Sources */, - FAD256EE2611B01F00EDAF88 /* UIColor+WordPressColors.swift in Sources */, - 17A4B6A224F911D4002DFB8E /* KeyValueDatabase.swift in Sources */, - 98D31BC223972A79009CFF43 /* SFHFKeychainUtils.m in Sources */, - 0107E16828FFED1800DE87DB /* WidgetConfiguration.swift in Sources */, - 01CE500A290A88BE00A9C2E0 /* TracksConfiguration.swift in Sources */, - 83A1B19828AFE47B00E737AC /* KeychainUtils.swift in Sources */, - 98D31BAE239708FB009CFF43 /* Constants.m in Sources */, - 98C0CE9B23C559C800D0F27C /* Double+Stats.swift in Sources */, - FAD2566D2611AEC500EDAF88 /* AppStyleGuide.swift in Sources */, - 985ED0E823C6964600B8D06A /* WidgetStyles.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; E16AB92514D978240047A2E5 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -24397,11 +24172,6 @@ target = 98A3C2EE239997DA0048D38D /* WordPressThisWeekWidget */; targetProxy = 98A3C2F8239997DA0048D38D /* PBXContainerItemProxy */; }; - 98D31B982396ED7F009CFF43 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 98D31B8D2396ED7E009CFF43 /* WordPressAllTimeWidget */; - targetProxy = 98D31B972396ED7F009CFF43 /* PBXContainerItemProxy */; - }; E16AB93F14D978520047A2E5 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 1D6058900D05DD3D006BFB54 /* WordPress */; @@ -27874,211 +27644,6 @@ }; name = "Release-Alpha"; }; - 98D31B9A2396ED7F009CFF43 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 0EAD25F1E69B6B91783C4963 /* Pods-WordPressAllTimeWidget.debug.xcconfig */; - buildSettings = { - 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_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = WordPressAllTimeWidget/WordPressAllTimeWidget.entitlements; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = PZYM8XX95Q; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = WordPressAllTimeWidget/AllTimeWidgetPrefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - "WPCOM_SCHEME=\\@\\\"${WPCOM_SCHEME}\\\"", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = WordPressAllTimeWidget/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@executable_path/../../Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = org.wordpress.WordPressAllTimeWidget; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "WordPress All Time Widget Development"; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OBJC_BRIDGING_HEADER = "WordPressAllTimeWidget/WordPressAllTimeWidget-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - WPCOM_SCHEME = wpdebug; - }; - name = Debug; - }; - 98D31B9B2396ED7F009CFF43 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6A9F41AAF18FB527262CC57C /* Pods-WordPressAllTimeWidget.release.xcconfig */; - buildSettings = { - 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_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = WordPressAllTimeWidget/WordPressAllTimeWidget.entitlements; - CODE_SIGN_IDENTITY = "Apple Distribution: Automattic, Inc. (PZYM8XX95Q)"; - CODE_SIGN_STYLE = Manual; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = PZYM8XX95Q; - ENABLE_NS_ASSERTIONS = NO; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = WordPressAllTimeWidget/AllTimeWidgetPrefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = ( - "$(inherited)", - "WPCOM_SCHEME=\\@\\\"${WPCOM_SCHEME}\\\"", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = WordPressAllTimeWidget/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@executable_path/../../Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = org.wordpress.WordPressAllTimeWidget; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "match AppStore org.wordpress.WordPressAllTimeWidget"; - SKIP_INSTALL = YES; - SWIFT_OBJC_BRIDGING_HEADER = "WordPressAllTimeWidget/WordPressAllTimeWidget-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - WPCOM_SCHEME = wordpress; - }; - name = Release; - }; - 98D31B9C2396ED7F009CFF43 /* Release-Internal */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 41341F0000A9A65A3326F2EC /* Pods-WordPressAllTimeWidget.release-internal.xcconfig */; - buildSettings = { - 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_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = "WordPressAllTimeWidget/WordPressAllTimeWidget-Internal.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Distribution: Automattic, Inc."; - CODE_SIGN_STYLE = Manual; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = 99KV9Z6BKV; - ENABLE_NS_ASSERTIONS = NO; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = WordPressAllTimeWidget/AllTimeWidgetPrefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = ( - "WPCOM_SCHEME=\\@\\\"${WPCOM_SCHEME}\\\"", - INTERNAL_BUILD, - "$(inherited)", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = "WordPressAllTimeWidget/Info-Internal.plist"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@executable_path/../../Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = org.wordpress.internal.WordPressAllTimeWidget; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "match InHouse org.wordpress.internal.WordPressAllTimeWidget"; - SKIP_INSTALL = YES; - SWIFT_OBJC_BRIDGING_HEADER = "WordPressAllTimeWidget/WordPressAllTimeWidget-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - WPCOM_SCHEME = wpinternal; - }; - name = "Release-Internal"; - }; - 98D31B9D2396ED7F009CFF43 /* Release-Alpha */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = E5B3F5F559826C230DB0DCDD /* Pods-WordPressAllTimeWidget.release-alpha.xcconfig */; - buildSettings = { - 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_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = "WordPressAllTimeWidget/WordPressAllTimeWidget-Alpha.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Distribution: Automattic, Inc."; - CODE_SIGN_STYLE = Manual; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = 99KV9Z6BKV; - ENABLE_NS_ASSERTIONS = NO; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = WordPressAllTimeWidget/AllTimeWidgetPrefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = ( - ALPHA_BUILD, - "WPCOM_SCHEME=\\@\\\"${WPCOM_SCHEME}\\\"", - "$(inherited)", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = "WordPressAllTimeWidget/Info-Alpha.plist"; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@executable_path/../../Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = org.wordpress.alpha.WordPressAllTimeWidget; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "match InHouse org.wordpress.alpha.WordPressAllTimeWidget"; - SKIP_INSTALL = YES; - SWIFT_OBJC_BRIDGING_HEADER = "WordPressAllTimeWidget/WordPressAllTimeWidget-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - WPCOM_SCHEME = wpalpha; - }; - name = "Release-Alpha"; - }; A2795808198819DE0031C6A3 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -29356,17 +28921,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 98D31B9E2396ED7F009CFF43 /* Build configuration list for PBXNativeTarget "WordPressAllTimeWidget" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 98D31B9A2396ED7F009CFF43 /* Debug */, - 98D31B9B2396ED7F009CFF43 /* Release */, - 98D31B9C2396ED7F009CFF43 /* Release-Internal */, - 98D31B9D2396ED7F009CFF43 /* Release-Alpha */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; A279580C198819DE0031C6A3 /* Build configuration list for PBXAggregateTarget "OCLint" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/WordPress/WordPressAllTimeWidget/AllTimeViewController.swift b/WordPress/WordPressAllTimeWidget/AllTimeViewController.swift deleted file mode 100644 index b31e3419fc6a..000000000000 --- a/WordPress/WordPressAllTimeWidget/AllTimeViewController.swift +++ /dev/null @@ -1,490 +0,0 @@ -import UIKit -import NotificationCenter -import WordPressKit -import WordPressUI -import Reachability - -class AllTimeViewController: UIViewController { - - // MARK: - Properties - - @IBOutlet private var tableView: UITableView! - - private var statsValues: AllTimeWidgetStats? { - didSet { - updateStatsLabels() - tableView.reloadData() - } - } - - private var visitorCount: String = Constants.noDataLabel - private var viewCount: String = Constants.noDataLabel - private var postCount: String = Constants.noDataLabel - private var bestCount: String = Constants.noDataLabel - private var siteUrl: String = Constants.noDataLabel - - private var haveSiteUrl: Bool { - siteUrl != Constants.noDataLabel - } - - private var siteID: NSNumber? - private var timeZone: TimeZone? - private var oauthToken: String? - - private var isConfigured = false { - didSet { - setAvailableDisplayMode() - } - } - - private var isReachable = true { - didSet { - setAvailableDisplayMode() - - if isReachable != oldValue, - let completionHandler = widgetCompletionBlock { - widgetPerformUpdate(completionHandler: completionHandler) - } - } - } - - private var showNoConnection: Bool { - return !isReachable && statsValues == nil - } - - private var loadingFailed = false { - didSet { - setAvailableDisplayMode() - - if loadingFailed != oldValue { - tableView.reloadData() - } - } - } - - private var failedState: Bool { - return !isConfigured || showNoConnection || loadingFailed - } - - private let tracks = Tracks(appGroupName: WPAppGroupName) - private let reachability: Reachability = .forInternetConnection() - - private typealias WidgetCompletionBlock = (NCUpdateResult) -> Void - private var widgetCompletionBlock: WidgetCompletionBlock? - - // MARK: - View - - override func viewDidLoad() { - super.viewDidLoad() - retrieveSiteConfiguration() - registerTableCells() - } - - override func viewWillAppear(_ animated: Bool) { - super.viewWillAppear(animated) - loadSavedData() - setupReachability() - resizeView() - } - - override func viewWillDisappear(_ animated: Bool) { - super.viewWillDisappear(animated) - reachability.stopNotifier() - } - - override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) { - super.viewWillTransition(to: size, with: coordinator) - - let updatedRowCount = numberOfRowsToDisplay() - - // If the number of rows has not changed, do nothing. - guard updatedRowCount != tableView.numberOfRows(inSection: 0) else { - return - } - - coordinator.animate(alongsideTransition: { _ in - self.tableView.performBatchUpdates({ - - var indexPathsToInsert = [IndexPath]() - var indexPathsToDelete = [IndexPath]() - - // If no connection was displayed, then rows are just being added. - // Otherwise, a data row is being inserted/deleted. - if self.tableView.visibleCells.first is WidgetNoConnectionCell { - let indexRange = (1.. self.minRowsToDisplay() ? - self.tableView.insertRows(at: indexPathsToInsert, with: .fade) : - self.tableView.deleteRows(at: indexPathsToDelete, with: .fade) - }) - }) - } - -} - -// MARK: - Widget Updating - -extension AllTimeViewController: NCWidgetProviding { - - func widgetPerformUpdate(completionHandler: (@escaping (NCUpdateResult) -> Void)) { - widgetCompletionBlock = completionHandler - retrieveSiteConfiguration() - isReachable = reachability.isReachable() - - if !isConfigured || !isReachable { - DDLogError("All Time Widget: unable to update. Configured: \(isConfigured) Reachable: \(isReachable)") - - DispatchQueue.main.async { [weak self] in - self?.tableView.reloadData() - } - - completionHandler(.failed) - return - } - - fetchData(completionHandler: completionHandler) - } - - func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) { - tracks.trackDisplayModeChanged(properties: ["expanded": activeDisplayMode == .expanded]) - resizeView(withMaximumSize: maxSize) - } - -} - -// MARK: - Table View Methods - -extension AllTimeViewController: UITableViewDelegate, UITableViewDataSource { - - func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { - return numberOfRowsToDisplay() - } - - func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { - if showNoConnection { - return noConnectionCellFor(indexPath: indexPath) - } - - if !isConfigured || loadingFailed { - return unconfiguredCellFor(indexPath: indexPath) - } - - return statCellFor(indexPath: indexPath) - } - - func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { - - if failedState, - let maxCompactSize = extensionContext?.widgetMaximumSize(for: .compact) { - // Use the max compact height for unconfigured view. - return maxCompactSize.height - } - - if showUrl() && indexPath.row == numberOfRowsToDisplay() - 1 { - return WidgetUrlCell.height - } - - return UITableView.automaticDimension - } - -} - -// MARK: - Private Extension - -private extension AllTimeViewController { - - // MARK: - Tap Gesture Handling - - @IBAction func handleTapGesture() { - - // If showing the loading failed view, reload the widget. - if loadingFailed, - let completionHandler = widgetCompletionBlock { - widgetPerformUpdate(completionHandler: completionHandler) - return - } - - // Otherwise, open the app. - guard isReachable, - let extensionContext = extensionContext, - let containingAppURL = appURL() else { - DDLogError("All Time Widget: Unable to get extensionContext or appURL.") - return - } - - trackAppLaunch() - extensionContext.open(containingAppURL, completionHandler: nil) - } - - func appURL() -> URL? { - let urlString = (siteID != nil) ? (Constants.statsUrl + siteID!.stringValue) : Constants.baseUrl - return URL(string: urlString) - } - - func trackAppLaunch() { - guard let siteID = siteID else { - tracks.trackExtensionConfigureLaunched() - return - } - - tracks.trackExtensionStatsLaunched(siteID.intValue) - } - - // MARK: - Site Configuration - - func retrieveSiteConfiguration() { - guard let sharedDefaults = UserDefaults(suiteName: WPAppGroupName) else { - DDLogError("All Time Widget: Unable to get sharedDefaults.") - isConfigured = false - return - } - - siteID = sharedDefaults.object(forKey: AppConfiguration.Widget.StatsToday.userDefaultsSiteIdKey) as? NSNumber - siteUrl = sharedDefaults.string(forKey: AppConfiguration.Widget.StatsToday.userDefaultsSiteUrlKey) ?? Constants.noDataLabel - oauthToken = fetchOAuthBearerToken() - - if let timeZoneName = sharedDefaults.string(forKey: AppConfiguration.Widget.StatsToday.userDefaultsSiteTimeZoneKey) { - timeZone = TimeZone(identifier: timeZoneName) - } - - isConfigured = siteID != nil && timeZone != nil && oauthToken != nil - } - - func fetchOAuthBearerToken() -> String? { - let oauth2Token = try? KeychainUtils.shared.getPasswordForUsername(AppConfiguration.Widget.Stats.keychainTokenKey, serviceName: AppConfiguration.Widget.Stats.keychainServiceName, accessGroup: WPAppKeychainAccessGroup) - - return oauth2Token as String? - } - - // MARK: - Data Management - - func loadSavedData() { - statsValues = AllTimeWidgetStats.loadSavedData() - } - - func saveData() { - statsValues?.saveData() - } - - func fetchData(completionHandler: (@escaping (NCUpdateResult) -> Void)) { - guard let statsRemote = statsRemote() else { - return - } - - statsRemote.getInsight { [weak self] (allTimesStats: StatsAllTimesInsight?, error) in - self?.loadingFailed = (error != nil) - - if error != nil { - DDLogError("All Time Widget: Error fetching StatsAllTimesInsight: \(String(describing: error?.localizedDescription))") - completionHandler(.failed) - return - } - - DDLogDebug("All Time Widget: Fetched StatsAllTimesInsight data.") - - DispatchQueue.main.async { [weak self] in - let updatedStats = AllTimeWidgetStats(views: allTimesStats?.viewsCount, - visitors: allTimesStats?.visitorsCount, - posts: allTimesStats?.postsCount, - bestViews: allTimesStats?.bestViewsPerDayCount) - - // Update the widget only if the data has changed. - guard updatedStats != self?.statsValues else { - completionHandler(.noData) - return - } - - self?.statsValues = updatedStats - completionHandler(.newData) - self?.saveData() - } - } - } - - func statsRemote() -> StatsServiceRemoteV2? { - guard - let siteID = siteID, - let timeZone = timeZone, - let oauthToken = oauthToken - else { - DDLogError("All Time Widget: Missing site ID, timeZone or oauth2Token") - return nil - } - - let wpApi = WordPressComRestApi(oAuthToken: oauthToken) - return StatsServiceRemoteV2(wordPressComRestApi: wpApi, siteID: siteID.intValue, siteTimezone: timeZone) - } - - // MARK: - Table Helpers - - func registerTableCells() { - let twoColumnCellNib = UINib(nibName: String(describing: WidgetTwoColumnCell.self), bundle: Bundle(for: WidgetTwoColumnCell.self)) - tableView.register(twoColumnCellNib, forCellReuseIdentifier: WidgetTwoColumnCell.reuseIdentifier) - - let unconfiguredCellNib = UINib(nibName: String(describing: WidgetUnconfiguredCell.self), bundle: Bundle(for: WidgetUnconfiguredCell.self)) - tableView.register(unconfiguredCellNib, forCellReuseIdentifier: WidgetUnconfiguredCell.reuseIdentifier) - - let urlCellNib = UINib(nibName: String(describing: WidgetUrlCell.self), bundle: Bundle(for: WidgetUrlCell.self)) - tableView.register(urlCellNib, forCellReuseIdentifier: WidgetUrlCell.reuseIdentifier) - - let noConnectionCellNib = UINib(nibName: String(describing: WidgetNoConnectionCell.self), bundle: Bundle(for: WidgetNoConnectionCell.self)) - tableView.register(noConnectionCellNib, forCellReuseIdentifier: WidgetNoConnectionCell.reuseIdentifier) - } - - func noConnectionCellFor(indexPath: IndexPath) -> UITableViewCell { - guard let cell = tableView.dequeueReusableCell(withIdentifier: WidgetNoConnectionCell.reuseIdentifier, for: indexPath) as? WidgetNoConnectionCell else { - return UITableViewCell() - } - - return cell - } - - func unconfiguredCellFor(indexPath: IndexPath) -> UITableViewCell { - guard let cell = tableView.dequeueReusableCell(withIdentifier: WidgetUnconfiguredCell.reuseIdentifier, for: indexPath) as? WidgetUnconfiguredCell else { - return UITableViewCell() - } - - loadingFailed ? cell.configure(for: .loadingFailed) : cell.configure(for: .allTime) - return cell - } - - func statCellFor(indexPath: IndexPath) -> UITableViewCell { - - // URL Cell - if showUrl() && indexPath.row == numberOfRowsToDisplay() - 1 { - guard let urlCell = tableView.dequeueReusableCell(withIdentifier: WidgetUrlCell.reuseIdentifier, for: indexPath) as? WidgetUrlCell else { - return UITableViewCell() - } - - urlCell.configure(siteUrl: siteUrl) - return urlCell - } - - // Data Cells - guard let cell = tableView.dequeueReusableCell(withIdentifier: WidgetTwoColumnCell.reuseIdentifier, for: indexPath) as? WidgetTwoColumnCell else { - return UITableViewCell() - } - - if indexPath.row == 0 { - cell.configure(leftItemName: LocalizedText.views, - leftItemData: viewCount, - rightItemName: LocalizedText.visitors, - rightItemData: visitorCount) - } else { - cell.configure(leftItemName: LocalizedText.posts, - leftItemData: postCount, - rightItemName: LocalizedText.bestViews, - rightItemData: bestCount) - } - - return cell - } - - func showUrl() -> Bool { - return (isConfigured && haveSiteUrl) - } - - // MARK: - Expand / Compact View Helpers - - func setAvailableDisplayMode() { - // If something went wrong, don't allow the widget to be expanded. - extensionContext?.widgetLargestAvailableDisplayMode = failedState ? .compact : .expanded - } - - func minRowsToDisplay() -> Int { - return showUrl() ? 2 : 1 - } - - func maxRowsToDisplay() -> Int { - return showUrl() ? 3 : 2 - } - - func numberOfRowsToDisplay() -> Int { - return extensionContext?.widgetActiveDisplayMode == .compact ? minRowsToDisplay() : maxRowsToDisplay() - } - - func resizeView(withMaximumSize size: CGSize? = nil) { - guard let maxSize = size ?? extensionContext?.widgetMaximumSize(for: .compact) else { - return - } - - let expanded = extensionContext?.widgetActiveDisplayMode == .expanded - preferredContentSize = expanded ? CGSize(width: maxSize.width, height: expandedHeight()) : maxSize - } - - func expandedHeight() -> CGFloat { - var height: CGFloat = 0 - let dataRowHeight: CGFloat - - // This method is called before the rows are updated. - // So if a no connection cell was displayed, use the default height for data rows. - // Otherwise, use the actual height from the first data row. - if tableView.visibleCells.first is WidgetNoConnectionCell { - dataRowHeight = WidgetTwoColumnCell.defaultHeight - } else { - dataRowHeight = tableView.rectForRow(at: IndexPath(row: 0, section: 0)).height - } - - let numRows = numberOfRowsToDisplay() - - if showUrl() { - height += WidgetUrlCell.height - height += (dataRowHeight * CGFloat(numRows - 1)) - } else { - height += (dataRowHeight * CGFloat(numRows)) - } - - return height - } - // MARK: - Reachability - - func setupReachability() { - isReachable = reachability.isReachable() - - NotificationCenter.default.addObserver(self, - selector: #selector(reachabilityChanged), - name: NSNotification.Name.reachabilityChanged, - object: nil) - reachability.startNotifier() - } - - @objc func reachabilityChanged() { - isReachable = reachability.isReachable() - } - - // MARK: - Helpers - - func updateStatsLabels() { - guard let values = statsValues else { - return - } - - viewCount = values.views.abbreviatedString() - visitorCount = values.visitors.abbreviatedString() - postCount = values.posts.abbreviatedString() - bestCount = values.bestViews.abbreviatedString() - } - - // MARK: - Constants - - enum LocalizedText { - static let visitors = AppLocalizedString("Visitors", comment: "Stats Visitors Label") - static let views = AppLocalizedString("Views", comment: "Stats Views Label") - static let posts = AppLocalizedString("Posts", comment: "Stats Posts Label") - static let bestViews = AppLocalizedString("Best views ever", comment: "Stats 'Best views ever' Label") - } - - enum Constants { - static let noDataLabel = "-" - static let baseUrl: String = "\(WPComScheme)://" - static let statsUrl: String = Constants.baseUrl + "viewstats?siteId=" - } - -} diff --git a/WordPress/WordPressAllTimeWidget/AllTimeWidgetPrefix.pch b/WordPress/WordPressAllTimeWidget/AllTimeWidgetPrefix.pch deleted file mode 100644 index eb1f13aa03b1..000000000000 --- a/WordPress/WordPressAllTimeWidget/AllTimeWidgetPrefix.pch +++ /dev/null @@ -1,8 +0,0 @@ -#ifdef __OBJC__ - -#ifndef WPCOM_SCHEME -#warning WPCOM_SCHEME is not defined for this target configuration! Defaulting to "wordpress". -#define WPCOM_SCHEME @"wordpress" -#endif - -#endif diff --git a/WordPress/WordPressAllTimeWidget/Info-Alpha.plist b/WordPress/WordPressAllTimeWidget/Info-Alpha.plist deleted file mode 100644 index ce19037c41dd..000000000000 --- a/WordPress/WordPressAllTimeWidget/Info-Alpha.plist +++ /dev/null @@ -1,33 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDisplayName - WordPress All-Time (Alpha) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - XPC! - CFBundleSignature - ???? - CFBundleShortVersionString - ${VERSION_SHORT} - CFBundleVersion - ${VERSION_LONG} - NSExtension - - NSExtensionMainStoryboard - MainInterface - NSExtensionPointIdentifier - com.apple.widget-extension - - - diff --git a/WordPress/WordPressAllTimeWidget/Info-Internal.plist b/WordPress/WordPressAllTimeWidget/Info-Internal.plist deleted file mode 100644 index 8cbe937b2004..000000000000 --- a/WordPress/WordPressAllTimeWidget/Info-Internal.plist +++ /dev/null @@ -1,33 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDisplayName - WordPress All-Time (Internal) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - XPC! - CFBundleSignature - ???? - CFBundleShortVersionString - ${VERSION_SHORT} - CFBundleVersion - ${VERSION_LONG} - NSExtension - - NSExtensionMainStoryboard - MainInterface - NSExtensionPointIdentifier - com.apple.widget-extension - - - diff --git a/WordPress/WordPressAllTimeWidget/Info.plist b/WordPress/WordPressAllTimeWidget/Info.plist deleted file mode 100644 index 3f9ac883dfc1..000000000000 --- a/WordPress/WordPressAllTimeWidget/Info.plist +++ /dev/null @@ -1,33 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDisplayName - WordPress All-Time - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - XPC! - CFBundleSignature - ???? - CFBundleShortVersionString - ${VERSION_SHORT} - CFBundleVersion - ${VERSION_LONG} - NSExtension - - NSExtensionMainStoryboard - MainInterface - NSExtensionPointIdentifier - com.apple.widget-extension - - - diff --git a/WordPress/WordPressAllTimeWidget/MainInterface.storyboard b/WordPress/WordPressAllTimeWidget/MainInterface.storyboard deleted file mode 100644 index 142c2c92e912..000000000000 --- a/WordPress/WordPressAllTimeWidget/MainInterface.storyboard +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WordPress/WordPressAllTimeWidget/Tracks+AllTimeWidget.swift b/WordPress/WordPressAllTimeWidget/Tracks+AllTimeWidget.swift deleted file mode 100644 index 37b74650a2b5..000000000000 --- a/WordPress/WordPressAllTimeWidget/Tracks+AllTimeWidget.swift +++ /dev/null @@ -1,37 +0,0 @@ -import Foundation - - -/// This extension implements helper tracking methods, meant for Today Widget Usage. -/// -extension Tracks { - - // MARK: - Public Methods - - public func trackExtensionStatsLaunched(_ siteID: Int) { - let properties = ["site_id": siteID] - trackExtensionEvent(.statsLaunched, properties: properties as [String: AnyObject]?) - } - - public func trackExtensionConfigureLaunched() { - trackExtensionEvent(.configureLaunched) - } - - public func trackDisplayModeChanged(properties: [String: Bool]) { - trackExtensionEvent(.displayModeChanged, properties: properties as [String: AnyObject]) - } - - // MARK: - Private Helpers - - fileprivate func trackExtensionEvent(_ event: ExtensionEvents, properties: [String: AnyObject]? = nil) { - track(event.rawValue, properties: properties) - } - - - // MARK: - Private Enums - - fileprivate enum ExtensionEvents: String { - case statsLaunched = "wpios_all_time_extension_stats_launched" - case configureLaunched = "wpios_all_time_extension_configure_launched" - case displayModeChanged = "wpios_all_time_extension_display_mode_changed" - } -} diff --git a/WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget-Alpha.entitlements b/WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget-Alpha.entitlements deleted file mode 100644 index dca30c5b176d..000000000000 --- a/WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget-Alpha.entitlements +++ /dev/null @@ -1,14 +0,0 @@ - - - - - com.apple.security.application-groups - - group.org.wordpress.alpha - - keychain-access-groups - - 99KV9Z6BKV.org.wordpress.alpha - - - diff --git a/WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget-Bridging-Header.h b/WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget-Bridging-Header.h deleted file mode 100644 index ff4dac2f06fc..000000000000 --- a/WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget-Bridging-Header.h +++ /dev/null @@ -1,2 +0,0 @@ -#import "SFHFKeychainUtils.h" -#import "Constants.h" diff --git a/WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget-Internal.entitlements b/WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget-Internal.entitlements deleted file mode 100644 index 54ecf75e3680..000000000000 --- a/WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget-Internal.entitlements +++ /dev/null @@ -1,14 +0,0 @@ - - - - - com.apple.security.application-groups - - group.org.wordpress.internal - - keychain-access-groups - - 99KV9Z6BKV.org.wordpress.internal - - - diff --git a/WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget.entitlements b/WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget.entitlements deleted file mode 100644 index 7eb5daa80a0d..000000000000 --- a/WordPress/WordPressAllTimeWidget/WordPressAllTimeWidget.entitlements +++ /dev/null @@ -1,14 +0,0 @@ - - - - - com.apple.security.application-groups - - group.org.wordpress - - keychain-access-groups - - 3TMU3BH3NK.org.wordpress - - - diff --git a/fastlane/Fastfile b/fastlane/Fastfile index 333b16437a61..0d6dc322c7b8 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -34,7 +34,6 @@ WORDPRESS_EXTENSIONS_BUNDLE_IDENTIFIERS = %w[ WordPressStatsWidgets WordPressNotificationServiceExtension WordPressNotificationContentExtension - WordPressAllTimeWidget WordPressThisWeekWidget WordPressIntents ].map { |suffix| "#{WORDPRESS_BUNDLE_IDENTIFIER}.#{suffix}" } From 76435ca55b55d4b99a6169501b6119d861414135 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Thu, 27 Oct 2022 15:02:47 +1100 Subject: [PATCH 10/19] Remove `WordPressThisWeekWidget` in preparation to drop iOS 13 This legacy widget extension has been superseded by `WordPressStatsWidgets`. --- Podfile | 12 - Podfile.lock | 2 +- .../Data/ThisWeekWidgetStats.swift | 1 - WordPress/WordPress.xcodeproj/project.pbxproj | 447 ---------------- .../WordPressThisWeekWidget/Info-Alpha.plist | 33 -- .../Info-Internal.plist | 33 -- WordPress/WordPressThisWeekWidget/Info.plist | 33 -- .../MainInterface.storyboard | 43 -- .../ThisWeekViewController.swift | 490 ------------------ .../ThisWeekWidgetPrefix.pch | 8 - .../Tracks+ThisWeekWidget.swift | 37 -- ...WordPressThisWeekWidget-Alpha.entitlements | 14 - .../WordPressThisWeekWidget-Bridging-Header.h | 2 - ...dPressThisWeekWidget-Internal.entitlements | 14 - .../WordPressThisWeekWidget.entitlements | 14 - fastlane/Fastfile | 1 - 16 files changed, 1 insertion(+), 1183 deletions(-) delete mode 100644 WordPress/WordPressThisWeekWidget/Info-Alpha.plist delete mode 100644 WordPress/WordPressThisWeekWidget/Info-Internal.plist delete mode 100644 WordPress/WordPressThisWeekWidget/Info.plist delete mode 100644 WordPress/WordPressThisWeekWidget/MainInterface.storyboard delete mode 100644 WordPress/WordPressThisWeekWidget/ThisWeekViewController.swift delete mode 100644 WordPress/WordPressThisWeekWidget/ThisWeekWidgetPrefix.pch delete mode 100644 WordPress/WordPressThisWeekWidget/Tracks+ThisWeekWidget.swift delete mode 100644 WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget-Alpha.entitlements delete mode 100644 WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget-Bridging-Header.h delete mode 100644 WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget-Internal.entitlements delete mode 100644 WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget.entitlements diff --git a/Podfile b/Podfile index 8797935a2b30..143616fb1a3f 100644 --- a/Podfile +++ b/Podfile @@ -305,18 +305,6 @@ target 'JetpackDraftActionExtension' do wordpress_ui end -## This Week Widget -## ============ -## -target 'WordPressThisWeekWidget' do - project 'WordPress/WordPress.xcodeproj' - - shared_with_all_pods - shared_with_networking_pods - - wordpress_ui -end - ## Home Screen Widgets ## ============ ## diff --git a/Podfile.lock b/Podfile.lock index 680055ed696a..b2f4cf58d784 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -880,6 +880,6 @@ SPEC CHECKSUMS: ZendeskSupportSDK: 3a8e508ab1d9dd22dc038df6c694466414e037ba ZIPFoundation: ae5b4b813d216d3bf0a148773267fff14bd51d37 -PODFILE CHECKSUM: 3046b733107c3eb95b571475fde974dffb1b6cab +PODFILE CHECKSUM: 75e51232bd03e0ad254ba6ef2a301bf766bda30a COCOAPODS: 1.11.2 diff --git a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Data/ThisWeekWidgetStats.swift b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Data/ThisWeekWidgetStats.swift index 3cfbdfdce1ed..7e92a63cf8de 100644 --- a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Data/ThisWeekWidgetStats.swift +++ b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Data/ThisWeekWidgetStats.swift @@ -3,7 +3,6 @@ import WordPressKit /// This struct contains data for 'Views This Week' stats to be displayed in the corresponding widget. /// The data is stored in a plist for the widget to access. -/// This file is shared with WordPressThisWeekWidget, which accesses the data when it is viewed. /// struct ThisWeekWidgetStats: Codable { diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index 82e4babbb648..066f2da74013 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -118,7 +118,6 @@ 0107E16428FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16528FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16628FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; - 0107E16928FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16A28FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16B28FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; 0107E16C28FFED1800DE87DB /* WidgetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0107E16328FFED1800DE87DB /* WidgetConfiguration.swift */; }; @@ -138,7 +137,6 @@ 0148CC2B2859C87000CF5D96 /* BlogServiceMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0148CC2A2859C87000CF5D96 /* BlogServiceMock.swift */; }; 01CE5007290A889F00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; 01CE5008290A88BD00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; - 01CE500B290A88BF00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; 01CE500C290A88BF00A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; 01CE500E290A88C100A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; 01CE500F290A88C100A9C2E0 /* TracksConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CE5006290A889F00A9C2E0 /* TracksConfiguration.swift */; }; @@ -256,7 +254,6 @@ 08F8CD371EBD2AA80049D0C0 /* test-image-device-photo-gps.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 08F8CD341EBD2AA80049D0C0 /* test-image-device-photo-gps.jpg */; }; 08F8CD391EBD2C970049D0C0 /* MediaURLExporter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 08F8CD381EBD2C970049D0C0 /* MediaURLExporter.swift */; }; 08F8CD3B1EBD2D020049D0C0 /* MediaURLExporterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 08F8CD3A1EBD2D020049D0C0 /* MediaURLExporterTests.swift */; }; - 092C3802275E718100BBBDD9 /* AppLocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F2656A025AF4DFA0073A832 /* AppLocalizedString.swift */; }; 098B8576275E76FE004D299F /* AppLocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F2656A025AF4DFA0073A832 /* AppLocalizedString.swift */; }; 098B8577275E9765004D299F /* AppLocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F2656A025AF4DFA0073A832 /* AppLocalizedString.swift */; }; 098B8578275FF975004D299F /* AppLocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F2656A025AF4DFA0073A832 /* AppLocalizedString.swift */; }; @@ -463,10 +460,6 @@ 17A28DCB2052FB5D00EA6D9E /* AuthorFilterViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A28DCA2052FB5D00EA6D9E /* AuthorFilterViewController.swift */; }; 17A4A36920EE51870071C2CA /* Routes+Reader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A4A36820EE51870071C2CA /* Routes+Reader.swift */; }; 17A4A36C20EE55320071C2CA /* ReaderCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A4A36B20EE55320071C2CA /* ReaderCoordinator.swift */; }; - 17A4B69C24F91022002DFB8E /* FeatureFlag.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1D690151F828FF000200E30 /* FeatureFlag.swift */; }; - 17A4B69F24F91050002DFB8E /* BuildConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1D690141F828FF000200E30 /* BuildConfiguration.swift */; }; - 17A4B6A124F91072002DFB8E /* FeatureFlagOverrideStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17A09B98238FE13B0022AE0D /* FeatureFlagOverrideStore.swift */; }; - 17A4B6A324F911D5002DFB8E /* KeyValueDatabase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1751E5901CE0E552000CA08D /* KeyValueDatabase.swift */; }; 17A8858D2757B97F0071FCA3 /* AutomatticAbout in Frameworks */ = {isa = PBXBuildFile; productRef = 17A8858C2757B97F0071FCA3 /* AutomatticAbout */; }; 17A8858F2757BEC00071FCA3 /* AutomatticAbout in Frameworks */ = {isa = PBXBuildFile; productRef = 17A8858E2757BEC00071FCA3 /* AutomatticAbout */; }; 17ABD3522811A48900B1E9CB /* StatsMostPopularTimeInsightsCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17ABD3512811A48900B1E9CB /* StatsMostPopularTimeInsightsCell.swift */; }; @@ -541,7 +534,6 @@ 24CE2EB1258D687A0000C297 /* WordPressFlux in Frameworks */ = {isa = PBXBuildFile; productRef = 24CE2EB0258D687A0000C297 /* WordPressFlux */; }; 24F3789825E6E62100A27BB7 /* NSManagedObject+Lookup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24F3789725E6E62100A27BB7 /* NSManagedObject+Lookup.swift */; }; 2611CC62A62F9E6BC25350FE /* Pods_WordPressScreenshotGeneration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB390AA9C94F16E78184E9D1 /* Pods_WordPressScreenshotGeneration.framework */; }; - 26D66DEC36ACF7442186B07D /* Pods_WordPressThisWeekWidget.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 979B445A45E13F3289F2E99E /* Pods_WordPressThisWeekWidget.framework */; }; 2906F812110CDA8900169D56 /* EditCommentViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 2906F810110CDA8900169D56 /* EditCommentViewController.m */; }; 296890780FE971DC00770264 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 296890770FE971DC00770264 /* Security.framework */; }; 2F08ECFC2283A4FB000F8E11 /* PostService+UnattachedMedia.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F08ECFB2283A4FB000F8E11 /* PostService+UnattachedMedia.swift */; }; @@ -1775,7 +1767,6 @@ 830A58D92793AB4500CDE94F /* LoginEpilogueAnimator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 830A58D72793AB4400CDE94F /* LoginEpilogueAnimator.swift */; }; 8320BDE5283D9359009DF2DE /* BlogService+BloggingPrompts.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8320BDE4283D9359009DF2DE /* BlogService+BloggingPrompts.swift */; }; 8320BDE6283D9359009DF2DE /* BlogService+BloggingPrompts.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8320BDE4283D9359009DF2DE /* BlogService+BloggingPrompts.swift */; }; - 8323789728526E6C003F4443 /* AppConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA25F9FD2609AA830005E08F /* AppConfiguration.swift */; }; 8323789828526E6D003F4443 /* AppConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA25F9FD2609AA830005E08F /* AppConfiguration.swift */; }; 8323789928526E6E003F4443 /* AppConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA25F9FD2609AA830005E08F /* AppConfiguration.swift */; }; 834CE7341256D0DE0046A4A3 /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 834CE7331256D0DE0046A4A3 /* CFNetwork.framework */; }; @@ -1803,7 +1794,6 @@ 839B150C2795DEE0009F5E77 /* UIView+Margins.swift in Sources */ = {isa = PBXBuildFile; fileRef = 839B150A2795DEE0009F5E77 /* UIView+Margins.swift */; }; 83A1B19528AFE47900E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; 83A1B19628AFE47A00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; - 83A1B19928AFE47B00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; 83A1B19A28AFE47C00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; 83A1B19B28AFE47D00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; 83A1B19C28AFE47D00E737AC /* KeychainUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8384C64028AAC82600EABE26 /* KeychainUtils.swift */; }; @@ -2064,7 +2054,6 @@ 98077B5A2075561800109F95 /* SupportTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98077B592075561800109F95 /* SupportTableViewController.swift */; }; 9808655A203D075E00D58786 /* EpilogueUserInfoCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98086559203D075D00D58786 /* EpilogueUserInfoCell.xib */; }; 9808655C203D079B00D58786 /* EpilogueUserInfoCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9808655B203D079A00D58786 /* EpilogueUserInfoCell.swift */; }; - 980D3B1B23C925F40060A890 /* WidgetStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 985ED0E323C6950600B8D06A /* WidgetStyles.swift */; }; 9813512E22F0FC2700F7425D /* FileDownloadsStatsRecordValueTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9813512D22F0FC2700F7425D /* FileDownloadsStatsRecordValueTests.swift */; }; 9815D0B326B49A0600DF7226 /* Comment+CoreDataProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9815D0B226B49A0600DF7226 /* Comment+CoreDataProperties.swift */; }; 9815D0B426B49A0600DF7226 /* Comment+CoreDataProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9815D0B226B49A0600DF7226 /* Comment+CoreDataProperties.swift */; }; @@ -2116,8 +2105,6 @@ 98390AD2254C985F00868F0A /* Tracks.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FA22821C99F6180016CA7C /* Tracks.swift */; }; 9839CEBB26FAA0530097406E /* CommentModerationBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9839CEB926FAA0510097406E /* CommentModerationBar.swift */; }; 9839CEBC26FAA0530097406E /* CommentModerationBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9839CEB926FAA0510097406E /* CommentModerationBar.swift */; }; - 983AE84C2399AC5B00E5B7F6 /* SFHFKeychainUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 292CECFF1027259000BD407D /* SFHFKeychainUtils.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 983AE84D2399AC6B00E5B7F6 /* Constants.m in Sources */ = {isa = PBXBuildFile; fileRef = B5CC05F51962150600975CAC /* Constants.m */; }; 983DBBAA22125DD500753988 /* StatsTableFooter.xib in Resources */ = {isa = PBXBuildFile; fileRef = 983DBBA822125DD300753988 /* StatsTableFooter.xib */; }; 983DBBAB22125DD500753988 /* StatsTableFooter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 983DBBA922125DD300753988 /* StatsTableFooter.swift */; }; 98458CB821A39D350025D232 /* StatsNoDataRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98458CB721A39D350025D232 /* StatsNoDataRow.swift */; }; @@ -2131,7 +2118,6 @@ 984B139221F66AC60004B6A2 /* SiteStatsPeriodViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 984B139121F66AC50004B6A2 /* SiteStatsPeriodViewModel.swift */; }; 984B139421F66B2D0004B6A2 /* StatsPeriodStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 984B139321F66B2D0004B6A2 /* StatsPeriodStore.swift */; }; 984B4EF320742FCC00F87888 /* ZendeskUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 984B4EF220742FCC00F87888 /* ZendeskUtils.swift */; }; - 984BE91523CE72D600B37D90 /* Double+Stats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 981C82B52193A7B900A06E84 /* Double+Stats.swift */; }; 984F86FB21DEDB070070E0E3 /* TopTotalsCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 984F86FA21DEDB060070E0E3 /* TopTotalsCell.swift */; }; 98517E5928220411001FFD45 /* BloggingPromptTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98517E5828220411001FFD45 /* BloggingPromptTableViewCell.swift */; }; 98517E5A28220411001FFD45 /* BloggingPromptTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98517E5828220411001FFD45 /* BloggingPromptTableViewCell.swift */; }; @@ -2167,8 +2153,6 @@ 986FF2A0214198D9005B28EC /* String+Ranges.swift in Sources */ = {isa = PBXBuildFile; fileRef = B55FFCF91F034F1A0070812C /* String+Ranges.swift */; }; 98712D1B23DA1C7E00555316 /* WidgetNoConnectionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */; }; 98712D1C23DA1C7E00555316 /* WidgetNoConnectionCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */; }; - 98712D1F23DA1D0A00555316 /* WidgetNoConnectionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */; }; - 98712D2223DA1D1200555316 /* WidgetNoConnectionCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */; }; 9872CB30203B8A730066A293 /* SignupEpilogueTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9872CB2F203B8A730066A293 /* SignupEpilogueTableViewController.swift */; }; 9874766F219630240080967F /* SiteStatsTableViewCells.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9874766E219630240080967F /* SiteStatsTableViewCells.swift */; }; 9874767321963D330080967F /* SiteStatsInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9874767221963D320080967F /* SiteStatsInformation.swift */; }; @@ -2179,7 +2163,6 @@ 987C40C625E590BE002A0955 /* CommentsViewController+Filters.swift in Sources */ = {isa = PBXBuildFile; fileRef = 987C40C525E590BE002A0955 /* CommentsViewController+Filters.swift */; }; 987E79CB261F8858000192B7 /* UserProfileSheetViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 987E79CA261F8857000192B7 /* UserProfileSheetViewController.swift */; }; 987E79CC261F8858000192B7 /* UserProfileSheetViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 987E79CA261F8857000192B7 /* UserProfileSheetViewController.swift */; }; - 9880150623A840200003BD11 /* ColorPalette.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 435B76292297484200511813 /* ColorPalette.xcassets */; }; 988056032183CCE50083B643 /* SiteStatsInsightsTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988056022183CCE50083B643 /* SiteStatsInsightsTableViewController.swift */; }; 98812966219CE42A0075FF33 /* StatsTotalRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98812964219CE42A0075FF33 /* StatsTotalRow.swift */; }; 98812967219CE42A0075FF33 /* StatsTotalRow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98812965219CE42A0075FF33 /* StatsTotalRow.xib */; }; @@ -2195,8 +2178,6 @@ 988AC37922F10E2C00BC1433 /* FileDownloadsStatsRecordValue+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988AC37822F10E2C00BC1433 /* FileDownloadsStatsRecordValue+CoreDataClass.swift */; }; 988F073523D0CE8800AC67A6 /* WidgetUrlCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */; }; 988F073623D0CE8800AC67A6 /* WidgetUrlCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */; }; - 988F073923D0D15E00AC67A6 /* WidgetUrlCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */; }; - 988F073C23D0D16800AC67A6 /* WidgetUrlCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */; }; 988FD74A279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */; }; 988FD74B279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */; }; 98906502237CC1DF00218CD2 /* WidgetUnconfiguredCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FB237CC1DE00218CD2 /* WidgetUnconfiguredCell.swift */; }; @@ -2207,24 +2188,14 @@ 9895401126C1F39300EDEB5A /* EditCommentTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */; }; 9895401226C1F39300EDEB5A /* EditCommentTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */; }; 9895B6E021ED49160053D370 /* TopTotalsCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9895B6DF21ED49160053D370 /* TopTotalsCell.xib */; }; - 989643E223A02F080070720A /* WidgetUnconfiguredCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FB237CC1DE00218CD2 /* WidgetUnconfiguredCell.swift */; }; - 989643E423A02F4E0070720A /* UIColor+MurielColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 435B762122973D0600511813 /* UIColor+MurielColors.swift */; }; - 989643E523A02F640070720A /* MurielColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4326191422FCB9DC003C7642 /* MurielColor.swift */; }; - 989643E823A031CD0070720A /* WidgetUnconfiguredCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989064FC237CC1DE00218CD2 /* WidgetUnconfiguredCell.xib */; }; 989643EC23A0437B0070720A /* WidgetDifferenceCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989643EA23A0437B0070720A /* WidgetDifferenceCell.swift */; }; - 989643ED23A0437B0070720A /* WidgetDifferenceCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989643EA23A0437B0070720A /* WidgetDifferenceCell.swift */; }; 989643EE23A0437B0070720A /* WidgetDifferenceCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989643EB23A0437B0070720A /* WidgetDifferenceCell.xib */; }; - 989643EF23A0437B0070720A /* WidgetDifferenceCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989643EB23A0437B0070720A /* WidgetDifferenceCell.xib */; }; 98A047722821CEBF001B4E2D /* BloggingPromptsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A047712821CEBF001B4E2D /* BloggingPromptsViewController.swift */; }; 98A047732821CEBF001B4E2D /* BloggingPromptsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A047712821CEBF001B4E2D /* BloggingPromptsViewController.swift */; }; 98A047752821D069001B4E2D /* BloggingPromptsViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 98A047742821D069001B4E2D /* BloggingPromptsViewController.storyboard */; }; 98A047762821D069001B4E2D /* BloggingPromptsViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 98A047742821D069001B4E2D /* BloggingPromptsViewController.storyboard */; }; 98A25BD1203CB25F006A5807 /* SignupEpilogueCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A25BD0203CB25F006A5807 /* SignupEpilogueCell.swift */; }; 98A25BD3203CB278006A5807 /* SignupEpilogueCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98A25BD2203CB278006A5807 /* SignupEpilogueCell.xib */; }; - 98A3C2F0239997DA0048D38D /* NotificationCenter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 93E5283B19A7741A003A1A9C /* NotificationCenter.framework */; }; - 98A3C2FA239997DA0048D38D /* WordPressThisWeekWidget.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = 98A3C2EF239997DA0048D38D /* WordPressThisWeekWidget.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; - 98A3C3022399A19F0048D38D /* MainInterface.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 98A3C3002399A1850048D38D /* MainInterface.storyboard */; }; - 98A3C3052399A2370048D38D /* ThisWeekViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A3C3042399A2370048D38D /* ThisWeekViewController.swift */; }; 98AA6D1126B8CE7200920C8B /* Comment+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AA6D1026B8CE7200920C8B /* Comment+CoreDataClass.swift */; }; 98AA6D1226B8CE7200920C8B /* Comment+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AA6D1026B8CE7200920C8B /* Comment+CoreDataClass.swift */; }; 98AA9F2127EA890800B3A98C /* FeatureIntroductionViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AA9F2027EA890800B3A98C /* FeatureIntroductionViewController.swift */; }; @@ -2263,8 +2234,6 @@ 98E082A02637545C00537BF1 /* PostService+Likes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98E0829E2637545C00537BF1 /* PostService+Likes.swift */; }; 98E14A3C27C9712D007B0896 /* NotificationCommentDetailViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98E14A3B27C9712D007B0896 /* NotificationCommentDetailViewController.swift */; }; 98E14A3D27C9712D007B0896 /* NotificationCommentDetailViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98E14A3B27C9712D007B0896 /* NotificationCommentDetailViewController.swift */; }; - 98E419DE2399B5A700D8C822 /* Tracks+ThisWeekWidget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98E419DD2399B5A700D8C822 /* Tracks+ThisWeekWidget.swift */; }; - 98E419DF2399B62A00D8C822 /* Tracks.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FA22821C99F6180016CA7C /* Tracks.swift */; }; 98E54FF2265C972900B4BE9A /* ReaderDetailLikesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98E54FF1265C972900B4BE9A /* ReaderDetailLikesView.swift */; }; 98E54FF3265C972900B4BE9A /* ReaderDetailLikesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98E54FF1265C972900B4BE9A /* ReaderDetailLikesView.swift */; }; 98E55019265C977E00B4BE9A /* ReaderDetailLikesView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98E55018265C977E00B4BE9A /* ReaderDetailLikesView.xib */; }; @@ -2279,8 +2248,6 @@ 98F537A722496CF300B334F9 /* SiteStatsTableHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98F537A622496CF300B334F9 /* SiteStatsTableHeaderView.swift */; }; 98F537A922496D0D00B334F9 /* SiteStatsTableHeaderView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98F537A822496D0D00B334F9 /* SiteStatsTableHeaderView.xib */; }; 98F93182239AF64800E4E96E /* ThisWeekWidgetStats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98F93181239AF64800E4E96E /* ThisWeekWidgetStats.swift */; }; - 98F93183239AF64800E4E96E /* ThisWeekWidgetStats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98F93181239AF64800E4E96E /* ThisWeekWidgetStats.swift */; }; - 98F93184239AF76900E4E96E /* CocoaLumberjack.swift in Sources */ = {isa = PBXBuildFile; fileRef = 938CF3DB1EF1BE6800AF838E /* CocoaLumberjack.swift */; }; 98F9FB2E270282C200ADF552 /* CommentModerationBar.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98F9FB2D270282C100ADF552 /* CommentModerationBar.xib */; }; 98F9FB2F270282C200ADF552 /* CommentModerationBar.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98F9FB2D270282C100ADF552 /* CommentModerationBar.xib */; }; 98FCFC232231DF43006ECDD4 /* PostStatsTitleCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98FCFC212231DF43006ECDD4 /* PostStatsTitleCell.swift */; }; @@ -5105,13 +5072,11 @@ FAD2539026116A1600EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD2539126116A1600EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD2544226116CEA00EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2544126116CEA00EDAF88 /* AppStyleGuide.swift */; }; - FAD2566E2611AEC600EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD2566F2611AEC700EDAF88 /* AppStyleGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD2538E26116A1600EDAF88 /* AppStyleGuide.swift */; }; FAD256932611B01700EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; FAD256A62611B01A00EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; FAD256B82611B01B00EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; FAD257132611B04D00EDAF88 /* UIColor+JetpackColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD257112611B04D00EDAF88 /* UIColor+JetpackColors.swift */; }; - FAD257F42611B54100EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; FAD257F52611B54200EDAF88 /* UIColor+WordPressColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD256922611B01700EDAF88 /* UIColor+WordPressColors.swift */; }; FAD9457E25B5647B00F011B5 /* JetpackBackupOptionsCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD9457D25B5647B00F011B5 /* JetpackBackupOptionsCoordinator.swift */; }; FAD9458E25B5678700F011B5 /* JetpackRestoreWarningCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD9458D25B5678700F011B5 /* JetpackRestoreWarningCoordinator.swift */; }; @@ -5357,13 +5322,6 @@ remoteGlobalIDString = 932225A61C7CE50300443B02; remoteInfo = WordPressShare; }; - 98A3C2F8239997DA0048D38D /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */; - proxyType = 1; - remoteGlobalIDString = 98A3C2EE239997DA0048D38D; - remoteInfo = WordPressThisWeekWidget; - }; E16AB93E14D978520047A2E5 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */; @@ -5401,7 +5359,6 @@ dstPath = ""; dstSubfolderSpec = 13; files = ( - 98A3C2FA239997DA0048D38D /* WordPressThisWeekWidget.appex in Embed Foundation Extensions */, 7457667C202B558C00F42E40 /* WordPressDraftActionExtension.appex in Embed Foundation Extensions */, F1F163D625658B4D003DC13B /* WordPressIntents.appex in Embed Foundation Extensions */, 7358E6BF210BD318002323EB /* WordPressNotificationServiceExtension.appex in Embed Foundation Extensions */, @@ -6226,7 +6183,6 @@ 40EE947D2213213F00CD264F /* PublicizeConnectionStatsRecordValue+CoreDataClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "PublicizeConnectionStatsRecordValue+CoreDataClass.swift"; sourceTree = ""; }; 40EE947E2213213F00CD264F /* PublicizeConnectionStatsRecordValue+CoreDataProperties.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "PublicizeConnectionStatsRecordValue+CoreDataProperties.swift"; sourceTree = ""; }; 40EE948122132F5800CD264F /* PublicizeConectionStatsRecordValueTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PublicizeConectionStatsRecordValueTests.swift; sourceTree = ""; }; - 40F031E19B32BAF8654838C0 /* Pods-WordPressThisWeekWidget.release-alpha.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressThisWeekWidget.release-alpha.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressThisWeekWidget/Pods-WordPressThisWeekWidget.release-alpha.xcconfig"; sourceTree = ""; }; 40F46B6822121BA800A2143B /* AnnualAndMostPopularTimeStatsRecordValue+CoreDataClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "AnnualAndMostPopularTimeStatsRecordValue+CoreDataClass.swift"; sourceTree = ""; }; 40F46B6922121BA800A2143B /* AnnualAndMostPopularTimeStatsRecordValue+CoreDataProperties.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "AnnualAndMostPopularTimeStatsRecordValue+CoreDataProperties.swift"; sourceTree = ""; }; 40F50B7B22130E6C00CBBB73 /* FollowersStatsRecordValue+CoreDataClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "FollowersStatsRecordValue+CoreDataClass.swift"; sourceTree = ""; }; @@ -6701,7 +6657,6 @@ 75305C06D345590B757E3890 /* Pods-Apps-WordPress.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Apps-WordPress.debug.xcconfig"; path = "../Pods/Target Support Files/Pods-Apps-WordPress/Pods-Apps-WordPress.debug.xcconfig"; sourceTree = ""; }; 7D21280C251CF0850086DD2C /* EditPageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EditPageViewController.swift; sourceTree = ""; }; 7D4D980C25FFE7E600C282E6 /* WordPress 116.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "WordPress 116.xcdatamodel"; sourceTree = ""; }; - 7DFD69454E24EC0A1A0BACCD /* Pods-WordPressThisWeekWidget.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressThisWeekWidget.release.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressThisWeekWidget/Pods-WordPressThisWeekWidget.release.xcconfig"; sourceTree = ""; }; 7E14635620B3BEAB00B95F41 /* WPStyleGuide+Loader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WPStyleGuide+Loader.swift"; sourceTree = ""; }; 7E21C760202BBC8D00837CF5 /* iAd.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = iAd.framework; path = System/Library/Frameworks/iAd.framework; sourceTree = SDKROOT; }; 7E21C764202BBF4400837CF5 /* SearchAdsAttribution.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = SearchAdsAttribution.swift; path = iAds/SearchAdsAttribution.swift; sourceTree = ""; }; @@ -7037,7 +6992,6 @@ 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 8DCE7542239FBC709B90EA85 /* Pods_WordPressUITests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_WordPressUITests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 8DE205D2AC15F16289E7D21A /* Pods-WordPressDraftActionExtension.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressDraftActionExtension.release.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressDraftActionExtension/Pods-WordPressDraftActionExtension.release.xcconfig"; sourceTree = ""; }; - 8E65034AFB7DC85D70CCC064 /* Pods-WordPressThisWeekWidget.release-internal.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressThisWeekWidget.release-internal.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressThisWeekWidget/Pods-WordPressThisWeekWidget.release-internal.xcconfig"; sourceTree = ""; }; 8F2283367263B37B0681F988 /* TimeZoneSelectorViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TimeZoneSelectorViewController.swift; sourceTree = ""; }; 8F228848D5DEACE6798CE7E2 /* TimeZoneSearchHeaderView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TimeZoneSearchHeaderView.swift; sourceTree = ""; }; 8F228AE62B771552F0F971BE /* TimeZoneSearchHeaderView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TimeZoneSearchHeaderView.xib; sourceTree = ""; }; @@ -7150,7 +7104,6 @@ 93FA0F0218E451A80007903B /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = README.md; path = ../README.md; sourceTree = ""; }; 93FA59DB18D88C1C001446BC /* PostCategoryService.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = PostCategoryService.h; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; }; 93FA59DC18D88C1C001446BC /* PostCategoryService.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; lineEnding = 0; path = PostCategoryService.m; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.objc; }; - 979B445A45E13F3289F2E99E /* Pods_WordPressThisWeekWidget.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_WordPressThisWeekWidget.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 9801E681274EEBC4002FDDB6 /* ReaderDetailCommentsHeader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReaderDetailCommentsHeader.swift; sourceTree = ""; }; 9801E684274EEC19002FDDB6 /* ReaderDetailCommentsHeader.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = ReaderDetailCommentsHeader.xib; sourceTree = ""; }; 98035B7225C49CC1002C0EB4 /* WordPress 112.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "WordPress 112.xcdatamodel"; sourceTree = ""; }; @@ -7278,16 +7231,6 @@ 98A047742821D069001B4E2D /* BloggingPromptsViewController.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = BloggingPromptsViewController.storyboard; sourceTree = ""; }; 98A25BD0203CB25F006A5807 /* SignupEpilogueCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SignupEpilogueCell.swift; sourceTree = ""; }; 98A25BD2203CB278006A5807 /* SignupEpilogueCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = SignupEpilogueCell.xib; sourceTree = ""; }; - 98A3C2EF239997DA0048D38D /* WordPressThisWeekWidget.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = WordPressThisWeekWidget.appex; sourceTree = BUILT_PRODUCTS_DIR; }; - 98A3C2F7239997DA0048D38D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 98A3C3002399A1850048D38D /* MainInterface.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = MainInterface.storyboard; sourceTree = ""; }; - 98A3C3032399A2370048D38D /* WordPressThisWeekWidget-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "WordPressThisWeekWidget-Bridging-Header.h"; sourceTree = ""; }; - 98A3C3042399A2370048D38D /* ThisWeekViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ThisWeekViewController.swift; sourceTree = ""; }; - 98A3C3072399A57D0048D38D /* Info-Alpha.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Info-Alpha.plist"; sourceTree = ""; }; - 98A3C3082399A57D0048D38D /* Info-Internal.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Info-Internal.plist"; sourceTree = ""; }; - 98A3C30B2399A6570048D38D /* WordPressThisWeekWidget.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = WordPressThisWeekWidget.entitlements; sourceTree = ""; }; - 98A3C30C2399A6570048D38D /* WordPressThisWeekWidget-Alpha.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "WordPressThisWeekWidget-Alpha.entitlements"; sourceTree = ""; }; - 98A3C30D2399A6580048D38D /* WordPressThisWeekWidget-Internal.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "WordPressThisWeekWidget-Internal.entitlements"; sourceTree = ""; }; 98AA22BC25082A86005CCC13 /* PrologueScreen.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PrologueScreen.swift; sourceTree = ""; }; 98AA22BE25082B1E005CCC13 /* GetStartedScreen.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GetStartedScreen.swift; sourceTree = ""; }; 98AA6D1026B8CE7200920C8B /* Comment+CoreDataClass.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Comment+CoreDataClass.swift"; sourceTree = ""; }; @@ -7318,8 +7261,6 @@ 98DD1EF2263337C400CF0440 /* WordPress 122.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "WordPress 122.xcdatamodel"; sourceTree = ""; }; 98E0829E2637545C00537BF1 /* PostService+Likes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "PostService+Likes.swift"; sourceTree = ""; }; 98E14A3B27C9712D007B0896 /* NotificationCommentDetailViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationCommentDetailViewController.swift; sourceTree = ""; }; - 98E419DD2399B5A700D8C822 /* Tracks+ThisWeekWidget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Tracks+ThisWeekWidget.swift"; sourceTree = ""; }; - 98E419E02399B6C300D8C822 /* ThisWeekWidgetPrefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ThisWeekWidgetPrefix.pch; sourceTree = ""; }; 98E54FF1265C972900B4BE9A /* ReaderDetailLikesView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ReaderDetailLikesView.swift; sourceTree = ""; }; 98E55018265C977E00B4BE9A /* ReaderDetailLikesView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ReaderDetailLikesView.xib; sourceTree = ""; }; 98E58A2E2360D23400E5534B /* TodayWidgetStats.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TodayWidgetStats.swift; sourceTree = ""; }; @@ -7835,7 +7776,6 @@ CECEEB542823164800A28ADE /* MediaCacheSettingsViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MediaCacheSettingsViewController.swift; sourceTree = ""; }; CF343E897B9953453334768C /* Pods-WordPressHomeWidgetToday.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressHomeWidgetToday.release.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressHomeWidgetToday/Pods-WordPressHomeWidgetToday.release.xcconfig"; sourceTree = ""; }; D01FA8A28AD63D2600800134 /* Pods-JetpackNotificationServiceExtension.release-internal.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-JetpackNotificationServiceExtension.release-internal.xcconfig"; path = "../Pods/Target Support Files/Pods-JetpackNotificationServiceExtension/Pods-JetpackNotificationServiceExtension.release-internal.xcconfig"; sourceTree = ""; }; - D1216A69ECC61E7772AB8C41 /* Pods-WordPressThisWeekWidget.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressThisWeekWidget.debug.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressThisWeekWidget/Pods-WordPressThisWeekWidget.debug.xcconfig"; sourceTree = ""; }; D3B8D9C4DCD93C57C2B98CDC /* Pods_WordPressNotificationServiceExtension.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_WordPressNotificationServiceExtension.framework; sourceTree = BUILT_PRODUCTS_DIR; }; D42A30853435E728881904E8 /* Pods_JetpackIntents.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_JetpackIntents.framework; sourceTree = BUILT_PRODUCTS_DIR; }; D67306CD28F2440FF6B0065C /* Pods-WordPressIntents.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressIntents.debug.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressIntents/Pods-WordPressIntents.debug.xcconfig"; sourceTree = ""; }; @@ -9000,15 +8940,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 98A3C2EC239997DA0048D38D /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 98A3C2F0239997DA0048D38D /* NotificationCenter.framework in Frameworks */, - 26D66DEC36ACF7442186B07D /* Pods_WordPressThisWeekWidget.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; E16AB92614D978240047A2E5 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -9743,7 +9674,6 @@ 74576672202B558C00F42E40 /* WordPressDraftActionExtension.appex */, 7358E6B8210BD318002323EB /* WordPressNotificationServiceExtension.appex */, 733F36032126197800988727 /* WordPressNotificationContentExtension.appex */, - 98A3C2EF239997DA0048D38D /* WordPressThisWeekWidget.appex */, 3F526C4C2538CF2A0069706C /* WordPressStatsWidgets.appex */, F1F163BE25658B4D003DC13B /* WordPressIntents.appex */, FABB26522602FC2C00C8785C /* Jetpack.app */, @@ -9816,7 +9746,6 @@ 733F36072126197800988727 /* WordPressNotificationContentExtension */, 7358E6B9210BD318002323EB /* WordPressNotificationServiceExtension */, 932225A81C7CE50300443B02 /* WordPressShareExtension */, - 98A3C2F1239997DA0048D38D /* WordPressThisWeekWidget */, 3F526C512538CF2A0069706C /* WordPressStatsWidgets */, F1F163BF25658B4D003DC13B /* WordPressIntents */, E16AB92F14D978240047A2E5 /* WordPressTest */, @@ -9940,7 +9869,6 @@ 733F36052126197800988727 /* UserNotificationsUI.framework */, AB390AA9C94F16E78184E9D1 /* Pods_WordPressScreenshotGeneration.framework */, 8DCE7542239FBC709B90EA85 /* Pods_WordPressUITests.framework */, - 979B445A45E13F3289F2E99E /* Pods_WordPressThisWeekWidget.framework */, 3F526C4D2538CF2A0069706C /* WidgetKit.framework */, 3F526C4F2538CF2A0069706C /* SwiftUI.framework */, F1F163C825658B4D003DC13B /* IntentsUI.framework */, @@ -13424,32 +13352,6 @@ path = "Blogging Prompts"; sourceTree = ""; }; - 98A3C2F1239997DA0048D38D /* WordPressThisWeekWidget */ = { - isa = PBXGroup; - children = ( - 98A3C3002399A1850048D38D /* MainInterface.storyboard */, - 98A3C3042399A2370048D38D /* ThisWeekViewController.swift */, - 98A3C3032399A2370048D38D /* WordPressThisWeekWidget-Bridging-Header.h */, - 98A3C3062399A3040048D38D /* Supporting Files */, - 98E419DC2399B57F00D8C822 /* Tracks */, - ); - path = WordPressThisWeekWidget; - sourceTree = ""; - }; - 98A3C3062399A3040048D38D /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 98A3C3072399A57D0048D38D /* Info-Alpha.plist */, - 98A3C3082399A57D0048D38D /* Info-Internal.plist */, - 98A3C2F7239997DA0048D38D /* Info.plist */, - 98E419E02399B6C300D8C822 /* ThisWeekWidgetPrefix.pch */, - 98A3C30C2399A6570048D38D /* WordPressThisWeekWidget-Alpha.entitlements */, - 98A3C30D2399A6580048D38D /* WordPressThisWeekWidget-Internal.entitlements */, - 98A3C30B2399A6570048D38D /* WordPressThisWeekWidget.entitlements */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; 98A9E48527F6238B00ECA96D /* Blogging Prompts */ = { isa = PBXGroup; children = ( @@ -13492,14 +13394,6 @@ name = "Social Signup"; sourceTree = ""; }; - 98E419DC2399B57F00D8C822 /* Tracks */ = { - isa = PBXGroup; - children = ( - 98E419DD2399B5A700D8C822 /* Tracks+ThisWeekWidget.swift */, - ); - name = Tracks; - sourceTree = ""; - }; 98E58A2D2360D1FD00E5534B /* Today Widgets */ = { isa = PBXGroup; children = ( @@ -14166,10 +14060,6 @@ B787A850C6163034630E7AF2 /* Pods-WordPressUITests.release.xcconfig */, 10BBFF34EBDA2F9B8CB48DF6 /* Pods-WordPressUITests.release-internal.xcconfig */, 1B77149F6C65D343E7E3AD09 /* Pods-WordPressUITests.release-alpha.xcconfig */, - D1216A69ECC61E7772AB8C41 /* Pods-WordPressThisWeekWidget.debug.xcconfig */, - 7DFD69454E24EC0A1A0BACCD /* Pods-WordPressThisWeekWidget.release.xcconfig */, - 8E65034AFB7DC85D70CCC064 /* Pods-WordPressThisWeekWidget.release-internal.xcconfig */, - 40F031E19B32BAF8654838C0 /* Pods-WordPressThisWeekWidget.release-alpha.xcconfig */, E6C80205BDC1D7FF04D6316A /* Pods-WordPressHomeWidgetToday.debug.xcconfig */, CF343E897B9953453334768C /* Pods-WordPressHomeWidgetToday.release.xcconfig */, 0A27D496128FBCDFA3658994 /* Pods-WordPressHomeWidgetToday.release-internal.xcconfig */, @@ -17113,7 +17003,6 @@ 932225B01C7CE50300443B02 /* PBXTargetDependency */, 7457667B202B558C00F42E40 /* PBXTargetDependency */, 7358E6BE210BD318002323EB /* PBXTargetDependency */, - 98A3C2F9239997DA0048D38D /* PBXTargetDependency */, 3F526C5B2538CF2B0069706C /* PBXTargetDependency */, F1F163D525658B4D003DC13B /* PBXTargetDependency */, ); @@ -17320,25 +17209,6 @@ productReference = 932225A71C7CE50300443B02 /* WordPressShareExtension.appex */; productType = "com.apple.product-type.app-extension"; }; - 98A3C2EE239997DA0048D38D /* WordPressThisWeekWidget */ = { - isa = PBXNativeTarget; - buildConfigurationList = 98A3C2FF239997DB0048D38D /* Build configuration list for PBXNativeTarget "WordPressThisWeekWidget" */; - buildPhases = ( - 591AAEE0843D274DDFF16F69 /* [CP] Check Pods Manifest.lock */, - 98A3C2EB239997DA0048D38D /* Sources */, - 98A3C2EC239997DA0048D38D /* Frameworks */, - 98A3C2ED239997DA0048D38D /* Resources */, - 3E7D1BBC0746F969F0997C43 /* [CP] Copy Pods Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = WordPressThisWeekWidget; - productName = WordPressThisWeekWidget; - productReference = 98A3C2EF239997DA0048D38D /* WordPressThisWeekWidget.appex */; - productType = "com.apple.product-type.app-extension"; - }; E16AB92914D978240047A2E5 /* WordPressTest */ = { isa = PBXNativeTarget; buildConfigurationList = E16AB93D14D978240047A2E5 /* Build configuration list for PBXNativeTarget "WordPressTest" */; @@ -17558,11 +17428,6 @@ }; }; }; - 98A3C2EE239997DA0048D38D = { - CreatedOnToolsVersion = 11.2.1; - LastSwiftMigration = 1120; - ProvisioningStyle = Manual; - }; A2795807198819DE0031C6A3 = { DevelopmentTeam = PZYM8XX95Q; }; @@ -17647,7 +17512,6 @@ 1D6058900D05DD3D006BFB54 /* WordPress */, 932225A61C7CE50300443B02 /* WordPressShareExtension */, 74576671202B558C00F42E40 /* WordPressDraftActionExtension */, - 98A3C2EE239997DA0048D38D /* WordPressThisWeekWidget */, 3F526C4B2538CF2A0069706C /* WordPressStatsWidgets */, 733F36022126197800988727 /* WordPressNotificationContentExtension */, 7358E6B7210BD318002323EB /* WordPressNotificationServiceExtension */, @@ -18103,19 +17967,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 98A3C2ED239997DA0048D38D /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 989643EF23A0437B0070720A /* WidgetDifferenceCell.xib in Resources */, - 9880150623A840200003BD11 /* ColorPalette.xcassets in Resources */, - 98A3C3022399A19F0048D38D /* MainInterface.storyboard in Resources */, - 98712D2223DA1D1200555316 /* WidgetNoConnectionCell.xib in Resources */, - 989643E823A031CD0070720A /* WidgetUnconfiguredCell.xib in Resources */, - 988F073923D0D15E00AC67A6 /* WidgetUrlCell.xib in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; E16AB92714D978240047A2E5 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -18903,28 +18754,6 @@ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - 3E7D1BBC0746F969F0997C43 /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-WordPressThisWeekWidget/Pods-WordPressThisWeekWidget-resources.sh", - "${PODS_ROOT}/FormatterKit/FormatterKit/FormatterKit.bundle", - "${PODS_CONFIGURATION_BUILD_DIR}/WordPressShared/WordPressShared.bundle", - "${PODS_CONFIGURATION_BUILD_DIR}/WordPressUI/WordPressUIResources.bundle", - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FormatterKit.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/WordPressShared.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/WordPressUIResources.bundle", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-WordPressThisWeekWidget/Pods-WordPressThisWeekWidget-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; 3F32E4AE270EAF5100A33D51 /* Generate Credentials */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -19015,28 +18844,6 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-WordPressNotificationServiceExtension/Pods-WordPressNotificationServiceExtension-resources.sh\"\n"; showEnvVarsInLog = 0; }; - 591AAEE0843D274DDFF16F69 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-WordPressThisWeekWidget-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; 72BB9EE3CC91D92F3735F4F3 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -21962,39 +21769,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 98A3C2EB239997DA0048D38D /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 17A4B6A124F91072002DFB8E /* FeatureFlagOverrideStore.swift in Sources */, - 984BE91523CE72D600B37D90 /* Double+Stats.swift in Sources */, - 983AE84C2399AC5B00E5B7F6 /* SFHFKeychainUtils.m in Sources */, - 17A4B69C24F91022002DFB8E /* FeatureFlag.swift in Sources */, - 98F93184239AF76900E4E96E /* CocoaLumberjack.swift in Sources */, - 98E419DF2399B62A00D8C822 /* Tracks.swift in Sources */, - 989643E423A02F4E0070720A /* UIColor+MurielColors.swift in Sources */, - 989643E223A02F080070720A /* WidgetUnconfiguredCell.swift in Sources */, - 17A4B69F24F91050002DFB8E /* BuildConfiguration.swift in Sources */, - 980D3B1B23C925F40060A890 /* WidgetStyles.swift in Sources */, - 988F073C23D0D16800AC67A6 /* WidgetUrlCell.swift in Sources */, - 98E419DE2399B5A700D8C822 /* Tracks+ThisWeekWidget.swift in Sources */, - 98712D1F23DA1D0A00555316 /* WidgetNoConnectionCell.swift in Sources */, - FAD257F42611B54100EDAF88 /* UIColor+WordPressColors.swift in Sources */, - 092C3802275E718100BBBDD9 /* AppLocalizedString.swift in Sources */, - 8323789728526E6C003F4443 /* AppConfiguration.swift in Sources */, - 98A3C3052399A2370048D38D /* ThisWeekViewController.swift in Sources */, - 17A4B6A324F911D5002DFB8E /* KeyValueDatabase.swift in Sources */, - 989643E523A02F640070720A /* MurielColor.swift in Sources */, - 0107E16928FFED1800DE87DB /* WidgetConfiguration.swift in Sources */, - 01CE500B290A88BF00A9C2E0 /* TracksConfiguration.swift in Sources */, - 83A1B19928AFE47B00E737AC /* KeychainUtils.swift in Sources */, - 983AE84D2399AC6B00E5B7F6 /* Constants.m in Sources */, - 989643ED23A0437B0070720A /* WidgetDifferenceCell.swift in Sources */, - FAD2566E2611AEC600EDAF88 /* AppStyleGuide.swift in Sources */, - 98F93183239AF64800E4E96E /* ThisWeekWidgetStats.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; E16AB92514D978240047A2E5 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -24167,11 +23941,6 @@ target = 932225A61C7CE50300443B02 /* WordPressShareExtension */; targetProxy = 932225AF1C7CE50300443B02 /* PBXContainerItemProxy */; }; - 98A3C2F9239997DA0048D38D /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 98A3C2EE239997DA0048D38D /* WordPressThisWeekWidget */; - targetProxy = 98A3C2F8239997DA0048D38D /* PBXContainerItemProxy */; - }; E16AB93F14D978520047A2E5 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 1D6058900D05DD3D006BFB54 /* WordPress */; @@ -27439,211 +27208,6 @@ }; name = "Release-Internal"; }; - 98A3C2FB239997DB0048D38D /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D1216A69ECC61E7772AB8C41 /* Pods-WordPressThisWeekWidget.debug.xcconfig */; - buildSettings = { - 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_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = WordPressThisWeekWidget/WordPressThisWeekWidget.entitlements; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = PZYM8XX95Q; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = WordPressThisWeekWidget/ThisWeekWidgetPrefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - "WPCOM_SCHEME=\\@\\\"${WPCOM_SCHEME}\\\"", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = WordPressThisWeekWidget/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@executable_path/../../Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = org.wordpress.WordPressThisWeekWidget; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "WordPress This Week Widget Development"; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OBJC_BRIDGING_HEADER = "WordPressThisWeekWidget/WordPressThisWeekWidget-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - WPCOM_SCHEME = wpdebug; - }; - name = Debug; - }; - 98A3C2FC239997DB0048D38D /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7DFD69454E24EC0A1A0BACCD /* Pods-WordPressThisWeekWidget.release.xcconfig */; - buildSettings = { - 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_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = WordPressThisWeekWidget/WordPressThisWeekWidget.entitlements; - CODE_SIGN_IDENTITY = "Apple Distribution: Automattic, Inc. (PZYM8XX95Q)"; - CODE_SIGN_STYLE = Manual; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = PZYM8XX95Q; - ENABLE_NS_ASSERTIONS = NO; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = WordPressThisWeekWidget/ThisWeekWidgetPrefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = ( - "WPCOM_SCHEME=\\@\\\"${WPCOM_SCHEME}\\\"", - "$(inherited)", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = WordPressThisWeekWidget/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@executable_path/../../Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = org.wordpress.WordPressThisWeekWidget; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "match AppStore org.wordpress.WordPressThisWeekWidget"; - SKIP_INSTALL = YES; - SWIFT_OBJC_BRIDGING_HEADER = "WordPressThisWeekWidget/WordPressThisWeekWidget-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - WPCOM_SCHEME = wordpress; - }; - name = Release; - }; - 98A3C2FD239997DB0048D38D /* Release-Internal */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 8E65034AFB7DC85D70CCC064 /* Pods-WordPressThisWeekWidget.release-internal.xcconfig */; - buildSettings = { - 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_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = "WordPressThisWeekWidget/WordPressThisWeekWidget-Internal.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Distribution: Automattic, Inc."; - CODE_SIGN_STYLE = Manual; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = 99KV9Z6BKV; - ENABLE_NS_ASSERTIONS = NO; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = WordPressThisWeekWidget/ThisWeekWidgetPrefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = ( - "WPCOM_SCHEME=\\@\\\"${WPCOM_SCHEME}\\\"", - INTERNAL_BUILD, - "$(inherited)", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = WordPressThisWeekWidget/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@executable_path/../../Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = org.wordpress.internal.WordPressThisWeekWidget; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "match InHouse org.wordpress.internal.WordPressThisWeekWidget"; - SKIP_INSTALL = YES; - SWIFT_OBJC_BRIDGING_HEADER = "WordPressThisWeekWidget/WordPressThisWeekWidget-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - WPCOM_SCHEME = wpinternal; - }; - name = "Release-Internal"; - }; - 98A3C2FE239997DB0048D38D /* Release-Alpha */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 40F031E19B32BAF8654838C0 /* Pods-WordPressThisWeekWidget.release-alpha.xcconfig */; - buildSettings = { - 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_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = "WordPressThisWeekWidget/WordPressThisWeekWidget-Alpha.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Distribution: Automattic, Inc."; - CODE_SIGN_STYLE = Manual; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = 99KV9Z6BKV; - ENABLE_NS_ASSERTIONS = NO; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = WordPressThisWeekWidget/ThisWeekWidgetPrefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = ( - "WPCOM_SCHEME=\\@\\\"${WPCOM_SCHEME}\\\"", - ALPHA_BUILD, - "$(inherited)", - ); - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = WordPressThisWeekWidget/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@executable_path/../../Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = org.wordpress.alpha.WordPressThisWeekWidget; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = "match InHouse org.wordpress.alpha.WordPressThisWeekWidget"; - SKIP_INSTALL = YES; - SWIFT_OBJC_BRIDGING_HEADER = "WordPressThisWeekWidget/WordPressThisWeekWidget-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - WPCOM_SCHEME = wpalpha; - }; - name = "Release-Alpha"; - }; A2795808198819DE0031C6A3 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -28910,17 +28474,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 98A3C2FF239997DB0048D38D /* Build configuration list for PBXNativeTarget "WordPressThisWeekWidget" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 98A3C2FB239997DB0048D38D /* Debug */, - 98A3C2FC239997DB0048D38D /* Release */, - 98A3C2FD239997DB0048D38D /* Release-Internal */, - 98A3C2FE239997DB0048D38D /* Release-Alpha */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; A279580C198819DE0031C6A3 /* Build configuration list for PBXAggregateTarget "OCLint" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/WordPress/WordPressThisWeekWidget/Info-Alpha.plist b/WordPress/WordPressThisWeekWidget/Info-Alpha.plist deleted file mode 100644 index a897f6a160f8..000000000000 --- a/WordPress/WordPressThisWeekWidget/Info-Alpha.plist +++ /dev/null @@ -1,33 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDisplayName - WordPress This Week (Alpha) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - XPC! - CFBundleSignature - ???? - CFBundleShortVersionString - ${VERSION_SHORT} - CFBundleVersion - ${VERSION_LONG} - NSExtension - - NSExtensionMainStoryboard - MainInterface - NSExtensionPointIdentifier - com.apple.widget-extension - - - diff --git a/WordPress/WordPressThisWeekWidget/Info-Internal.plist b/WordPress/WordPressThisWeekWidget/Info-Internal.plist deleted file mode 100644 index cf1cd66c5fc0..000000000000 --- a/WordPress/WordPressThisWeekWidget/Info-Internal.plist +++ /dev/null @@ -1,33 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDisplayName - WordPress This Week (Internal) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - XPC! - CFBundleSignature - ???? - CFBundleShortVersionString - ${VERSION_SHORT} - CFBundleVersion - ${VERSION_LONG} - NSExtension - - NSExtensionMainStoryboard - MainInterface - NSExtensionPointIdentifier - com.apple.widget-extension - - - diff --git a/WordPress/WordPressThisWeekWidget/Info.plist b/WordPress/WordPressThisWeekWidget/Info.plist deleted file mode 100644 index 2ad9042eac2a..000000000000 --- a/WordPress/WordPressThisWeekWidget/Info.plist +++ /dev/null @@ -1,33 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDisplayName - WordPress This Week - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - XPC! - CFBundleShortVersionString - ${VERSION_SHORT} - CFBundleSignature - ???? - CFBundleVersion - ${VERSION_LONG} - NSExtension - - NSExtensionMainStoryboard - MainInterface - NSExtensionPointIdentifier - com.apple.widget-extension - - - diff --git a/WordPress/WordPressThisWeekWidget/MainInterface.storyboard b/WordPress/WordPressThisWeekWidget/MainInterface.storyboard deleted file mode 100644 index 97bb81ea249d..000000000000 --- a/WordPress/WordPressThisWeekWidget/MainInterface.storyboard +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WordPress/WordPressThisWeekWidget/ThisWeekViewController.swift b/WordPress/WordPressThisWeekWidget/ThisWeekViewController.swift deleted file mode 100644 index 9d0e127ae9a8..000000000000 --- a/WordPress/WordPressThisWeekWidget/ThisWeekViewController.swift +++ /dev/null @@ -1,490 +0,0 @@ -import UIKit -import NotificationCenter -import WordPressKit -import WordPressUI -import Reachability - -class ThisWeekViewController: UIViewController { - - // MARK: - Properties - - @IBOutlet private var tableView: UITableView! - - private var siteUrl: String = Constants.noDataLabel - private var siteID: NSNumber? - private var timeZone: TimeZone? - private var oauthToken: String? - private let tracks = Tracks(appGroupName: WPAppGroupName) - private let reachability: Reachability = .forInternetConnection() - private var calculatedDataRowHeight: CGFloat? - - private typealias WidgetCompletionBlock = (NCUpdateResult) -> Void - private var widgetCompletionBlock: WidgetCompletionBlock? - - private var statsValues: ThisWeekWidgetStats? { - didSet { - tableView.reloadData() - } - } - - private var haveSiteUrl: Bool { - siteUrl != Constants.noDataLabel - } - - private var isConfigured = false { - didSet { - setAvailableDisplayMode() - } - } - - private var isReachable = true { - didSet { - setAvailableDisplayMode() - resizeView() - tableView.separatorStyle = showNoConnection ? .none : .singleLine - - if isReachable != oldValue, - let completionHandler = widgetCompletionBlock { - widgetPerformUpdate(completionHandler: completionHandler) - } - } - } - - private var showNoConnection: Bool { - return !isReachable && statsValues == nil - } - - private var loadingFailed = false { - didSet { - setAvailableDisplayMode() - - if loadingFailed != oldValue { - tableView.reloadData() - } - } - } - - private var failedState: Bool { - return !isConfigured || showNoConnection || loadingFailed - } - - // MARK: - View - - override func viewDidLoad() { - super.viewDidLoad() - retrieveSiteConfiguration() - registerTableCells() - configureTableSeparator() - } - - override func viewWillAppear(_ animated: Bool) { - super.viewWillAppear(animated) - loadSavedData() - setupReachability() - resizeView() - } - - override func viewWillDisappear(_ animated: Bool) { - super.viewWillDisappear(animated) - reachability.stopNotifier() - } - - override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) { - super.viewWillTransition(to: size, with: coordinator) - - let updatedRowCount = numberOfRowsToDisplay() - let rowDifference = abs(updatedRowCount - tableView.numberOfRows(inSection: 0)) - - // If the number of rows has not changed, do nothing. - guard rowDifference != 0 else { - return - } - - coordinator.animate(alongsideTransition: { _ in - self.tableView.performBatchUpdates({ - - var indexPathsToInsert = [IndexPath]() - var indexPathsToDelete = [IndexPath]() - - // If no connection was displayed, then rows are just being added. - // Otherwise, data rows are being inserted/deleted. - if self.tableView.visibleCells.first is WidgetNoConnectionCell { - let indexRange = (1.. Constants.minRows ? - self.tableView.insertRows(at: indexPathsToInsert, with: .fade) : - self.tableView.deleteRows(at: indexPathsToDelete, with: .fade) - }) - }) - } - -} - -// MARK: - Widget Updating - -extension ThisWeekViewController: NCWidgetProviding { - - func widgetPerformUpdate(completionHandler: (@escaping (NCUpdateResult) -> Void)) { - widgetCompletionBlock = completionHandler - retrieveSiteConfiguration() - isReachable = reachability.isReachable() - - if !isConfigured || !isReachable { - DDLogError("This Week Widget: unable to update. Configured: \(isConfigured) Reachable: \(isReachable)") - - DispatchQueue.main.async { [weak self] in - self?.tableView.reloadData() - } - - completionHandler(.failed) - return - } - - fetchData(completionHandler: completionHandler) - } - - func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) { - tracks.trackDisplayModeChanged(properties: ["expanded": activeDisplayMode == .expanded]) - resizeView(withMaximumSize: maxSize) - } - -} - -// MARK: - Table View Methods - -extension ThisWeekViewController: UITableViewDelegate, UITableViewDataSource { - - func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { - return numberOfRowsToDisplay() - } - - func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { - if showNoConnection { - return noConnectionCellFor(indexPath: indexPath) - } - - if !isConfigured || loadingFailed { - return unconfiguredCellFor(indexPath: indexPath) - } - - return statCellFor(indexPath: indexPath) - } - - func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { - if failedState, - let maxCompactSize = extensionContext?.widgetMaximumSize(for: .compact) { - // Use the max compact height for unconfigured view. - return maxCompactSize.height - } - - return UITableView.automaticDimension - } - -} - -// MARK: - Private Extension - -private extension ThisWeekViewController { - - // MARK: - Tap Gesture Handling - - @IBAction func handleTapGesture() { - - // If showing the loading failed view, reload the widget. - if loadingFailed, - let completionHandler = widgetCompletionBlock { - widgetPerformUpdate(completionHandler: completionHandler) - return - } - - // Otherwise, open the app. - guard isReachable, - let extensionContext = extensionContext, - let containingAppURL = appURL() else { - DDLogError("This Week Widget: Unable to get extensionContext or appURL.") - return - } - - trackAppLaunch() - extensionContext.open(containingAppURL, completionHandler: nil) - } - - func appURL() -> URL? { - let urlString = (siteID != nil) ? (Constants.statsUrl + siteID!.stringValue) : Constants.baseUrl - return URL(string: urlString) - } - - func trackAppLaunch() { - guard let siteID = siteID else { - tracks.trackExtensionConfigureLaunched() - return - } - - tracks.trackExtensionStatsLaunched(siteID.intValue) - } - - // MARK: - Site Configuration - - func retrieveSiteConfiguration() { - guard let sharedDefaults = UserDefaults(suiteName: WPAppGroupName) else { - DDLogError("This Week Widget: Unable to get sharedDefaults.") - isConfigured = false - return - } - - siteID = sharedDefaults.object(forKey: AppConfiguration.Widget.StatsToday.userDefaultsSiteIdKey) as? NSNumber - siteUrl = sharedDefaults.string(forKey: AppConfiguration.Widget.StatsToday.userDefaultsSiteUrlKey) ?? Constants.noDataLabel - oauthToken = fetchOAuthBearerToken() - - if let timeZoneName = sharedDefaults.string(forKey: AppConfiguration.Widget.StatsToday.userDefaultsSiteTimeZoneKey) { - timeZone = TimeZone(identifier: timeZoneName) - } - - isConfigured = siteID != nil && timeZone != nil && oauthToken != nil - } - - func fetchOAuthBearerToken() -> String? { - let oauth2Token = try? KeychainUtils.shared.getPasswordForUsername(AppConfiguration.Widget.Stats.keychainTokenKey, serviceName: AppConfiguration.Widget.Stats.keychainServiceName, accessGroup: WPAppKeychainAccessGroup) - - return oauth2Token as String? - } - - // MARK: - Data Management - - func loadSavedData() { - statsValues = ThisWeekWidgetStats.loadSavedData() - } - - func saveData() { - statsValues?.saveData() - } - - func fetchData(completionHandler: (@escaping (NCUpdateResult) -> Void)) { - guard let statsRemote = statsRemote() else { - return - } - - // Get the current date in the site's time zone. - let siteTimeZone = timeZone ?? .autoupdatingCurrent - let weekEndingDate = Date().convert(from: siteTimeZone).normalizedDate() - - // Include an extra day. It's needed to get the dailyChange for the last day. - statsRemote.getData(for: .day, endingOn: weekEndingDate, limit: ThisWeekWidgetStats.maxDaysToDisplay + 1) { [weak self] (summary: StatsSummaryTimeIntervalData?, error: Error?) in - - self?.loadingFailed = (error != nil) - - if error != nil { - DDLogError("This Week Widget: Error fetching summary: \(String(describing: error?.localizedDescription))") - completionHandler(.failed) - return - } - - DDLogDebug("This Week Widget: Fetched summary data.") - - DispatchQueue.main.async { [weak self] in - let summaryData = summary?.summaryData.reversed() ?? [] - let updatedStats = ThisWeekWidgetStats(days: ThisWeekWidgetStats.daysFrom(summaryData: summaryData)) - - // Update the widget only if the data has changed. - guard updatedStats != self?.statsValues else { - completionHandler(.noData) - return - } - - self?.statsValues = updatedStats - completionHandler(.newData) - self?.saveData() - } - } - } - - func statsRemote() -> StatsServiceRemoteV2? { - guard - let siteID = siteID, - let timeZone = timeZone, - let oauthToken = oauthToken - else { - DDLogError("This Week Widget: Missing site ID, timeZone or oauth2Token") - return nil - } - - let wpApi = WordPressComRestApi(oAuthToken: oauthToken) - return StatsServiceRemoteV2(wordPressComRestApi: wpApi, siteID: siteID.intValue, siteTimezone: timeZone) - } - - // MARK: - Table Helpers - - func registerTableCells() { - let differenceCellNib = UINib(nibName: String(describing: WidgetDifferenceCell.self), bundle: Bundle(for: WidgetDifferenceCell.self)) - tableView.register(differenceCellNib, forCellReuseIdentifier: WidgetDifferenceCell.reuseIdentifier) - - let unconfiguredCellNib = UINib(nibName: String(describing: WidgetUnconfiguredCell.self), bundle: Bundle(for: WidgetUnconfiguredCell.self)) - tableView.register(unconfiguredCellNib, forCellReuseIdentifier: WidgetUnconfiguredCell.reuseIdentifier) - - let urlCellNib = UINib(nibName: String(describing: WidgetUrlCell.self), bundle: Bundle(for: WidgetUrlCell.self)) - tableView.register(urlCellNib, forCellReuseIdentifier: WidgetUrlCell.reuseIdentifier) - - let noConnectionCellNib = UINib(nibName: String(describing: WidgetNoConnectionCell.self), bundle: Bundle(for: WidgetNoConnectionCell.self)) - tableView.register(noConnectionCellNib, forCellReuseIdentifier: WidgetNoConnectionCell.reuseIdentifier) - } - - func configureTableSeparator() { - tableView.separatorColor = WidgetStyles.separatorColor - tableView.separatorEffect = WidgetStyles.separatorVibrancyEffect - } - - func noConnectionCellFor(indexPath: IndexPath) -> UITableViewCell { - guard let cell = tableView.dequeueReusableCell(withIdentifier: WidgetNoConnectionCell.reuseIdentifier, for: indexPath) as? WidgetNoConnectionCell else { - return UITableViewCell() - } - - return cell - } - - func unconfiguredCellFor(indexPath: IndexPath) -> UITableViewCell { - guard let cell = tableView.dequeueReusableCell(withIdentifier: WidgetUnconfiguredCell.reuseIdentifier, for: indexPath) as? WidgetUnconfiguredCell else { - return UITableViewCell() - } - - loadingFailed ? cell.configure(for: .loadingFailed) : cell.configure(for: .thisWeek) - return cell - } - - func statCellFor(indexPath: IndexPath) -> UITableViewCell { - - // URL Cell - if showUrl() && indexPath.row == numberOfRowsToDisplay() - 1 { - guard let urlCell = tableView.dequeueReusableCell(withIdentifier: WidgetUrlCell.reuseIdentifier, for: indexPath) as? WidgetUrlCell else { - return UITableViewCell() - } - - urlCell.configure(siteUrl: siteUrl, hideSeparator: true) - return urlCell - } - - - // Data Cells - guard let cell = tableView.dequeueReusableCell(withIdentifier: WidgetDifferenceCell.reuseIdentifier, for: indexPath) as? WidgetDifferenceCell else { - return UITableViewCell() - } - - guard let statsValues = statsValues, - indexPath.row < statsValues.days.endIndex else { - cell.configure() - return cell - } - - cell.configure(day: statsValues.days[indexPath.row], isToday: indexPath.row == 0) - - return cell - } - - func showUrl() -> Bool { - return (extensionContext?.widgetActiveDisplayMode == .expanded && isConfigured && !showNoConnection && haveSiteUrl) - } - - // MARK: - Expand / Compact View Helpers - - func setAvailableDisplayMode() { - // If something went wrong, don't allow the widget to be expanded. - extensionContext?.widgetLargestAvailableDisplayMode = failedState ? .compact : .expanded - } - - func numberOfRowsToDisplay() -> Int { - if !isConfigured { - return Constants.minRows - } - - return maxRowsToDisplay() - } - - func maxRowsToDisplay() -> Int { - if showNoConnection { - return 1 - } - - guard let values = statsValues, - !values.days.isEmpty else { - // Add one for URL row - return ThisWeekWidgetStats.maxDaysToDisplay + 1 - } - - // Add one for URL row - return values.days.count + 1 - } - - func resizeView(withMaximumSize size: CGSize? = nil) { - guard let maxSize = size ?? extensionContext?.widgetMaximumSize(for: .compact) else { - return - } - - let expanded = extensionContext?.widgetActiveDisplayMode == .expanded - preferredContentSize = expanded ? CGSize(width: maxSize.width, height: expandedHeight()) : maxSize - } - - func expandedHeight() -> CGFloat { - var height: CGFloat = 0 - let dataRowHeight: CGFloat - - // This method is called before the rows are updated. - // So if a no connection cell was displayed, use either the previously calculated - // height or the default height for data rows. - // Otherwise, use the actual height from the first data row. - if tableView.visibleCells.first is WidgetNoConnectionCell { - dataRowHeight = calculatedDataRowHeight ?? WidgetDifferenceCell.defaultHeight - } else { - dataRowHeight = tableView.rectForRow(at: IndexPath(row: 0, section: 0)).height - calculatedDataRowHeight = dataRowHeight - } - - height += (dataRowHeight * CGFloat(numberOfRowsToDisplay() - 1)) - - if showUrl() { - height += WidgetUrlCell.height - } - - return height - } - - // MARK: - Reachability - - func setupReachability() { - isReachable = reachability.isReachable() - - NotificationCenter.default.addObserver(self, - selector: #selector(reachabilityChanged), - name: NSNotification.Name.reachabilityChanged, - object: nil) - reachability.startNotifier() - } - - @objc func reachabilityChanged() { - isReachable = reachability.isReachable() - } - - // MARK: - Constants - - enum Constants { - static let noDataLabel = "-" - static let baseUrl: String = "\(WPComScheme)://" - static let statsUrl: String = Constants.baseUrl + "viewstats?siteId=" - static let minRows: Int = 2 - } - -} - -private extension Date { - func convert(from timeZone: TimeZone, comparedWith target: TimeZone = TimeZone.current) -> Date { - let delta = TimeInterval(timeZone.secondsFromGMT(for: self) - target.secondsFromGMT(for: self)) - return addingTimeInterval(delta) - } -} diff --git a/WordPress/WordPressThisWeekWidget/ThisWeekWidgetPrefix.pch b/WordPress/WordPressThisWeekWidget/ThisWeekWidgetPrefix.pch deleted file mode 100644 index eb1f13aa03b1..000000000000 --- a/WordPress/WordPressThisWeekWidget/ThisWeekWidgetPrefix.pch +++ /dev/null @@ -1,8 +0,0 @@ -#ifdef __OBJC__ - -#ifndef WPCOM_SCHEME -#warning WPCOM_SCHEME is not defined for this target configuration! Defaulting to "wordpress". -#define WPCOM_SCHEME @"wordpress" -#endif - -#endif diff --git a/WordPress/WordPressThisWeekWidget/Tracks+ThisWeekWidget.swift b/WordPress/WordPressThisWeekWidget/Tracks+ThisWeekWidget.swift deleted file mode 100644 index ab89870171fc..000000000000 --- a/WordPress/WordPressThisWeekWidget/Tracks+ThisWeekWidget.swift +++ /dev/null @@ -1,37 +0,0 @@ -import Foundation - - -/// This extension implements helper tracking methods, meant for Today Widget Usage. -/// -extension Tracks { - - // MARK: - Public Methods - - public func trackExtensionStatsLaunched(_ siteID: Int) { - let properties = ["site_id": siteID] - trackExtensionEvent(.statsLaunched, properties: properties as [String: AnyObject]?) - } - - public func trackExtensionConfigureLaunched() { - trackExtensionEvent(.configureLaunched) - } - - public func trackDisplayModeChanged(properties: [String: Bool]) { - trackExtensionEvent(.displayModeChanged, properties: properties as [String: AnyObject]) - } - - // MARK: - Private Helpers - - fileprivate func trackExtensionEvent(_ event: ExtensionEvents, properties: [String: AnyObject]? = nil) { - track(event.rawValue, properties: properties) - } - - - // MARK: - Private Enums - - fileprivate enum ExtensionEvents: String { - case statsLaunched = "wpios_week_views_extension_stats_launched" - case configureLaunched = "wpios_week_views_extension_configure_launched" - case displayModeChanged = "wpios_week_views_extension_display_mode_changed" - } -} diff --git a/WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget-Alpha.entitlements b/WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget-Alpha.entitlements deleted file mode 100644 index dca30c5b176d..000000000000 --- a/WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget-Alpha.entitlements +++ /dev/null @@ -1,14 +0,0 @@ - - - - - com.apple.security.application-groups - - group.org.wordpress.alpha - - keychain-access-groups - - 99KV9Z6BKV.org.wordpress.alpha - - - diff --git a/WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget-Bridging-Header.h b/WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget-Bridging-Header.h deleted file mode 100644 index ff4dac2f06fc..000000000000 --- a/WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget-Bridging-Header.h +++ /dev/null @@ -1,2 +0,0 @@ -#import "SFHFKeychainUtils.h" -#import "Constants.h" diff --git a/WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget-Internal.entitlements b/WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget-Internal.entitlements deleted file mode 100644 index 54ecf75e3680..000000000000 --- a/WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget-Internal.entitlements +++ /dev/null @@ -1,14 +0,0 @@ - - - - - com.apple.security.application-groups - - group.org.wordpress.internal - - keychain-access-groups - - 99KV9Z6BKV.org.wordpress.internal - - - diff --git a/WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget.entitlements b/WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget.entitlements deleted file mode 100644 index 7eb5daa80a0d..000000000000 --- a/WordPress/WordPressThisWeekWidget/WordPressThisWeekWidget.entitlements +++ /dev/null @@ -1,14 +0,0 @@ - - - - - com.apple.security.application-groups - - group.org.wordpress - - keychain-access-groups - - 3TMU3BH3NK.org.wordpress - - - diff --git a/fastlane/Fastfile b/fastlane/Fastfile index 0d6dc322c7b8..356b3097bef3 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -34,7 +34,6 @@ WORDPRESS_EXTENSIONS_BUNDLE_IDENTIFIERS = %w[ WordPressStatsWidgets WordPressNotificationServiceExtension WordPressNotificationContentExtension - WordPressThisWeekWidget WordPressIntents ].map { |suffix| "#{WORDPRESS_BUNDLE_IDENTIFIER}.#{suffix}" } ALL_WORDPRESS_BUNDLE_IDENTIFIERS = [WORDPRESS_BUNDLE_IDENTIFIER, *WORDPRESS_EXTENSIONS_BUNDLE_IDENTIFIERS].freeze From a6c25c8be1d7558532f3278dc28f68a019c9126d Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Tue, 25 Oct 2022 14:49:28 +1100 Subject: [PATCH 11/19] Remove bundle identifiers for iOS 13 widgets in Jetpack from `Fastfile` These were there to be ready to use once the team was ready to add the widgets. In the meantime, we decided to drop iOS 13, which removes the need for them. --- fastlane/Fastfile | 3 --- 1 file changed, 3 deletions(-) diff --git a/fastlane/Fastfile b/fastlane/Fastfile index 356b3097bef3..5d6275890da3 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -42,11 +42,8 @@ JETPACK_BUNDLE_IDENTIFIER = 'com.automattic.jetpack' JETPACK_EXTENSIONS_BUNDLE_IDENTIFIERS = %w[ JetpackShare JetpackDraftAction - JetpackTodayWidget JetpackStatsWidgets JetpackNotificationServiceExtension - JetpackAllTimeWidget - JetpackThisWeekWidget JetpackIntents ].map { |suffix| "#{JETPACK_BUNDLE_IDENTIFIER}.#{suffix}" } ALL_JETPACK_BUNDLE_IDENTIFIERS = [JETPACK_BUNDLE_IDENTIFIER, *JETPACK_EXTENSIONS_BUNDLE_IDENTIFIERS].freeze From f713bf955e00679e4083d94fc150f6a42a37db7e Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Tue, 25 Oct 2022 16:42:47 +1100 Subject: [PATCH 12/19] Remove leftover references to old `WordPressHomeWidgetToday` This would have been the name of the very first iOS 10 home widget we added. Since then, it was renamed but we missed the dead references. --- WordPress/WordPress.xcodeproj/project.pbxproj | 8 -------- 1 file changed, 8 deletions(-) diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index 066f2da74013..23ba145ea966 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -5585,7 +5585,6 @@ 09C8BB8327DFF9CB00974175 /* ro */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ro; path = ro.lproj/InfoPlist.strings; sourceTree = ""; }; 09C8BB8427DFF9CC00974175 /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/InfoPlist.strings; sourceTree = ""; }; 09F367D2BE684EDE2E4A40E3 /* Pods-WordPressDraftActionExtension.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressDraftActionExtension.debug.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressDraftActionExtension/Pods-WordPressDraftActionExtension.debug.xcconfig"; sourceTree = ""; }; - 0A27D496128FBCDFA3658994 /* Pods-WordPressHomeWidgetToday.release-internal.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressHomeWidgetToday.release-internal.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressHomeWidgetToday/Pods-WordPressHomeWidgetToday.release-internal.xcconfig"; sourceTree = ""; }; 0A3FCA1C28B71CBC00499A15 /* FullScreenCommentReplyViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FullScreenCommentReplyViewModel.swift; sourceTree = ""; }; 0A69300A28B5AA5E00E98DE1 /* FullScreenCommentReplyViewModelTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FullScreenCommentReplyViewModelTests.swift; sourceTree = ""; }; 0A9610F828B2E56300076EBA /* UserSuggestion+Comparable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UserSuggestion+Comparable.swift"; sourceTree = ""; }; @@ -7774,7 +7773,6 @@ CEBD3EA90FF1BA3B00C1396E /* Blog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Blog.h; sourceTree = ""; }; CEBD3EAA0FF1BA3B00C1396E /* Blog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Blog.m; sourceTree = ""; }; CECEEB542823164800A28ADE /* MediaCacheSettingsViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MediaCacheSettingsViewController.swift; sourceTree = ""; }; - CF343E897B9953453334768C /* Pods-WordPressHomeWidgetToday.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressHomeWidgetToday.release.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressHomeWidgetToday/Pods-WordPressHomeWidgetToday.release.xcconfig"; sourceTree = ""; }; D01FA8A28AD63D2600800134 /* Pods-JetpackNotificationServiceExtension.release-internal.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-JetpackNotificationServiceExtension.release-internal.xcconfig"; path = "../Pods/Target Support Files/Pods-JetpackNotificationServiceExtension/Pods-JetpackNotificationServiceExtension.release-internal.xcconfig"; sourceTree = ""; }; D3B8D9C4DCD93C57C2B98CDC /* Pods_WordPressNotificationServiceExtension.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_WordPressNotificationServiceExtension.framework; sourceTree = BUILT_PRODUCTS_DIR; }; D42A30853435E728881904E8 /* Pods_JetpackIntents.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_JetpackIntents.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -8221,7 +8219,6 @@ E6BDEA721CE4824300682885 /* ReaderSearchTopic.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ReaderSearchTopic.swift; sourceTree = ""; }; E6C09B3D1BF0FDEB003074CB /* ReaderCrossPostMeta.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ReaderCrossPostMeta.swift; path = Classes/Models/ReaderCrossPostMeta.swift; sourceTree = SOURCE_ROOT; }; E6C0ED3A231DA23400A08B57 /* AccountService+MergeDuplicates.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "AccountService+MergeDuplicates.swift"; sourceTree = ""; }; - E6C80205BDC1D7FF04D6316A /* Pods-WordPressHomeWidgetToday.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressHomeWidgetToday.debug.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressHomeWidgetToday/Pods-WordPressHomeWidgetToday.debug.xcconfig"; sourceTree = ""; }; E6C892D51C601D55007AD612 /* SharingButtonsViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SharingButtonsViewController.swift; sourceTree = ""; }; E6D170361EF9D8D10046D433 /* SiteInfo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SiteInfo.swift; sourceTree = ""; }; E6D2E15E1B8A9C830000ED14 /* ReaderSiteStreamHeader.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = ReaderSiteStreamHeader.xib; sourceTree = ""; }; @@ -8695,7 +8692,6 @@ FEDA1AD7269D475D0038EC98 /* ListTableViewCell+Comments.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "ListTableViewCell+Comments.swift"; sourceTree = ""; }; FEDDD46E26A03DE900F8942B /* ListTableViewCell+Notifications.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "ListTableViewCell+Notifications.swift"; sourceTree = ""; }; FEF4DC5428439357003806BE /* ReminderScheduleCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReminderScheduleCoordinator.swift; sourceTree = ""; }; - FEF93A01F06919BDB9486A8E /* Pods-WordPressHomeWidgetToday.release-alpha.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressHomeWidgetToday.release-alpha.xcconfig"; path = "../Pods/Target Support Files/Pods-WordPressHomeWidgetToday/Pods-WordPressHomeWidgetToday.release-alpha.xcconfig"; sourceTree = ""; }; FEFA263D26C58427009CCB7E /* ShareAppTextActivityItemSourceTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShareAppTextActivityItemSourceTests.swift; sourceTree = ""; }; FEFC0F872730510F001F7F1D /* WordPress 136.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "WordPress 136.xcdatamodel"; sourceTree = ""; }; FEFC0F882731182C001F7F1D /* CommentService+Replies.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "CommentService+Replies.swift"; sourceTree = ""; }; @@ -14060,10 +14056,6 @@ B787A850C6163034630E7AF2 /* Pods-WordPressUITests.release.xcconfig */, 10BBFF34EBDA2F9B8CB48DF6 /* Pods-WordPressUITests.release-internal.xcconfig */, 1B77149F6C65D343E7E3AD09 /* Pods-WordPressUITests.release-alpha.xcconfig */, - E6C80205BDC1D7FF04D6316A /* Pods-WordPressHomeWidgetToday.debug.xcconfig */, - CF343E897B9953453334768C /* Pods-WordPressHomeWidgetToday.release.xcconfig */, - 0A27D496128FBCDFA3658994 /* Pods-WordPressHomeWidgetToday.release-internal.xcconfig */, - FEF93A01F06919BDB9486A8E /* Pods-WordPressHomeWidgetToday.release-alpha.xcconfig */, D67306CD28F2440FF6B0065C /* Pods-WordPressIntents.debug.xcconfig */, ADE06D6829F9044164BBA5AB /* Pods-WordPressIntents.release.xcconfig */, A0D83E08D5D2573348DE8926 /* Pods-WordPressIntents.release-internal.xcconfig */, From 658cedfaed3ed89a4efde29aac3167832abec1a4 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Thu, 27 Oct 2022 15:13:01 +1100 Subject: [PATCH 13/19] =?UTF-8?q?Remove=20`WidgetDifferenceCell`=20?= =?UTF-8?q?=E2=80=94=20It=20was=20used=20only=20in=20the=20iOS=2013=20widg?= =?UTF-8?q?ets?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Shared Views/WidgetDifferenceCell.swift | 87 ------------------ .../Shared Views/WidgetDifferenceCell.xib | 91 ------------------- WordPress/WordPress.xcodeproj/project.pbxproj | 12 --- 3 files changed, 190 deletions(-) delete mode 100644 WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetDifferenceCell.swift delete mode 100644 WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetDifferenceCell.xib diff --git a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetDifferenceCell.swift b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetDifferenceCell.swift deleted file mode 100644 index 5135866a1c80..000000000000 --- a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetDifferenceCell.swift +++ /dev/null @@ -1,87 +0,0 @@ -import UIKit - -class WidgetDifferenceCell: UITableViewCell { - - // MARK: - Properties - - static let reuseIdentifier = "WidgetDifferenceCell" - static let defaultHeight: CGFloat = 56.5 - - @IBOutlet private var dateLabel: UILabel! - @IBOutlet private var dataLabel: UILabel! - @IBOutlet private var differenceView: UIView! - @IBOutlet private var differenceLabel: UILabel! - - private var percentFormatter: NumberFormatter = { - let formatter = NumberFormatter() - formatter.numberStyle = .percent - formatter.positivePrefix = "+" - return formatter - }() - - private var dateFormatter: DateFormatter = { - let formatter = DateFormatter() - formatter.setLocalizedDateFormatFromTemplate("MMM d, yyyy") - return formatter - }() - - // MARK: - View - - override func awakeFromNib() { - super.awakeFromNib() - configureColors() - initializeLabels() - } - - func configure(day: ThisWeekWidgetDay? = nil, isToday: Bool = false) { - configureLabels(day: day, isToday: isToday) - } - -} - -// MARK: - Private Extension - -private extension WidgetDifferenceCell { - - func configureColors() { - dateLabel.textColor = WidgetStyles.primaryTextColor - dataLabel.textColor = WidgetStyles.primaryTextColor - differenceLabel.textColor = Constants.differenceTextColor - differenceView.layer.cornerRadius = Constants.cornerRadius - } - - func initializeLabels() { - dateLabel.text = Constants.noDataLabel - dataLabel.text = Constants.noDataLabel - differenceLabel.text = Constants.noDataLabel - } - - func configureLabels(day: ThisWeekWidgetDay?, isToday: Bool) { - guard let day = day else { - return - } - - dataLabel.text = day.viewsCount.abbreviatedString() - differenceLabel.text = percentFormatter.string(for: day.dailyChangePercent) - - guard !isToday else { - dateLabel.text = Constants.today - differenceView.backgroundColor = Constants.neutralColor - return - } - - dateLabel.text = dateFormatter.string(from: day.date) - differenceView.backgroundColor = day.dailyChangePercent < 0 ? Constants.negativeColor : Constants.positiveColor - } - - enum Constants { - static let noDataLabel = "-" - static let cornerRadius: CGFloat = 4.0 - static let today = AppLocalizedString("Today", comment: "Label for most recent stat row.") - static let positiveColor: UIColor = .success - static let negativeColor: UIColor = .error - static let neutralColor: UIColor = .neutral(.shade40) - static let differenceTextColor: UIColor = .white - } - -} diff --git a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetDifferenceCell.xib b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetDifferenceCell.xib deleted file mode 100644 index eafd5a9627f1..000000000000 --- a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetDifferenceCell.xib +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index 23ba145ea966..b97064a3bbc3 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -2188,8 +2188,6 @@ 9895401126C1F39300EDEB5A /* EditCommentTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */; }; 9895401226C1F39300EDEB5A /* EditCommentTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */; }; 9895B6E021ED49160053D370 /* TopTotalsCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9895B6DF21ED49160053D370 /* TopTotalsCell.xib */; }; - 989643EC23A0437B0070720A /* WidgetDifferenceCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989643EA23A0437B0070720A /* WidgetDifferenceCell.swift */; }; - 989643EE23A0437B0070720A /* WidgetDifferenceCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989643EB23A0437B0070720A /* WidgetDifferenceCell.xib */; }; 98A047722821CEBF001B4E2D /* BloggingPromptsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A047712821CEBF001B4E2D /* BloggingPromptsViewController.swift */; }; 98A047732821CEBF001B4E2D /* BloggingPromptsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A047712821CEBF001B4E2D /* BloggingPromptsViewController.swift */; }; 98A047752821D069001B4E2D /* BloggingPromptsViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 98A047742821D069001B4E2D /* BloggingPromptsViewController.storyboard */; }; @@ -3633,7 +3631,6 @@ FABB205C2602FC2C00C8785C /* StatsGhostChartCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9AC3C69A231543C2007933CD /* StatsGhostChartCell.xib */; }; FABB205D2602FC2C00C8785C /* ReaderGapMarkerCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = E6A3384D1BB0A50900371587 /* ReaderGapMarkerCell.xib */; }; FABB205E2602FC2C00C8785C /* postPreview.html in Resources */ = {isa = PBXBuildFile; fileRef = 5DB767401588F64D00EBE36C /* postPreview.html */; }; - FABB205F2602FC2C00C8785C /* WidgetDifferenceCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989643EB23A0437B0070720A /* WidgetDifferenceCell.xib */; }; FABB20602602FC2C00C8785C /* MediaSizeSliderCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = E14977191C0DCB6F0057CD60 /* MediaSizeSliderCell.xib */; }; FABB20622602FC2C00C8785C /* ReaderBlockedSiteCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = E65219F81B8D10C2000B1217 /* ReaderBlockedSiteCell.xib */; }; FABB20632602FC2C00C8785C /* QuickStartChecklistCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9A4E215921F7565A00EFF212 /* QuickStartChecklistCell.xib */; }; @@ -4391,7 +4388,6 @@ FABB238D2602FC2C00C8785C /* WPStyleGuide+SiteCreation.swift in Sources */ = {isa = PBXBuildFile; fileRef = B560914B208A671E00399AE4 /* WPStyleGuide+SiteCreation.swift */; }; FABB238E2602FC2C00C8785C /* NotificationSettingsService.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5EFB1C11B31B98E007608A3 /* NotificationSettingsService.swift */; }; FABB238F2602FC2C00C8785C /* WPButtonForNavigationBar.m in Sources */ = {isa = PBXBuildFile; fileRef = 5903AE1A19B60A98009D5354 /* WPButtonForNavigationBar.m */; }; - FABB23902602FC2C00C8785C /* WidgetDifferenceCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989643EA23A0437B0070720A /* WidgetDifferenceCell.swift */; }; FABB23912602FC2C00C8785C /* WidgetTwoColumnCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FD237CC1DE00218CD2 /* WidgetTwoColumnCell.swift */; }; FABB23922602FC2C00C8785C /* UIImage+Assets.swift in Sources */ = {isa = PBXBuildFile; fileRef = B58C4EC9207C5E1900E32E4D /* UIImage+Assets.swift */; }; FABB23932602FC2C00C8785C /* LoadMoreCounter.swift in Sources */ = {isa = PBXBuildFile; fileRef = E684383D221F535900752258 /* LoadMoreCounter.swift */; }; @@ -7223,8 +7219,6 @@ 98921EF621372E12004949AA /* MediaCoordinator.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaCoordinator.swift; sourceTree = ""; }; 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EditCommentTableViewController.swift; sourceTree = ""; }; 9895B6DF21ED49160053D370 /* TopTotalsCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = TopTotalsCell.xib; sourceTree = ""; }; - 989643EA23A0437B0070720A /* WidgetDifferenceCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WidgetDifferenceCell.swift; sourceTree = ""; }; - 989643EB23A0437B0070720A /* WidgetDifferenceCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = WidgetDifferenceCell.xib; sourceTree = ""; }; 98991A1125AE653D00B3BBAC /* WordPress 111.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "WordPress 111.xcdatamodel"; sourceTree = ""; }; 98A047712821CEBF001B4E2D /* BloggingPromptsViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BloggingPromptsViewController.swift; sourceTree = ""; }; 98A047742821D069001B4E2D /* BloggingPromptsViewController.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = BloggingPromptsViewController.storyboard; sourceTree = ""; }; @@ -13321,8 +13315,6 @@ 9890650C237CC1E700218CD2 /* Shared Views */ = { isa = PBXGroup; children = ( - 989643EA23A0437B0070720A /* WidgetDifferenceCell.swift */, - 989643EB23A0437B0070720A /* WidgetDifferenceCell.xib */, 989064FD237CC1DE00218CD2 /* WidgetTwoColumnCell.swift */, 989064FE237CC1DE00218CD2 /* WidgetTwoColumnCell.xib */, 989064FB237CC1DE00218CD2 /* WidgetUnconfiguredCell.swift */, @@ -17736,7 +17728,6 @@ 17222D8B261DDDF90047B163 /* black-classic-icon-app-60x60@3x.png in Resources */, E6A3384E1BB0A50900371587 /* ReaderGapMarkerCell.xib in Resources */, 5DB767411588F64D00EBE36C /* postPreview.html in Resources */, - 989643EE23A0437B0070720A /* WidgetDifferenceCell.xib in Resources */, 17222D9E261DDDF90047B163 /* pink-classic-icon-app-83.5x83.5@2x.png in Resources */, 1761F17326209AEE000815EF /* open-source-dark-icon-app-60x60@2x.png in Resources */, 1761F18B26209AEE000815EF /* hot-pink-icon-app-83.5x83.5@2x.png in Resources */, @@ -18276,7 +18267,6 @@ FABB205D2602FC2C00C8785C /* ReaderGapMarkerCell.xib in Resources */, F46597E028E6694200D5F49A /* pink-on-white-icon-app-76.png in Resources */, FABB205E2602FC2C00C8785C /* postPreview.html in Resources */, - FABB205F2602FC2C00C8785C /* WidgetDifferenceCell.xib in Resources */, FABB20602602FC2C00C8785C /* MediaSizeSliderCell.xib in Resources */, FABB20622602FC2C00C8785C /* ReaderBlockedSiteCell.xib in Resources */, FABB20632602FC2C00C8785C /* QuickStartChecklistCell.xib in Resources */, @@ -20393,7 +20383,6 @@ 5903AE1B19B60A98009D5354 /* WPButtonForNavigationBar.m in Sources */, 1717139F265FE59700F3A022 /* ButtonStyles.swift in Sources */, C3FF78E828354A91008FA600 /* SiteDesignSectionLoader.swift in Sources */, - 989643EC23A0437B0070720A /* WidgetDifferenceCell.swift in Sources */, 98906506237CC1DF00218CD2 /* WidgetTwoColumnCell.swift in Sources */, B58C4ECA207C5E1A00E32E4D /* UIImage+Assets.swift in Sources */, E684383E221F535900752258 /* LoadMoreCounter.swift in Sources */, @@ -23021,7 +23010,6 @@ F41E32FF287B47A500F89082 /* SuggestionsListViewModel.swift in Sources */, FABB238E2602FC2C00C8785C /* NotificationSettingsService.swift in Sources */, FABB238F2602FC2C00C8785C /* WPButtonForNavigationBar.m in Sources */, - FABB23902602FC2C00C8785C /* WidgetDifferenceCell.swift in Sources */, FA347AEE26EB6E300096604B /* GrowAudienceCell.swift in Sources */, FABB23912602FC2C00C8785C /* WidgetTwoColumnCell.swift in Sources */, FABB23922602FC2C00C8785C /* UIImage+Assets.swift in Sources */, From ced1dd344c1f568b8724d7b6a2485c9a03c20d7e Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Thu, 27 Oct 2022 15:13:59 +1100 Subject: [PATCH 14/19] =?UTF-8?q?Remove=20`WidgetTwoColumnCell`=20?= =?UTF-8?q?=E2=80=94=20It=20was=20used=20only=20in=20the=20iOS=2013=20widg?= =?UTF-8?q?ets?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Shared Views/WidgetTwoColumnCell.swift | 45 --------- .../Shared Views/WidgetTwoColumnCell.xib | 96 ------------------- WordPress/WordPress.xcodeproj/project.pbxproj | 12 --- 3 files changed, 153 deletions(-) delete mode 100644 WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetTwoColumnCell.swift delete mode 100644 WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetTwoColumnCell.xib diff --git a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetTwoColumnCell.swift b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetTwoColumnCell.swift deleted file mode 100644 index a77a6685145d..000000000000 --- a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetTwoColumnCell.swift +++ /dev/null @@ -1,45 +0,0 @@ -import UIKit - -class WidgetTwoColumnCell: UITableViewCell { - - // MARK: - Properties - - static let reuseIdentifier = "WidgetTwoColumnCell" - static let defaultHeight: CGFloat = 78 - - @IBOutlet private var leftItemLabel: UILabel! - @IBOutlet private var leftDataLabel: UILabel! - @IBOutlet private var rightItemLabel: UILabel! - @IBOutlet private var rightDataLabel: UILabel! - - // MARK: - View - - override func awakeFromNib() { - super.awakeFromNib() - configureColors() - } - - // MARK: - Configure - - func configure(leftItemName: String, leftItemData: String, rightItemName: String, rightItemData: String) { - leftItemLabel.text = leftItemName - leftDataLabel.text = leftItemData - rightItemLabel.text = rightItemName - rightDataLabel.text = rightItemData - - leftDataLabel.accessibilityLabel = leftItemData.accessibilityLabel - rightDataLabel.accessibilityLabel = rightItemData.accessibilityLabel - } - -} - -// MARK: - Private Extension - -private extension WidgetTwoColumnCell { - func configureColors() { - leftItemLabel.textColor = WidgetStyles.primaryTextColor - leftDataLabel.textColor = WidgetStyles.primaryTextColor - rightItemLabel.textColor = WidgetStyles.primaryTextColor - rightDataLabel.textColor = WidgetStyles.primaryTextColor - } -} diff --git a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetTwoColumnCell.xib b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetTwoColumnCell.xib deleted file mode 100644 index 4157105e6e12..000000000000 --- a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetTwoColumnCell.xib +++ /dev/null @@ -1,96 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index b97064a3bbc3..19e5819ef6d7 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -2182,8 +2182,6 @@ 988FD74B279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */; }; 98906502237CC1DF00218CD2 /* WidgetUnconfiguredCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FB237CC1DE00218CD2 /* WidgetUnconfiguredCell.swift */; }; 98906504237CC1DF00218CD2 /* WidgetUnconfiguredCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989064FC237CC1DE00218CD2 /* WidgetUnconfiguredCell.xib */; }; - 98906506237CC1DF00218CD2 /* WidgetTwoColumnCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FD237CC1DE00218CD2 /* WidgetTwoColumnCell.swift */; }; - 98906508237CC1DF00218CD2 /* WidgetTwoColumnCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989064FE237CC1DE00218CD2 /* WidgetTwoColumnCell.xib */; }; 98921EF721372E12004949AA /* MediaCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98921EF621372E12004949AA /* MediaCoordinator.swift */; }; 9895401126C1F39300EDEB5A /* EditCommentTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */; }; 9895401226C1F39300EDEB5A /* EditCommentTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */; }; @@ -3548,7 +3546,6 @@ FABB1FD42602FC2C00C8785C /* Flags.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 406A0EEF224D39C50016AD6A /* Flags.xcassets */; }; FABB1FD52602FC2C00C8785C /* StatsGhostTopCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9A9E3FAF230EA7A300909BC4 /* StatsGhostTopCell.xib */; }; FABB1FD62602FC2C00C8785C /* CustomizeInsightsCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 985793C722F23D7000643DBF /* CustomizeInsightsCell.xib */; }; - FABB1FD72602FC2C00C8785C /* WidgetTwoColumnCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989064FE237CC1DE00218CD2 /* WidgetTwoColumnCell.xib */; }; FABB1FD92602FC2C00C8785C /* oswald_upper.ttf in Resources */ = {isa = PBXBuildFile; fileRef = F5A34D0625DF2F7700C9654B /* oswald_upper.ttf */; }; FABB1FDB2602FC2C00C8785C /* xhtmlValidatorTemplate.xhtml in Resources */ = {isa = PBXBuildFile; fileRef = 2FAE97080E33B21600CA8540 /* xhtmlValidatorTemplate.xhtml */; }; FABB1FDC2602FC2C00C8785C /* PostingActivityDay.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9826AE8721B5C73400C851FA /* PostingActivityDay.xib */; }; @@ -4388,7 +4385,6 @@ FABB238D2602FC2C00C8785C /* WPStyleGuide+SiteCreation.swift in Sources */ = {isa = PBXBuildFile; fileRef = B560914B208A671E00399AE4 /* WPStyleGuide+SiteCreation.swift */; }; FABB238E2602FC2C00C8785C /* NotificationSettingsService.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5EFB1C11B31B98E007608A3 /* NotificationSettingsService.swift */; }; FABB238F2602FC2C00C8785C /* WPButtonForNavigationBar.m in Sources */ = {isa = PBXBuildFile; fileRef = 5903AE1A19B60A98009D5354 /* WPButtonForNavigationBar.m */; }; - FABB23912602FC2C00C8785C /* WidgetTwoColumnCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FD237CC1DE00218CD2 /* WidgetTwoColumnCell.swift */; }; FABB23922602FC2C00C8785C /* UIImage+Assets.swift in Sources */ = {isa = PBXBuildFile; fileRef = B58C4EC9207C5E1900E32E4D /* UIImage+Assets.swift */; }; FABB23932602FC2C00C8785C /* LoadMoreCounter.swift in Sources */ = {isa = PBXBuildFile; fileRef = E684383D221F535900752258 /* LoadMoreCounter.swift */; }; FABB23942602FC2C00C8785C /* LoginEpilogueUserInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = E6158AC91ECDF518005FA441 /* LoginEpilogueUserInfo.swift */; }; @@ -7214,8 +7210,6 @@ 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationCommentDetailCoordinator.swift; sourceTree = ""; }; 989064FB237CC1DE00218CD2 /* WidgetUnconfiguredCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WidgetUnconfiguredCell.swift; sourceTree = ""; }; 989064FC237CC1DE00218CD2 /* WidgetUnconfiguredCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = WidgetUnconfiguredCell.xib; sourceTree = ""; }; - 989064FD237CC1DE00218CD2 /* WidgetTwoColumnCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WidgetTwoColumnCell.swift; sourceTree = ""; }; - 989064FE237CC1DE00218CD2 /* WidgetTwoColumnCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = WidgetTwoColumnCell.xib; sourceTree = ""; }; 98921EF621372E12004949AA /* MediaCoordinator.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaCoordinator.swift; sourceTree = ""; }; 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EditCommentTableViewController.swift; sourceTree = ""; }; 9895B6DF21ED49160053D370 /* TopTotalsCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = TopTotalsCell.xib; sourceTree = ""; }; @@ -13315,8 +13309,6 @@ 9890650C237CC1E700218CD2 /* Shared Views */ = { isa = PBXGroup; children = ( - 989064FD237CC1DE00218CD2 /* WidgetTwoColumnCell.swift */, - 989064FE237CC1DE00218CD2 /* WidgetTwoColumnCell.xib */, 989064FB237CC1DE00218CD2 /* WidgetUnconfiguredCell.swift */, 989064FC237CC1DE00218CD2 /* WidgetUnconfiguredCell.xib */, 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */, @@ -17587,7 +17579,6 @@ 9A9E3FB0230EA7A300909BC4 /* StatsGhostTopCell.xib in Resources */, 985793C922F23D7000643DBF /* CustomizeInsightsCell.xib in Resources */, 1761F17926209AEE000815EF /* wordpress-dark-icon-app-60x60@2x.png in Resources */, - 98906508237CC1DF00218CD2 /* WidgetTwoColumnCell.xib in Resources */, F5A34D0F25DF2F7F00C9654B /* oswald_upper.ttf in Resources */, 2FAE970D0E33B21600CA8540 /* xhtmlValidatorTemplate.xhtml in Resources */, 9826AE8821B5C73400C851FA /* PostingActivityDay.xib in Resources */, @@ -18129,7 +18120,6 @@ C7124E4E2638528F00929318 /* JetpackPrologueViewController.xib in Resources */, F465978628E65E1800D5F49A /* blue-on-white-icon-app-83.5@2x.png in Resources */, FABB1FD62602FC2C00C8785C /* CustomizeInsightsCell.xib in Resources */, - FABB1FD72602FC2C00C8785C /* WidgetTwoColumnCell.xib in Resources */, FABB1FD92602FC2C00C8785C /* oswald_upper.ttf in Resources */, F46597F528E669D400D5F49A /* spectrum-on-white-icon-app-76@2x.png in Resources */, FABB1FDB2602FC2C00C8785C /* xhtmlValidatorTemplate.xhtml in Resources */, @@ -20383,7 +20373,6 @@ 5903AE1B19B60A98009D5354 /* WPButtonForNavigationBar.m in Sources */, 1717139F265FE59700F3A022 /* ButtonStyles.swift in Sources */, C3FF78E828354A91008FA600 /* SiteDesignSectionLoader.swift in Sources */, - 98906506237CC1DF00218CD2 /* WidgetTwoColumnCell.swift in Sources */, B58C4ECA207C5E1A00E32E4D /* UIImage+Assets.swift in Sources */, E684383E221F535900752258 /* LoadMoreCounter.swift in Sources */, E6158ACA1ECDF518005FA441 /* LoginEpilogueUserInfo.swift in Sources */, @@ -23011,7 +23000,6 @@ FABB238E2602FC2C00C8785C /* NotificationSettingsService.swift in Sources */, FABB238F2602FC2C00C8785C /* WPButtonForNavigationBar.m in Sources */, FA347AEE26EB6E300096604B /* GrowAudienceCell.swift in Sources */, - FABB23912602FC2C00C8785C /* WidgetTwoColumnCell.swift in Sources */, FABB23922602FC2C00C8785C /* UIImage+Assets.swift in Sources */, FABB23932602FC2C00C8785C /* LoadMoreCounter.swift in Sources */, FABB23942602FC2C00C8785C /* LoginEpilogueUserInfo.swift in Sources */, From a8e019db8c8565684c2f68bc8c8e5ca414daa76c Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Thu, 27 Oct 2022 15:14:22 +1100 Subject: [PATCH 15/19] =?UTF-8?q?Remove=20`WidgetUnconfiguredCell`=20?= =?UTF-8?q?=E2=80=94=20It=20was=20used=20only=20in=20the=20iOS=2013=20widg?= =?UTF-8?q?ets?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Shared Views/WidgetUnconfiguredCell.swift | 80 ------------- .../Shared Views/WidgetUnconfiguredCell.xib | 106 ------------------ WordPress/WordPress.xcodeproj/project.pbxproj | 12 -- 3 files changed, 198 deletions(-) delete mode 100644 WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUnconfiguredCell.swift delete mode 100644 WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUnconfiguredCell.xib diff --git a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUnconfiguredCell.swift b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUnconfiguredCell.swift deleted file mode 100644 index 00c849d2f484..000000000000 --- a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUnconfiguredCell.swift +++ /dev/null @@ -1,80 +0,0 @@ -import UIKit - -enum WidgetType { - case today - case allTime - case thisWeek - case loadingFailed - - var configureLabelFont: UIFont { - switch self { - case .loadingFailed: - return WidgetStyles.headlineFont - default: - return WidgetStyles.footnoteNote - } - } -} - -class WidgetUnconfiguredCell: UITableViewCell { - - // MARK: - Properties - - static let reuseIdentifier = "WidgetUnconfiguredCell" - - @IBOutlet private var configureLabel: UILabel! - @IBOutlet private var separatorLine: UIView! - @IBOutlet private var separatorVisualEffectView: UIVisualEffectView! - @IBOutlet private var actionLabel: UILabel! - - private var widgetType: WidgetType? - - // MARK: - View - - func configure(for widgetType: WidgetType) { - self.widgetType = widgetType - configureView() - } - -} - -// MARK: - Private Extension - -private extension WidgetUnconfiguredCell { - - func configureView() { - guard let widgetType = widgetType else { - return - } - - configureLabel.text = { - switch widgetType { - case .today: - return LocalizedText.configureToday - case .allTime: - return LocalizedText.configureAllTime - case .thisWeek: - return LocalizedText.configureThisWeek - case .loadingFailed: - return LocalizedText.loadingFailed - } - }() - - configureLabel.font = widgetType.configureLabelFont - actionLabel.text = widgetType == .loadingFailed ? LocalizedText.retry : LocalizedText.openWordPress - configureLabel.textColor = WidgetStyles.primaryTextColor - actionLabel.textColor = WidgetStyles.primaryTextColor - WidgetStyles.configureSeparator(separatorLine) - separatorVisualEffectView.effect = WidgetStyles.separatorVibrancyEffect - } - - enum LocalizedText { - static let configureToday = AppLocalizedString("Display your site stats for today here. Configure in the WordPress app in your site stats.", comment: "Unconfigured stats today widget helper text") - static let configureAllTime = AppLocalizedString("Display your all-time site stats here. Configure in the WordPress app in your site stats.", comment: "Unconfigured stats all-time widget helper text") - static let configureThisWeek = AppLocalizedString("Display your site stats for this week here. Configure in the WordPress app in your site stats.", comment: "Unconfigured stats this week widget helper text") - static let openWordPress = AppLocalizedString("Open WordPress", comment: "Today widget label to launch WP app") - static let loadingFailed = AppLocalizedString("Couldn't load data", comment: "Message displayed when a Stats widget failed to load data.") - static let retry = AppLocalizedString("Retry", comment: "Stats widgets label to reload the widget.") - } - -} diff --git a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUnconfiguredCell.xib b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUnconfiguredCell.xib deleted file mode 100644 index 4e3211f6663f..000000000000 --- a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUnconfiguredCell.xib +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index 19e5819ef6d7..2a9c10e684b0 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -2180,8 +2180,6 @@ 988F073623D0CE8800AC67A6 /* WidgetUrlCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */; }; 988FD74A279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */; }; 988FD74B279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */; }; - 98906502237CC1DF00218CD2 /* WidgetUnconfiguredCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FB237CC1DE00218CD2 /* WidgetUnconfiguredCell.swift */; }; - 98906504237CC1DF00218CD2 /* WidgetUnconfiguredCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989064FC237CC1DE00218CD2 /* WidgetUnconfiguredCell.xib */; }; 98921EF721372E12004949AA /* MediaCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98921EF621372E12004949AA /* MediaCoordinator.swift */; }; 9895401126C1F39300EDEB5A /* EditCommentTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */; }; 9895401226C1F39300EDEB5A /* EditCommentTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */; }; @@ -3646,7 +3644,6 @@ FABB207E2602FC2C00C8785C /* EpilogueUserInfoCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98086559203D075D00D58786 /* EpilogueUserInfoCell.xib */; }; FABB207F2602FC2C00C8785C /* ReaderTagStreamHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = E6D2E1601B8AA4410000ED14 /* ReaderTagStreamHeader.xib */; }; FABB20812602FC2C00C8785C /* PostCompactCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 577C2AB52294401800AD1F03 /* PostCompactCell.xib */; }; - FABB20832602FC2C00C8785C /* WidgetUnconfiguredCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989064FC237CC1DE00218CD2 /* WidgetUnconfiguredCell.xib */; }; FABB20862602FC2C00C8785C /* n.caf in Resources */ = {isa = PBXBuildFile; fileRef = 5D69DBC3165428CA00A2D1F7 /* n.caf */; }; FABB20882602FC2C00C8785C /* People.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = E1B912801BB00EFD003C25B9 /* People.storyboard */; }; FABB208A2602FC2C00C8785C /* WidgetNoConnectionCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */; }; @@ -4017,7 +4014,6 @@ FABB220F2602FC2C00C8785C /* MediaHost+AbstractPost.swift in Sources */ = {isa = PBXBuildFile; fileRef = F11C9F75243B3C5E00921DDC /* MediaHost+AbstractPost.swift */; }; FABB22102602FC2C00C8785C /* PageTemplateCategory+CoreDataProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46183D1E251BD6A0004F9AFD /* PageTemplateCategory+CoreDataProperties.swift */; }; FABB22112602FC2C00C8785C /* MyProfileHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE1CCB2C204DDD18000EE3AC /* MyProfileHeaderView.swift */; }; - FABB22122602FC2C00C8785C /* WidgetUnconfiguredCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989064FB237CC1DE00218CD2 /* WidgetUnconfiguredCell.swift */; }; FABB22132602FC2C00C8785C /* BlogSiteVisibilityHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = FFDA7E4F1B8DF6E500B83C56 /* BlogSiteVisibilityHelper.m */; }; FABB22142602FC2C00C8785C /* TitleBadgeDisclosureCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = E66E2A671FE432B900788F22 /* TitleBadgeDisclosureCell.swift */; }; FABB22152602FC2C00C8785C /* FormattableContent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E4123B220F4097A00DF8486 /* FormattableContent.swift */; }; @@ -7208,8 +7204,6 @@ 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WidgetUrlCell.swift; sourceTree = ""; }; 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = WidgetUrlCell.xib; sourceTree = ""; }; 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationCommentDetailCoordinator.swift; sourceTree = ""; }; - 989064FB237CC1DE00218CD2 /* WidgetUnconfiguredCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WidgetUnconfiguredCell.swift; sourceTree = ""; }; - 989064FC237CC1DE00218CD2 /* WidgetUnconfiguredCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = WidgetUnconfiguredCell.xib; sourceTree = ""; }; 98921EF621372E12004949AA /* MediaCoordinator.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaCoordinator.swift; sourceTree = ""; }; 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EditCommentTableViewController.swift; sourceTree = ""; }; 9895B6DF21ED49160053D370 /* TopTotalsCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = TopTotalsCell.xib; sourceTree = ""; }; @@ -13309,8 +13303,6 @@ 9890650C237CC1E700218CD2 /* Shared Views */ = { isa = PBXGroup; children = ( - 989064FB237CC1DE00218CD2 /* WidgetUnconfiguredCell.swift */, - 989064FC237CC1DE00218CD2 /* WidgetUnconfiguredCell.xib */, 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */, 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */, 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */, @@ -17761,7 +17753,6 @@ E6D2E1611B8AA4410000ED14 /* ReaderTagStreamHeader.xib in Resources */, 577C2AB62294401800AD1F03 /* PostCompactCell.xib in Resources */, 17222D86261DDDF90047B163 /* celadon-icon-app-76x76.png in Resources */, - 98906504237CC1DF00218CD2 /* WidgetUnconfiguredCell.xib in Resources */, 5D69DBC4165428CA00A2D1F7 /* n.caf in Resources */, 17222D85261DDDF90047B163 /* celadon-icon-app-83.5x83.5@2x.png in Resources */, E1B912811BB00EFD003C25B9 /* People.storyboard in Resources */, @@ -18287,7 +18278,6 @@ F465978428E65E1800D5F49A /* blue-on-white-icon-app-76@2x.png in Resources */, F46597EB28E6698D00D5F49A /* spectrum-on-black-icon-app-60@3x.png in Resources */, FABB20812602FC2C00C8785C /* PostCompactCell.xib in Resources */, - FABB20832602FC2C00C8785C /* WidgetUnconfiguredCell.xib in Resources */, FABB20862602FC2C00C8785C /* n.caf in Resources */, F465977D28E6598900D5F49A /* black-on-white-icon-app-83.5@2x.png in Resources */, F41E4EDA28F2424B001880C6 /* dark-glow-icon-app-76@2x.png in Resources */, @@ -19891,7 +19881,6 @@ F11C9F76243B3C5E00921DDC /* MediaHost+AbstractPost.swift in Sources */, 46183D20251BD6A0004F9AFD /* PageTemplateCategory+CoreDataProperties.swift in Sources */, CE1CCB2D204DDD18000EE3AC /* MyProfileHeaderView.swift in Sources */, - 98906502237CC1DF00218CD2 /* WidgetUnconfiguredCell.swift in Sources */, C7F7BE4C2626301500CE547F /* AuthenticationHandler.swift in Sources */, FFDA7E501B8DF6E500B83C56 /* BlogSiteVisibilityHelper.m in Sources */, E66E2A691FE432BC00788F22 /* TitleBadgeDisclosureCell.swift in Sources */, @@ -22527,7 +22516,6 @@ FABB220F2602FC2C00C8785C /* MediaHost+AbstractPost.swift in Sources */, FABB22102602FC2C00C8785C /* PageTemplateCategory+CoreDataProperties.swift in Sources */, FABB22112602FC2C00C8785C /* MyProfileHeaderView.swift in Sources */, - FABB22122602FC2C00C8785C /* WidgetUnconfiguredCell.swift in Sources */, FABB22132602FC2C00C8785C /* BlogSiteVisibilityHelper.m in Sources */, FABB22142602FC2C00C8785C /* TitleBadgeDisclosureCell.swift in Sources */, FABB22152602FC2C00C8785C /* FormattableContent.swift in Sources */, From 02f73610d22ff4e2a7ac6d967ad5ffdf6763991c Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Thu, 27 Oct 2022 15:15:01 +1100 Subject: [PATCH 16/19] =?UTF-8?q?Remove=20`WidgetUrlCell`=20=E2=80=94=20It?= =?UTF-8?q?=20was=20used=20only=20in=20the=20iOS=2013=20widgets?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Shared Views/WidgetUrlCell.swift | 36 --------- .../Shared Views/WidgetUrlCell.xib | 81 ------------------- WordPress/WordPress.xcodeproj/project.pbxproj | 12 --- 3 files changed, 129 deletions(-) delete mode 100644 WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUrlCell.swift delete mode 100644 WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUrlCell.xib diff --git a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUrlCell.swift b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUrlCell.swift deleted file mode 100644 index c9be1c48d41d..000000000000 --- a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUrlCell.swift +++ /dev/null @@ -1,36 +0,0 @@ -import UIKit - -class WidgetUrlCell: UITableViewCell { - - // MARK: - Properties - - static let reuseIdentifier = "WidgetUrlCell" - static let height: CGFloat = 32 - - @IBOutlet private var separatorLine: UIView! - @IBOutlet private var separatorVisualEffectView: UIVisualEffectView! - @IBOutlet private var siteUrlLabel: UILabel! - - // MARK: - View - - override func awakeFromNib() { - super.awakeFromNib() - configureColors() - } - - func configure(siteUrl: String, hideSeparator: Bool = false) { - siteUrlLabel.text = siteUrl - separatorVisualEffectView.isHidden = hideSeparator - } - -} - -// MARK: - Private Extension - -private extension WidgetUrlCell { - func configureColors() { - siteUrlLabel.textColor = WidgetStyles.secondaryTextColor - WidgetStyles.configureSeparator(separatorLine) - separatorVisualEffectView.effect = WidgetStyles.separatorVibrancyEffect - } -} diff --git a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUrlCell.xib b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUrlCell.xib deleted file mode 100644 index d9df3cc5e6dd..000000000000 --- a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetUrlCell.xib +++ /dev/null @@ -1,81 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index 2a9c10e684b0..5efebf7e5bd7 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -2176,8 +2176,6 @@ 98880A4B22B2E5E400464538 /* TwoColumnCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98880A4922B2E5E400464538 /* TwoColumnCell.xib */; }; 988AC37522F10DD900BC1433 /* FileDownloadsStatsRecordValue+CoreDataProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988AC37422F10DD900BC1433 /* FileDownloadsStatsRecordValue+CoreDataProperties.swift */; }; 988AC37922F10E2C00BC1433 /* FileDownloadsStatsRecordValue+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988AC37822F10E2C00BC1433 /* FileDownloadsStatsRecordValue+CoreDataClass.swift */; }; - 988F073523D0CE8800AC67A6 /* WidgetUrlCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */; }; - 988F073623D0CE8800AC67A6 /* WidgetUrlCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */; }; 988FD74A279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */; }; 988FD74B279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */; }; 98921EF721372E12004949AA /* MediaCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98921EF621372E12004949AA /* MediaCoordinator.swift */; }; @@ -3677,7 +3675,6 @@ FABB20AF2602FC2C00C8785C /* StatsGhostTabbedCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9A9E3FB1230EB74300909BC4 /* StatsGhostTabbedCell.xib */; }; FABB20B02602FC2C00C8785C /* CategorySectionTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 469CE06C24BCED75003BDC8B /* CategorySectionTableViewCell.xib */; }; FABB20B22602FC2C00C8785C /* ExpandableCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4034FDED2007D4F700153B87 /* ExpandableCell.xib */; }; - FABB20B42602FC2C00C8785C /* WidgetUrlCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */; }; FABB20B52602FC2C00C8785C /* richEmbedScript.js in Resources */ = {isa = PBXBuildFile; fileRef = E61507E32220A13B00213D33 /* richEmbedScript.js */; }; FABB20B72602FC2C00C8785C /* PluginListCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 401A3D012027DBD80099A127 /* PluginListCell.xib */; }; FABB20B82602FC2C00C8785C /* SiteStatsDashboard.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 981C348F2183871100FC2683 /* SiteStatsDashboard.storyboard */; }; @@ -4053,7 +4050,6 @@ FABB22372602FC2C00C8785C /* JetpackRestoreStatusCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAB8AB5E25AFFD0600F9F8A0 /* JetpackRestoreStatusCoordinator.swift */; }; FABB22382602FC2C00C8785C /* EventLoggingDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F913BB0D24B3C58B00C19032 /* EventLoggingDelegate.swift */; }; FABB22392602FC2C00C8785C /* TodayStatsRecordValue+CoreDataClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4089C50E22371B120031CE78 /* TodayStatsRecordValue+CoreDataClass.swift */; }; - FABB223A2602FC2C00C8785C /* WidgetUrlCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */; }; FABB223B2602FC2C00C8785C /* AbstractPost+Searchable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74729CAD205722E300D1394D /* AbstractPost+Searchable.swift */; }; FABB223C2602FC2C00C8785C /* EditCommentViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 2906F810110CDA8900169D56 /* EditCommentViewController.m */; }; FABB223D2602FC2C00C8785C /* ThisWeekWidgetStats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98F93181239AF64800E4E96E /* ThisWeekWidgetStats.swift */; }; @@ -7201,8 +7197,6 @@ 988AC37422F10DD900BC1433 /* FileDownloadsStatsRecordValue+CoreDataProperties.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "FileDownloadsStatsRecordValue+CoreDataProperties.swift"; sourceTree = ""; }; 988AC37822F10E2C00BC1433 /* FileDownloadsStatsRecordValue+CoreDataClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "FileDownloadsStatsRecordValue+CoreDataClass.swift"; sourceTree = ""; }; 988AD63726B089CE003552B4 /* WordPress 128.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "WordPress 128.xcdatamodel"; sourceTree = ""; }; - 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WidgetUrlCell.swift; sourceTree = ""; }; - 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = WidgetUrlCell.xib; sourceTree = ""; }; 988FD749279B75A400C7E814 /* NotificationCommentDetailCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationCommentDetailCoordinator.swift; sourceTree = ""; }; 98921EF621372E12004949AA /* MediaCoordinator.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaCoordinator.swift; sourceTree = ""; }; 9895401026C1F39300EDEB5A /* EditCommentTableViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EditCommentTableViewController.swift; sourceTree = ""; }; @@ -13303,8 +13297,6 @@ 9890650C237CC1E700218CD2 /* Shared Views */ = { isa = PBXGroup; children = ( - 988F073323D0CE8800AC67A6 /* WidgetUrlCell.swift */, - 988F073423D0CE8800AC67A6 /* WidgetUrlCell.xib */, 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */, 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */, ); @@ -17804,7 +17796,6 @@ 469CE06E24BCED75003BDC8B /* CategorySectionTableViewCell.xib in Resources */, 4034FDEE2007D4F700153B87 /* ExpandableCell.xib in Resources */, 1761F18026209AEE000815EF /* jetpack-green-icon-app-76x76.png in Resources */, - 988F073623D0CE8800AC67A6 /* WidgetUrlCell.xib in Resources */, 98F9FB2E270282C200ADF552 /* CommentModerationBar.xib in Resources */, B0088A97283D6FBC008C9676 /* StatsRevampV2FeatureDescriptionView.xib in Resources */, E61507E42220A13B00213D33 /* richEmbedScript.js in Resources */, @@ -18350,7 +18341,6 @@ FABB20B02602FC2C00C8785C /* CategorySectionTableViewCell.xib in Resources */, FABB20B22602FC2C00C8785C /* ExpandableCell.xib in Resources */, F465977C28E6598900D5F49A /* black-on-white-icon-app-60@2x.png in Resources */, - FABB20B42602FC2C00C8785C /* WidgetUrlCell.xib in Resources */, F41E4EED28F247D3001880C6 /* white-on-green-icon-app-60@3x.png in Resources */, FABB20B52602FC2C00C8785C /* richEmbedScript.js in Resources */, 98E5D4932620C2B40074A56A /* UserProfileSectionHeader.xib in Resources */, @@ -19932,7 +19922,6 @@ F913BB0E24B3C58B00C19032 /* EventLoggingDelegate.swift in Sources */, 4089C51022371B120031CE78 /* TodayStatsRecordValue+CoreDataClass.swift in Sources */, DC772AF5282009BA00664C02 /* StatsLineChartView.swift in Sources */, - 988F073523D0CE8800AC67A6 /* WidgetUrlCell.swift in Sources */, 74729CAE205722E300D1394D /* AbstractPost+Searchable.swift in Sources */, 2906F812110CDA8900169D56 /* EditCommentViewController.m in Sources */, 98F93182239AF64800E4E96E /* ThisWeekWidgetStats.swift in Sources */, @@ -22563,7 +22552,6 @@ FABB22372602FC2C00C8785C /* JetpackRestoreStatusCoordinator.swift in Sources */, FABB22382602FC2C00C8785C /* EventLoggingDelegate.swift in Sources */, FABB22392602FC2C00C8785C /* TodayStatsRecordValue+CoreDataClass.swift in Sources */, - FABB223A2602FC2C00C8785C /* WidgetUrlCell.swift in Sources */, FABB223B2602FC2C00C8785C /* AbstractPost+Searchable.swift in Sources */, FAA9084D27BD60710093FFA8 /* MySiteViewController+QuickStart.swift in Sources */, FABB223C2602FC2C00C8785C /* EditCommentViewController.m in Sources */, From 46ee6b03d3c20bd66569cd9b546ff38984979105 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Thu, 27 Oct 2022 15:15:20 +1100 Subject: [PATCH 17/19] =?UTF-8?q?Remove=20`WidgetNoConnectionCell`=20?= =?UTF-8?q?=E2=80=94=20It=20was=20used=20only=20in=20the=20iOS=2013=20widg?= =?UTF-8?q?ets?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Shared Views/WidgetNoConnectionCell.swift | 35 ------------ .../Shared Views/WidgetNoConnectionCell.xib | 53 ------------------- WordPress/WordPress.xcodeproj/project.pbxproj | 12 ----- 3 files changed, 100 deletions(-) delete mode 100644 WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetNoConnectionCell.swift delete mode 100644 WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetNoConnectionCell.xib diff --git a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetNoConnectionCell.swift b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetNoConnectionCell.swift deleted file mode 100644 index 5028a197381e..000000000000 --- a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetNoConnectionCell.swift +++ /dev/null @@ -1,35 +0,0 @@ -import UIKit - -class WidgetNoConnectionCell: UITableViewCell { - - // MARK: - Properties - - static let reuseIdentifier = "WidgetNoConnectionCell" - - @IBOutlet private var titleLabel: UILabel! - @IBOutlet private var messageLabel: UILabel! - - // MARK: - View - - override func awakeFromNib() { - super.awakeFromNib() - configureView() - } - -} - -private extension WidgetNoConnectionCell { - - func configureView() { - titleLabel.text = LocalizedText.title - messageLabel.text = LocalizedText.message - titleLabel.textColor = WidgetStyles.primaryTextColor - messageLabel.textColor = WidgetStyles.primaryTextColor - } - - enum LocalizedText { - static let title = AppLocalizedString("No network available", comment: "Displayed in the Stats widgets when there is no network") - static let message = AppLocalizedString("Stats will be updated next time you're online", comment: "Displayed in the Stats widgets when there is no network") - } - -} diff --git a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetNoConnectionCell.xib b/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetNoConnectionCell.xib deleted file mode 100644 index 4b613661f181..000000000000 --- a/WordPress/Classes/ViewRelated/Stats/Today Widgets/Shared Views/WidgetNoConnectionCell.xib +++ /dev/null @@ -1,53 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index 5efebf7e5bd7..10cf8d0ff2c1 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -2151,8 +2151,6 @@ 986FF29E2141971D005B28EC /* WPAnimatedBox.m in Sources */ = {isa = PBXBuildFile; fileRef = E240859B183D82AE002EB0EF /* WPAnimatedBox.m */; }; 986FF29F214198D9005B28EC /* String+Ranges.swift in Sources */ = {isa = PBXBuildFile; fileRef = B55FFCF91F034F1A0070812C /* String+Ranges.swift */; }; 986FF2A0214198D9005B28EC /* String+Ranges.swift in Sources */ = {isa = PBXBuildFile; fileRef = B55FFCF91F034F1A0070812C /* String+Ranges.swift */; }; - 98712D1B23DA1C7E00555316 /* WidgetNoConnectionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */; }; - 98712D1C23DA1C7E00555316 /* WidgetNoConnectionCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */; }; 9872CB30203B8A730066A293 /* SignupEpilogueTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9872CB2F203B8A730066A293 /* SignupEpilogueTableViewController.swift */; }; 9874766F219630240080967F /* SiteStatsTableViewCells.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9874766E219630240080967F /* SiteStatsTableViewCells.swift */; }; 9874767321963D330080967F /* SiteStatsInformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9874767221963D320080967F /* SiteStatsInformation.swift */; }; @@ -3644,7 +3642,6 @@ FABB20812602FC2C00C8785C /* PostCompactCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 577C2AB52294401800AD1F03 /* PostCompactCell.xib */; }; FABB20862602FC2C00C8785C /* n.caf in Resources */ = {isa = PBXBuildFile; fileRef = 5D69DBC3165428CA00A2D1F7 /* n.caf */; }; FABB20882602FC2C00C8785C /* People.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = E1B912801BB00EFD003C25B9 /* People.storyboard */; }; - FABB208A2602FC2C00C8785C /* WidgetNoConnectionCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */; }; FABB208B2602FC2C00C8785C /* LatestPostSummaryCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9826AE8121B5C6A700C851FA /* LatestPostSummaryCell.xib */; }; FABB208D2602FC2C00C8785C /* RestorePostTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 5D2FB2821AE98C4600F1D4ED /* RestorePostTableViewCell.xib */; }; FABB208E2602FC2C00C8785C /* Plans.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 1724DDCB1C6121D00099D273 /* Plans.storyboard */; }; @@ -3931,7 +3928,6 @@ FABB21BC2602FC2C00C8785C /* MediaNoticeNavigationCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1750BD6C201144DB0050F13A /* MediaNoticeNavigationCoordinator.swift */; }; FABB21BD2602FC2C00C8785C /* ReaderPostToReaderPost37to38.swift in Sources */ = {isa = PBXBuildFile; fileRef = E66969E31B9E68B200EC9C00 /* ReaderPostToReaderPost37to38.swift */; }; FABB21BE2602FC2C00C8785C /* ReaderRelatedPostsSectionHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA6FAB3425EF7C5700666CED /* ReaderRelatedPostsSectionHeaderView.swift */; }; - FABB21BF2602FC2C00C8785C /* WidgetNoConnectionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */; }; FABB21C02602FC2C00C8785C /* AppRatingUtilityType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E58879F20FE956100DB6F80 /* AppRatingUtilityType.swift */; }; FABB21C12602FC2C00C8785C /* MenuItemSourceFooterView.m in Sources */ = {isa = PBXBuildFile; fileRef = 08216FBD1CDBF96000304BA7 /* MenuItemSourceFooterView.m */; }; FABB21C22602FC2C00C8785C /* JetpackRestoreFailedViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAD951A325B6CB3600F011B5 /* JetpackRestoreFailedViewController.swift */; }; @@ -7170,8 +7166,6 @@ 986CC4D120E1B2F6004F300E /* CustomLogFormatter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CustomLogFormatter.swift; sourceTree = ""; }; 986DD19B218D002500D28061 /* WPStyleGuide+Stats.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WPStyleGuide+Stats.swift"; sourceTree = ""; }; 987044AD268A9A5300BD0571 /* WordPress 126.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "WordPress 126.xcdatamodel"; sourceTree = ""; }; - 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WidgetNoConnectionCell.swift; sourceTree = ""; }; - 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = WidgetNoConnectionCell.xib; sourceTree = ""; }; 9872CB2F203B8A730066A293 /* SignupEpilogueTableViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignupEpilogueTableViewController.swift; sourceTree = ""; }; 9872EA6826B9EE38009F795B /* WordPress 130.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "WordPress 130.xcdatamodel"; sourceTree = ""; }; 9874766E219630240080967F /* SiteStatsTableViewCells.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SiteStatsTableViewCells.swift; sourceTree = ""; }; @@ -13297,8 +13291,6 @@ 9890650C237CC1E700218CD2 /* Shared Views */ = { isa = PBXGroup; children = ( - 98712D1923DA1C7E00555316 /* WidgetNoConnectionCell.swift */, - 98712D1A23DA1C7E00555316 /* WidgetNoConnectionCell.xib */, ); path = "Shared Views"; sourceTree = ""; @@ -17748,7 +17740,6 @@ 5D69DBC4165428CA00A2D1F7 /* n.caf in Resources */, 17222D85261DDDF90047B163 /* celadon-icon-app-83.5x83.5@2x.png in Resources */, E1B912811BB00EFD003C25B9 /* People.storyboard in Resources */, - 98712D1C23DA1C7E00555316 /* WidgetNoConnectionCell.xib in Resources */, 9826AE8321B5C6A700C851FA /* LatestPostSummaryCell.xib in Resources */, 8BF281F927CE8E4100AF8CF3 /* DashboardGhostCardContent.xib in Resources */, 5D2FB2831AE98C4600F1D4ED /* RestorePostTableViewCell.xib in Resources */, @@ -18280,7 +18271,6 @@ F41E4EB828F225DB001880C6 /* stroke-dark-icon-app-60@3x.png in Resources */, F46597EA28E6698D00D5F49A /* spectrum-on-black-icon-app-76.png in Resources */, 98A047762821D069001B4E2D /* BloggingPromptsViewController.storyboard in Resources */, - FABB208A2602FC2C00C8785C /* WidgetNoConnectionCell.xib in Resources */, FABB208B2602FC2C00C8785C /* LatestPostSummaryCell.xib in Resources */, F41E4ECF28F23E00001880C6 /* green-on-white-icon-app-83.5@2x.png in Resources */, F46597C728E668B900D5F49A /* neumorphic-light-icon-app-76@2x.png in Resources */, @@ -19771,7 +19761,6 @@ 1750BD6D201144DB0050F13A /* MediaNoticeNavigationCoordinator.swift in Sources */, E66969E41B9E68B200EC9C00 /* ReaderPostToReaderPost37to38.swift in Sources */, FA6FAB3525EF7C5700666CED /* ReaderRelatedPostsSectionHeaderView.swift in Sources */, - 98712D1B23DA1C7E00555316 /* WidgetNoConnectionCell.swift in Sources */, CECEEB552823164800A28ADE /* MediaCacheSettingsViewController.swift in Sources */, 7E5887A020FE956100DB6F80 /* AppRatingUtilityType.swift in Sources */, 08216FD01CDBF96000304BA7 /* MenuItemSourceFooterView.m in Sources */, @@ -22397,7 +22386,6 @@ FABB21BC2602FC2C00C8785C /* MediaNoticeNavigationCoordinator.swift in Sources */, FABB21BD2602FC2C00C8785C /* ReaderPostToReaderPost37to38.swift in Sources */, FABB21BE2602FC2C00C8785C /* ReaderRelatedPostsSectionHeaderView.swift in Sources */, - FABB21BF2602FC2C00C8785C /* WidgetNoConnectionCell.swift in Sources */, 9804A098263780B500354097 /* LikeUserHelpers.swift in Sources */, FABB21C02602FC2C00C8785C /* AppRatingUtilityType.swift in Sources */, FABB21C12602FC2C00C8785C /* MenuItemSourceFooterView.m in Sources */, From d6392dbf9c9fdc9d1863bab45864460edcbab653 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Thu, 27 Oct 2022 15:15:38 +1100 Subject: [PATCH 18/19] Remove empty `Shared View` group for widgets --- WordPress/WordPress.xcodeproj/project.pbxproj | 8 -------- 1 file changed, 8 deletions(-) diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index 10cf8d0ff2c1..430b6b5c8c39 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -13288,13 +13288,6 @@ path = Data; sourceTree = ""; }; - 9890650C237CC1E700218CD2 /* Shared Views */ = { - isa = PBXGroup; - children = ( - ); - path = "Shared Views"; - sourceTree = ""; - }; 98A047702821BFB6001B4E2D /* Blogging Prompts */ = { isa = PBXGroup; children = ( @@ -13354,7 +13347,6 @@ isa = PBXGroup; children = ( 989064F9237CC1A300218CD2 /* Data */, - 9890650C237CC1E700218CD2 /* Shared Views */, 985ED0E323C6950600B8D06A /* WidgetStyles.swift */, ); path = "Today Widgets"; From 08f921a697b7521e470b320d2fbadcbd4dfd7f50 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Mon, 31 Oct 2022 12:46:47 +1100 Subject: [PATCH 19/19] Update `RELEASE-NOTES.txt` to mention new PR for dropping iOS 13 --- RELEASE-NOTES.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt index 266a4580c8a6..e688dd22b35e 100644 --- a/RELEASE-NOTES.txt +++ b/RELEASE-NOTES.txt @@ -4,7 +4,7 @@ * [*] [internal] Database access change: the 'new Core Data context structure' feature flag is turned on by default. [#19433] * [***] [Jetpack-only] Widgets are now on Jetpack. Find Today, This Week, and All Time Widgets to display your Stats on your home screen. [#19479] * [*] Block Editor: Fixed iOS Voice Control support within Image block captions. [https://github.com/WordPress/gutenberg/pull/44850] -* [***] Dropped support for iOS 13. Now supporting iOS 14.0 and above. [#19496] +* [***] Dropped support for iOS 13. Now supporting iOS 14.0 and above. [#19509] 21.0 -----