From af0af1d071bbd7f6e002da7b153ef190e55aee75 Mon Sep 17 00:00:00 2001 From: Tony Li Date: Mon, 12 Dec 2022 09:10:39 +1300 Subject: [PATCH 1/3] Re-implement a few model types in Swift --- WordPressKit.xcodeproj/project.pbxproj | 36 +++++++------------ WordPressKit/AccountServiceRemote.h | 2 +- WordPressKit/CommentServiceRemoteREST.m | 1 - WordPressKit/PostServiceRemoteREST.m | 1 - WordPressKit/ReaderPostServiceRemote.m | 1 - WordPressKit/RemoteReaderPost.m | 1 - WordPressKit/RemoteSourcePostAttribution.h | 17 --------- WordPressKit/RemoteSourcePostAttribution.m | 5 --- .../RemoteSourcePostAttribution.swift | 17 +++++++++ WordPressKit/RemoteTheme.h | 25 ------------- WordPressKit/RemoteTheme.m | 5 --- WordPressKit/RemoteTheme.swift | 25 +++++++++++++ WordPressKit/RemoteUser.h | 15 -------- WordPressKit/RemoteUser.m | 5 --- WordPressKit/RemoteUser.swift | 15 ++++++++ WordPressKit/ThemeServiceRemote.m | 2 -- WordPressKit/WordPressKit.h | 3 -- 17 files changed, 70 insertions(+), 106 deletions(-) delete mode 100644 WordPressKit/RemoteSourcePostAttribution.h delete mode 100644 WordPressKit/RemoteSourcePostAttribution.m create mode 100644 WordPressKit/RemoteSourcePostAttribution.swift delete mode 100644 WordPressKit/RemoteTheme.h delete mode 100644 WordPressKit/RemoteTheme.m create mode 100644 WordPressKit/RemoteTheme.swift delete mode 100644 WordPressKit/RemoteUser.h delete mode 100644 WordPressKit/RemoteUser.m create mode 100644 WordPressKit/RemoteUser.swift diff --git a/WordPressKit.xcodeproj/project.pbxproj b/WordPressKit.xcodeproj/project.pbxproj index 93fec4ce..dee767b7 100644 --- a/WordPressKit.xcodeproj/project.pbxproj +++ b/WordPressKit.xcodeproj/project.pbxproj @@ -132,6 +132,9 @@ 4A68E3D329406AA0004AC3DC /* RemoteMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A68E3D029406AA0004AC3DC /* RemoteMenu.swift */; }; 4A68E3D429406AA0004AC3DC /* RemoteMenuItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A68E3D129406AA0004AC3DC /* RemoteMenuItem.swift */; }; 4A68E3D529406AA0004AC3DC /* RemoteMenuLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A68E3D229406AA0004AC3DC /* RemoteMenuLocation.swift */; }; + 4A68E3D729406DA2004AC3DC /* RemoteUser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A68E3D629406DA2004AC3DC /* RemoteUser.swift */; }; + 4A68E3D929406E0D004AC3DC /* RemoteTheme.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A68E3D829406E0D004AC3DC /* RemoteTheme.swift */; }; + 4A68E3DB29406EA0004AC3DC /* RemoteSourcePostAttribution.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A68E3DA29406EA0004AC3DC /* RemoteSourcePostAttribution.swift */; }; 57BCD3D426209D9500292CB3 /* AppTransportSecuritySettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57BCD3D326209D9500292CB3 /* AppTransportSecuritySettings.swift */; }; 730E869F21E44EFD00753E1A /* WordPressComServiceRemote+SiteVerticals.swift in Sources */ = {isa = PBXBuildFile; fileRef = 730E869E21E44EFD00753E1A /* WordPressComServiceRemote+SiteVerticals.swift */; }; 731BA83621DECD61000FDFCD /* SiteCreationRequestEncodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 731BA83521DECD61000FDFCD /* SiteCreationRequestEncodingTests.swift */; }; @@ -206,8 +209,6 @@ 7430C9BC1F192C0F0051B8E6 /* ReaderSiteServiceRemoteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7430C9B91F192C0F0051B8E6 /* ReaderSiteServiceRemoteTests.swift */; }; 7430C9BD1F192C0F0051B8E6 /* ReaderPostServiceRemoteTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 7430C9BA1F192C0F0051B8E6 /* ReaderPostServiceRemoteTests.m */; }; 7430C9BE1F192C0F0051B8E6 /* ReaderTopicServiceRemoteTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 7430C9BB1F192C0F0051B8E6 /* ReaderTopicServiceRemoteTests.m */; }; - 7430C9CA1F192F260051B8E6 /* RemoteSourcePostAttribution.h in Headers */ = {isa = PBXBuildFile; fileRef = 7430C9C81F192F260051B8E6 /* RemoteSourcePostAttribution.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7430C9CB1F192F260051B8E6 /* RemoteSourcePostAttribution.m in Sources */ = {isa = PBXBuildFile; fileRef = 7430C9C91F192F260051B8E6 /* RemoteSourcePostAttribution.m */; }; 7430C9D71F1933210051B8E6 /* RemoteReaderCrossPostMeta.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7430C9D61F1933200051B8E6 /* RemoteReaderCrossPostMeta.swift */; }; 7433BC011EFC4505002D9E92 /* PlanServiceRemote.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7433BBFF1EFC4505002D9E92 /* PlanServiceRemote.swift */; }; 7433BC051EFC4556002D9E92 /* PlanServiceRemoteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7433BC031EFC4556002D9E92 /* PlanServiceRemoteTests.swift */; }; @@ -378,8 +379,6 @@ 930999561F16598A00F006A1 /* get-multiple-themes-v1.2.json in Resources */ = {isa = PBXBuildFile; fileRef = 930999531F16598A00F006A1 /* get-multiple-themes-v1.2.json */; }; 930999571F16598A00F006A1 /* get-purchased-themes-v1.1.json in Resources */ = {isa = PBXBuildFile; fileRef = 930999541F16598A00F006A1 /* get-purchased-themes-v1.1.json */; }; 930999581F16598A00F006A1 /* get-single-theme-v1.1.json in Resources */ = {isa = PBXBuildFile; fileRef = 930999551F16598A00F006A1 /* get-single-theme-v1.1.json */; }; - 9309995B1F16616A00F006A1 /* RemoteTheme.h in Headers */ = {isa = PBXBuildFile; fileRef = 930999591F16616A00F006A1 /* RemoteTheme.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9309995C1F16616A00F006A1 /* RemoteTheme.m in Sources */ = {isa = PBXBuildFile; fileRef = 9309995A1F16616A00F006A1 /* RemoteTheme.m */; }; 9311A6851F22625A00704AC9 /* RemoteTaxonomyPaging.h in Headers */ = {isa = PBXBuildFile; fileRef = 9311A67E1F22625A00704AC9 /* RemoteTaxonomyPaging.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9311A6861F22625A00704AC9 /* RemoteTaxonomyPaging.m in Sources */ = {isa = PBXBuildFile; fileRef = 9311A67F1F22625A00704AC9 /* RemoteTaxonomyPaging.m */; }; 9311A6871F22625A00704AC9 /* TaxonomyServiceRemote.h in Headers */ = {isa = PBXBuildFile; fileRef = 9311A6801F22625A00704AC9 /* TaxonomyServiceRemote.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -419,8 +418,6 @@ 93BD27641EE73442002BB00B /* me-sites-visibility-failure.json in Resources */ = {isa = PBXBuildFile; fileRef = 93BD27521EE73442002BB00B /* me-sites-visibility-failure.json */; }; 93BD27651EE73442002BB00B /* me-sites-visibility-success.json in Resources */ = {isa = PBXBuildFile; fileRef = 93BD27531EE73442002BB00B /* me-sites-visibility-success.json */; }; 93BD27661EE73442002BB00B /* me-success.json in Resources */ = {isa = PBXBuildFile; fileRef = 93BD27541EE73442002BB00B /* me-success.json */; }; - 93BD27691EE736A8002BB00B /* RemoteUser.h in Headers */ = {isa = PBXBuildFile; fileRef = 93BD27671EE736A8002BB00B /* RemoteUser.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 93BD276A1EE736A8002BB00B /* RemoteUser.m in Sources */ = {isa = PBXBuildFile; fileRef = 93BD27681EE736A8002BB00B /* RemoteUser.m */; }; 93BD276F1EE737A8002BB00B /* ServiceRemoteWordPressComREST.h in Headers */ = {isa = PBXBuildFile; fileRef = 93BD276B1EE737A8002BB00B /* ServiceRemoteWordPressComREST.h */; settings = {ATTRIBUTES = (Public, ); }; }; 93BD27701EE737A8002BB00B /* ServiceRemoteWordPressComREST.m in Sources */ = {isa = PBXBuildFile; fileRef = 93BD276C1EE737A8002BB00B /* ServiceRemoteWordPressComREST.m */; }; 93BD27711EE737A8002BB00B /* ServiceRemoteWordPressXMLRPC.h in Headers */ = {isa = PBXBuildFile; fileRef = 93BD276D1EE737A8002BB00B /* ServiceRemoteWordPressXMLRPC.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -786,6 +783,9 @@ 4A68E3D029406AA0004AC3DC /* RemoteMenu.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemoteMenu.swift; sourceTree = ""; }; 4A68E3D129406AA0004AC3DC /* RemoteMenuItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemoteMenuItem.swift; sourceTree = ""; }; 4A68E3D229406AA0004AC3DC /* RemoteMenuLocation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemoteMenuLocation.swift; sourceTree = ""; }; + 4A68E3D629406DA2004AC3DC /* RemoteUser.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemoteUser.swift; sourceTree = ""; }; + 4A68E3D829406E0D004AC3DC /* RemoteTheme.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemoteTheme.swift; sourceTree = ""; }; + 4A68E3DA29406EA0004AC3DC /* RemoteSourcePostAttribution.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemoteSourcePostAttribution.swift; sourceTree = ""; }; 57BCD3D326209D9500292CB3 /* AppTransportSecuritySettings.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppTransportSecuritySettings.swift; sourceTree = ""; }; 6C2A33D76FD1052D6F30466D /* Pods-WordPressKit.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressKit.debug.xcconfig"; path = "Pods/Target Support Files/Pods-WordPressKit/Pods-WordPressKit.debug.xcconfig"; sourceTree = ""; }; 6F2E0CC4FA01B5475A378DA2 /* Pods-WordPressKitTests.release-alpha.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressKitTests.release-alpha.xcconfig"; path = "Pods/Target Support Files/Pods-WordPressKitTests/Pods-WordPressKitTests.release-alpha.xcconfig"; sourceTree = ""; }; @@ -862,8 +862,6 @@ 7430C9B91F192C0F0051B8E6 /* ReaderSiteServiceRemoteTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ReaderSiteServiceRemoteTests.swift; sourceTree = ""; }; 7430C9BA1F192C0F0051B8E6 /* ReaderPostServiceRemoteTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ReaderPostServiceRemoteTests.m; sourceTree = ""; }; 7430C9BB1F192C0F0051B8E6 /* ReaderTopicServiceRemoteTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ReaderTopicServiceRemoteTests.m; sourceTree = ""; }; - 7430C9C81F192F260051B8E6 /* RemoteSourcePostAttribution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteSourcePostAttribution.h; sourceTree = ""; }; - 7430C9C91F192F260051B8E6 /* RemoteSourcePostAttribution.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RemoteSourcePostAttribution.m; sourceTree = ""; }; 7430C9D61F1933200051B8E6 /* RemoteReaderCrossPostMeta.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemoteReaderCrossPostMeta.swift; sourceTree = ""; }; 7433BBFF1EFC4505002D9E92 /* PlanServiceRemote.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PlanServiceRemote.swift; sourceTree = ""; }; 7433BC031EFC4556002D9E92 /* PlanServiceRemoteTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PlanServiceRemoteTests.swift; sourceTree = ""; }; @@ -1034,8 +1032,6 @@ 930999531F16598A00F006A1 /* get-multiple-themes-v1.2.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "get-multiple-themes-v1.2.json"; sourceTree = ""; }; 930999541F16598A00F006A1 /* get-purchased-themes-v1.1.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "get-purchased-themes-v1.1.json"; sourceTree = ""; }; 930999551F16598A00F006A1 /* get-single-theme-v1.1.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "get-single-theme-v1.1.json"; sourceTree = ""; }; - 930999591F16616A00F006A1 /* RemoteTheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteTheme.h; sourceTree = ""; }; - 9309995A1F16616A00F006A1 /* RemoteTheme.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RemoteTheme.m; sourceTree = ""; }; 9311A67E1F22625A00704AC9 /* RemoteTaxonomyPaging.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteTaxonomyPaging.h; sourceTree = ""; }; 9311A67F1F22625A00704AC9 /* RemoteTaxonomyPaging.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RemoteTaxonomyPaging.m; sourceTree = ""; }; 9311A6801F22625A00704AC9 /* TaxonomyServiceRemote.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TaxonomyServiceRemote.h; sourceTree = ""; }; @@ -1079,8 +1075,6 @@ 93BD27521EE73442002BB00B /* me-sites-visibility-failure.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "me-sites-visibility-failure.json"; sourceTree = ""; }; 93BD27531EE73442002BB00B /* me-sites-visibility-success.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "me-sites-visibility-success.json"; sourceTree = ""; }; 93BD27541EE73442002BB00B /* me-success.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "me-success.json"; sourceTree = ""; }; - 93BD27671EE736A8002BB00B /* RemoteUser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteUser.h; sourceTree = ""; }; - 93BD27681EE736A8002BB00B /* RemoteUser.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RemoteUser.m; sourceTree = ""; }; 93BD276B1EE737A8002BB00B /* ServiceRemoteWordPressComREST.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ServiceRemoteWordPressComREST.h; sourceTree = ""; }; 93BD276C1EE737A8002BB00B /* ServiceRemoteWordPressComREST.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ServiceRemoteWordPressComREST.m; sourceTree = ""; }; 93BD276D1EE737A8002BB00B /* ServiceRemoteWordPressXMLRPC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ServiceRemoteWordPressXMLRPC.h; sourceTree = ""; }; @@ -1959,14 +1953,11 @@ 9F3E0B9A208732B2009CB5BA /* RemoteReaderSiteInfoSubscription.swift */, 4A68E3DE29407100004AC3DC /* RemoteReaderTopic.swift */, 74E2295D1F1E777B0085F7F2 /* RemoteSharingButton.swift */, - 7430C9C81F192F260051B8E6 /* RemoteSourcePostAttribution.h */, - 7430C9C91F192F260051B8E6 /* RemoteSourcePostAttribution.m */, + 4A68E3DA29406EA0004AC3DC /* RemoteSourcePostAttribution.swift */, 9311A67E1F22625A00704AC9 /* RemoteTaxonomyPaging.h */, 9311A67F1F22625A00704AC9 /* RemoteTaxonomyPaging.m */, - 930999591F16616A00F006A1 /* RemoteTheme.h */, - 9309995A1F16616A00F006A1 /* RemoteTheme.m */, - 93BD27671EE736A8002BB00B /* RemoteUser.h */, - 93BD27681EE736A8002BB00B /* RemoteUser.m */, + 4A68E3D829406E0D004AC3DC /* RemoteTheme.swift */, + 4A68E3D629406DA2004AC3DC /* RemoteUser.swift */, 9856BE952630B5C200C12FEB /* RemoteUser+Likes.swift */, 436D563B2118E18D00CEAA33 /* WPState.swift */, E1D6B555200E46F200325669 /* WPTimeZone.swift */, @@ -2515,7 +2506,6 @@ 93BD276F1EE737A8002BB00B /* ServiceRemoteWordPressComREST.h in Headers */, 93BD277D1EE73944002BB00B /* NSDate+WordPressJSON.h in Headers */, 93BD273B1EE73282002BB00B /* AccountServiceRemote.h in Headers */, - 93BD27691EE736A8002BB00B /* RemoteUser.h in Headers */, 74B5F0DC1EF829B800B411E7 /* BlogServiceRemote.h in Headers */, 74B5F0D71EF8299B00B411E7 /* BlogServiceRemoteREST.h in Headers */, 74B5F0E61EF8699C00B411E7 /* RemotePostType.h in Headers */, @@ -2541,7 +2531,6 @@ C7971974267901D30072F984 /* JetpackPluginManagementClient.swift in Headers */, 74BA04F31F06DC0A00ED5CD8 /* CommentServiceRemoteREST.h in Headers */, C7971971267901D20072F984 /* PluginManagementClient.swift in Headers */, - 7430C9CA1F192F260051B8E6 /* RemoteSourcePostAttribution.h in Headers */, 9311A6851F22625A00704AC9 /* RemoteTaxonomyPaging.h in Headers */, 9311A68A1F22625A00704AC9 /* TaxonomyServiceRemoteXMLRPC.h in Headers */, 9311A6881F22625A00704AC9 /* TaxonomyServiceRemoteREST.h in Headers */, @@ -2552,7 +2541,6 @@ 740B23C41F17EE8000067A2A /* RemotePost.h in Headers */, 740B23C21F17EE8000067A2A /* RemotePostCategory.h in Headers */, B5A4822F20AC6C1A009D95F6 /* WPKitLogging.h in Headers */, - 9309995B1F16616A00F006A1 /* RemoteTheme.h in Headers */, 1A4F98672279A87D00D86E8E /* WPKit-Swift.h in Headers */, 93F50A371F226B9300B5BEBA /* WordPressComServiceRemote.h in Headers */, ); @@ -3026,6 +3014,7 @@ FF807252241FB90E00809AF5 /* Authenticator.swift in Sources */, 464BAB0B262F6736006AEED5 /* RemoteBlockEditorSettings.swift in Sources */, FEFFD99126C1347D00F34231 /* ShareAppContentServiceRemote.swift in Sources */, + 4A68E3D929406E0D004AC3DC /* RemoteTheme.swift in Sources */, 74585B8E1F0D51A100E7E667 /* DomainsServiceRemote.swift in Sources */, 4625B965253A343900C04AAD /* RemotePageLayouts.swift in Sources */, FEF7419B2808591C002C4203 /* BloggingPromptsServiceRemote.swift in Sources */, @@ -3042,7 +3031,6 @@ 9F3E0BA22087345F009CB5BA /* ServiceRequest.swift in Sources */, E1A6605F1FD694ED00BAC339 /* PluginDirectoryEntry.swift in Sources */, 9A2D0B28225E0119009E585F /* JetpackServiceRemote.swift in Sources */, - 7430C9CB1F192F260051B8E6 /* RemoteSourcePostAttribution.m in Sources */, 40819773221E10C900A298E4 /* StatsPublishedPostsTimeIntervalData.swift in Sources */, 4625B96C253A357500C04AAD /* PageLayoutServiceRemote.swift in Sources */, E6B0460925E5B4DD00DF6F4F /* RemoteInviteLink.swift in Sources */, @@ -3096,7 +3084,6 @@ 404057D6221C92660060250C /* StatsTopClicksTimeIntervalData.swift in Sources */, 9AF4F2FC218331DC00570E4B /* PostServiceRemoteREST+Revisions.swift in Sources */, E13EE1471F33258E00C15787 /* PluginServiceRemote.swift in Sources */, - 93BD276A1EE736A8002BB00B /* RemoteUser.m in Sources */, 742362D71F10250600BD0A7F /* MenusServiceRemote.m in Sources */, E6D0EE621F7EF9CE0064D3FC /* AccountServiceRemoteREST+SocialService.swift in Sources */, 8BB5F62127A99A2000B2FFAF /* DashboardServiceRemote.swift in Sources */, @@ -3169,6 +3156,7 @@ 17D936252475D8AB008B2205 /* RemoteHomepageType.swift in Sources */, 74BA04F41F06DC0A00ED5CD8 /* CommentServiceRemoteREST.m in Sources */, 74C473AC1EF2F75E009918F2 /* SiteManagementServiceRemote.swift in Sources */, + 4A68E3DB29406EA0004AC3DC /* RemoteSourcePostAttribution.swift in Sources */, 74585B971F0D54B400E7E667 /* RemoteDomain.swift in Sources */, 74A44DD01F13C64B006CD8F4 /* RemoteNotification.swift in Sources */, 8B52B901257AC5A200221663 /* Date+endOfDay.swift in Sources */, @@ -3205,6 +3193,7 @@ 404057C5221B30400060250C /* StatsSearchTermTimeIntervalData.swift in Sources */, 40247DFA2120D8E100AE1C3C /* AutomatedTransferService.swift in Sources */, 74E2295B1F1E77290085F7F2 /* KeyringConnection.swift in Sources */, + 4A68E3D729406DA2004AC3DC /* RemoteUser.swift in Sources */, 74B5F0DA1EF8299B00B411E7 /* BlogServiceRemoteXMLRPC.m in Sources */, E1EF5D5D1F9F329900B6D53E /* SitePluginCapabilities.swift in Sources */, 4A68E3CD29404181004AC3DC /* RemoteBlog.swift in Sources */, @@ -3225,7 +3214,6 @@ FAD1344B259094C300A8FEB1 /* JetpackBackup.swift in Sources */, 74E229491F1E73060085F7F2 /* SharingServiceRemote.swift in Sources */, FACBDD1E25ECA7F90026705B /* RemoteReaderSimplePost.swift in Sources */, - 9309995C1F16616A00F006A1 /* RemoteTheme.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/WordPressKit/AccountServiceRemote.h b/WordPressKit/AccountServiceRemote.h index b9c02d06..3b624e49 100644 --- a/WordPressKit/AccountServiceRemote.h +++ b/WordPressKit/AccountServiceRemote.h @@ -1,7 +1,7 @@ #import -#import @class WPAccount; +@class RemoteUser; static NSString * const AccountServiceRemoteErrorDomain = @"AccountServiceErrorDomain"; diff --git a/WordPressKit/CommentServiceRemoteREST.m b/WordPressKit/CommentServiceRemoteREST.m index 6a34e1ba..11e08010 100644 --- a/WordPressKit/CommentServiceRemoteREST.m +++ b/WordPressKit/CommentServiceRemoteREST.m @@ -1,7 +1,6 @@ #import "CommentServiceRemoteREST.h" #import "WPKit-Swift.h" #import "RemoteComment.h" -#import "RemoteUser.h" @import NSObject_SafeExpectations; @import WordPressShared; diff --git a/WordPressKit/PostServiceRemoteREST.m b/WordPressKit/PostServiceRemoteREST.m index 7deaca92..61a266f3 100644 --- a/WordPressKit/PostServiceRemoteREST.m +++ b/WordPressKit/PostServiceRemoteREST.m @@ -1,7 +1,6 @@ #import "PostServiceRemoteREST.h" #import "RemotePost.h" #import "RemotePostCategory.h" -#import "RemoteUser.h" #import "WPKit-Swift.h" @import WordPressShared; @import NSObject_SafeExpectations; diff --git a/WordPressKit/ReaderPostServiceRemote.m b/WordPressKit/ReaderPostServiceRemote.m index c03eaf13..044cf6a5 100644 --- a/WordPressKit/ReaderPostServiceRemote.m +++ b/WordPressKit/ReaderPostServiceRemote.m @@ -1,6 +1,5 @@ #import "ReaderPostServiceRemote.h" #import "RemoteReaderPost.h" -#import "RemoteSourcePostAttribution.h" #import "ReaderTopicServiceRemote.h" #import "WPKit-Swift.h" @import NSObject_SafeExpectations; diff --git a/WordPressKit/RemoteReaderPost.m b/WordPressKit/RemoteReaderPost.m index ee0032ed..f8f35ae8 100644 --- a/WordPressKit/RemoteReaderPost.m +++ b/WordPressKit/RemoteReaderPost.m @@ -1,5 +1,4 @@ #import "RemoteReaderPost.h" -#import "RemoteSourcePostAttribution.h" #import "WPKit-Swift.h" @import NSObject_SafeExpectations; diff --git a/WordPressKit/RemoteSourcePostAttribution.h b/WordPressKit/RemoteSourcePostAttribution.h deleted file mode 100644 index 52cea5a6..00000000 --- a/WordPressKit/RemoteSourcePostAttribution.h +++ /dev/null @@ -1,17 +0,0 @@ -#import - -@interface RemoteSourcePostAttribution : NSObject - -@property (nonatomic, strong) NSString *permalink; -@property (nonatomic, strong) NSString *authorName; -@property (nonatomic, strong) NSString *authorURL; -@property (nonatomic, strong) NSString *blogName; -@property (nonatomic, strong) NSString *blogURL; -@property (nonatomic, strong) NSString *avatarURL; -@property (nonatomic, strong) NSNumber *blogID; -@property (nonatomic, strong) NSNumber *postID; -@property (nonatomic, strong) NSNumber *likeCount; -@property (nonatomic, strong) NSNumber *commentCount; -@property (nonatomic, strong) NSArray *taxonomies; - -@end diff --git a/WordPressKit/RemoteSourcePostAttribution.m b/WordPressKit/RemoteSourcePostAttribution.m deleted file mode 100644 index 99f7d3f4..00000000 --- a/WordPressKit/RemoteSourcePostAttribution.m +++ /dev/null @@ -1,5 +0,0 @@ -#import "RemoteSourcePostAttribution.h" - -@implementation RemoteSourcePostAttribution - -@end diff --git a/WordPressKit/RemoteSourcePostAttribution.swift b/WordPressKit/RemoteSourcePostAttribution.swift new file mode 100644 index 00000000..6acd9d1a --- /dev/null +++ b/WordPressKit/RemoteSourcePostAttribution.swift @@ -0,0 +1,17 @@ +import Foundation + +@objcMembers public class RemoteSourcePostAttribution: NSObject { + + public var permalink: String? + public var authorName: String? + public var authorURL: String? + public var blogName: String? + public var blogURL: String? + public var avatarURL: String? + public var blogID: NSNumber? + public var postID: NSNumber? + public var likeCount: NSNumber? + public var commentCount: NSNumber? + public var taxonomies: NSArray? + +} diff --git a/WordPressKit/RemoteTheme.h b/WordPressKit/RemoteTheme.h deleted file mode 100644 index e39a9486..00000000 --- a/WordPressKit/RemoteTheme.h +++ /dev/null @@ -1,25 +0,0 @@ -#import - -@interface RemoteTheme : NSObject - -@property (nonatomic, assign) BOOL active; -@property (nonatomic, strong) NSString *author; -@property (nonatomic, strong) NSString *authorUrl; -@property (nonatomic, strong) NSString *desc; -@property (nonatomic, strong) NSString *demoUrl; -@property (nonatomic, strong) NSString *themeUrl; -@property (nonatomic, strong) NSString *downloadUrl; -@property (nonatomic, strong) NSDate *launchDate; -@property (nonatomic, strong) NSString *name; -@property (nonatomic, assign) NSInteger order; -@property (nonatomic, strong) NSNumber *popularityRank; -@property (nonatomic, strong) NSString *previewUrl; -@property (nonatomic, strong) NSString *price; -@property (nonatomic, strong) NSNumber *purchased; -@property (nonatomic, strong) NSString *screenshotUrl; -@property (nonatomic, strong) NSString *stylesheet; -@property (nonatomic, strong) NSString *themeId; -@property (nonatomic, strong) NSNumber *trendingRank; -@property (nonatomic, strong) NSString *version; - -@end diff --git a/WordPressKit/RemoteTheme.m b/WordPressKit/RemoteTheme.m deleted file mode 100644 index 5b6c2e83..00000000 --- a/WordPressKit/RemoteTheme.m +++ /dev/null @@ -1,5 +0,0 @@ -#import "RemoteTheme.h" - -@implementation RemoteTheme - -@end diff --git a/WordPressKit/RemoteTheme.swift b/WordPressKit/RemoteTheme.swift new file mode 100644 index 00000000..7d7fa98a --- /dev/null +++ b/WordPressKit/RemoteTheme.swift @@ -0,0 +1,25 @@ +import Foundation + +@objcMembers public class RemoteTheme: NSObject { + + public var active: Bool = false + public var author: String? + public var authorUrl: String? + public var desc: String? + public var demoUrl: String? + public var themeUrl: String? + public var downloadUrl: String? + public var launchDate: Date? + public var name: String? + public var order: NSInteger = 0 + public var popularityRank: NSNumber? + public var previewUrl: String? + public var price: String? + public var purchased: NSNumber? + public var screenshotUrl: String? + public var stylesheet: String? + public var themeId: String? + public var trendingRank: NSNumber? + public var version: String? + +} diff --git a/WordPressKit/RemoteUser.h b/WordPressKit/RemoteUser.h deleted file mode 100644 index 0145fa6c..00000000 --- a/WordPressKit/RemoteUser.h +++ /dev/null @@ -1,15 +0,0 @@ -#import - -@interface RemoteUser : NSObject - -@property (nonatomic, strong) NSNumber *userID; -@property (nonatomic, strong) NSString *username; -@property (nonatomic, strong) NSString *email; -@property (nonatomic, strong) NSString *displayName; -@property (nonatomic, strong) NSNumber *primaryBlogID; -@property (nonatomic, strong) NSString *avatarURL; -@property (nonatomic, strong) NSDate *dateCreated; -@property (nonatomic, assign) BOOL emailVerified; -@property (nonatomic, strong) NSNumber *linkedUserID; - -@end diff --git a/WordPressKit/RemoteUser.m b/WordPressKit/RemoteUser.m deleted file mode 100644 index 751d1e02..00000000 --- a/WordPressKit/RemoteUser.m +++ /dev/null @@ -1,5 +0,0 @@ -#import "RemoteUser.h" - -@implementation RemoteUser - -@end diff --git a/WordPressKit/RemoteUser.swift b/WordPressKit/RemoteUser.swift new file mode 100644 index 00000000..44965116 --- /dev/null +++ b/WordPressKit/RemoteUser.swift @@ -0,0 +1,15 @@ +import Foundation + +@objcMembers public class RemoteUser: NSObject { + + public var userID: NSNumber? + public var username: String? + public var email: String? + public var displayName: String? + public var primaryBlogID: NSNumber? + public var avatarURL: String? + public var dateCreated: Date? + public var emailVerified: Bool = false + public var linkedUserID: NSNumber? + +} diff --git a/WordPressKit/ThemeServiceRemote.m b/WordPressKit/ThemeServiceRemote.m index 6cd5f3d9..eb86616c 100644 --- a/WordPressKit/ThemeServiceRemote.m +++ b/WordPressKit/ThemeServiceRemote.m @@ -1,6 +1,4 @@ #import "ThemeServiceRemote.h" - -#import "RemoteTheme.h" #import "WPKit-Swift.h" @import NSObject_SafeExpectations; diff --git a/WordPressKit/WordPressKit.h b/WordPressKit/WordPressKit.h index 2fe628dd..dbfbc3cc 100644 --- a/WordPressKit/WordPressKit.h +++ b/WordPressKit/WordPressKit.h @@ -42,10 +42,7 @@ FOUNDATION_EXPORT const unsigned char WordPressKitVersionString[]; #import #import #import -#import #import -#import -#import #import #import From 4bee659bdc9f52255e4bda813e3aabd06d4fee72 Mon Sep 17 00:00:00 2001 From: Tony Li Date: Mon, 12 Dec 2022 09:10:49 +1300 Subject: [PATCH 2/3] Re-implement RemoteMedia and RemoteComment --- WordPressKit.xcodeproj/project.pbxproj | 24 ++++++------------ WordPressKit/CommentServiceRemote.h | 2 +- WordPressKit/CommentServiceRemoteREST.m | 1 - WordPressKit/CommentServiceRemoteXMLRPC.m | 1 - WordPressKit/MediaServiceRemoteREST.m | 1 - WordPressKit/MediaServiceRemoteXMLRPC.m | 1 - WordPressKit/PostServiceRemoteREST.h | 2 +- WordPressKit/RemoteComment.h | 23 ----------------- WordPressKit/RemoteComment.m | 5 ---- WordPressKit/RemoteComment.swift | 25 +++++++++++++++++++ WordPressKit/RemoteMedia.h | 28 --------------------- WordPressKit/RemoteMedia.m | 30 ----------------------- WordPressKit/RemoteMedia.swift | 28 +++++++++++++++++++++ WordPressKit/WordPressKit.h | 2 -- 14 files changed, 63 insertions(+), 110 deletions(-) delete mode 100644 WordPressKit/RemoteComment.h delete mode 100644 WordPressKit/RemoteComment.m create mode 100644 WordPressKit/RemoteComment.swift delete mode 100644 WordPressKit/RemoteMedia.h delete mode 100644 WordPressKit/RemoteMedia.m create mode 100644 WordPressKit/RemoteMedia.swift diff --git a/WordPressKit.xcodeproj/project.pbxproj b/WordPressKit.xcodeproj/project.pbxproj index dee767b7..388a8a8d 100644 --- a/WordPressKit.xcodeproj/project.pbxproj +++ b/WordPressKit.xcodeproj/project.pbxproj @@ -135,6 +135,8 @@ 4A68E3D729406DA2004AC3DC /* RemoteUser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A68E3D629406DA2004AC3DC /* RemoteUser.swift */; }; 4A68E3D929406E0D004AC3DC /* RemoteTheme.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A68E3D829406E0D004AC3DC /* RemoteTheme.swift */; }; 4A68E3DB29406EA0004AC3DC /* RemoteSourcePostAttribution.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A68E3DA29406EA0004AC3DC /* RemoteSourcePostAttribution.swift */; }; + 4A68E3F32942BDAC004AC3DC /* RemoteComment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A68E3F22942BDAC004AC3DC /* RemoteComment.swift */; }; + 4A68E3F52942BDB8004AC3DC /* RemoteMedia.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A68E3F42942BDB8004AC3DC /* RemoteMedia.swift */; }; 57BCD3D426209D9500292CB3 /* AppTransportSecuritySettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57BCD3D326209D9500292CB3 /* AppTransportSecuritySettings.swift */; }; 730E869F21E44EFD00753E1A /* WordPressComServiceRemote+SiteVerticals.swift in Sources */ = {isa = PBXBuildFile; fileRef = 730E869E21E44EFD00753E1A /* WordPressComServiceRemote+SiteVerticals.swift */; }; 731BA83621DECD61000FDFCD /* SiteCreationRequestEncodingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 731BA83521DECD61000FDFCD /* SiteCreationRequestEncodingTests.swift */; }; @@ -258,8 +260,6 @@ 74BA04F41F06DC0A00ED5CD8 /* CommentServiceRemoteREST.m in Sources */ = {isa = PBXBuildFile; fileRef = 74BA04EF1F06DC0A00ED5CD8 /* CommentServiceRemoteREST.m */; }; 74BA04F51F06DC0A00ED5CD8 /* CommentServiceRemoteXMLRPC.h in Headers */ = {isa = PBXBuildFile; fileRef = 74BA04F01F06DC0A00ED5CD8 /* CommentServiceRemoteXMLRPC.h */; settings = {ATTRIBUTES = (Public, ); }; }; 74BA04F61F06DC0A00ED5CD8 /* CommentServiceRemoteXMLRPC.m in Sources */ = {isa = PBXBuildFile; fileRef = 74BA04F11F06DC0A00ED5CD8 /* CommentServiceRemoteXMLRPC.m */; }; - 74BA04F91F06DC3900ED5CD8 /* RemoteComment.h in Headers */ = {isa = PBXBuildFile; fileRef = 74BA04F71F06DC3900ED5CD8 /* RemoteComment.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 74BA04FA1F06DC3900ED5CD8 /* RemoteComment.m in Sources */ = {isa = PBXBuildFile; fileRef = 74BA04F81F06DC3900ED5CD8 /* RemoteComment.m */; }; 74C473AC1EF2F75E009918F2 /* SiteManagementServiceRemote.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74C473AB1EF2F75E009918F2 /* SiteManagementServiceRemote.swift */; }; 74C473AF1EF2F7D1009918F2 /* SiteManagementServiceRemoteTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74C473AE1EF2F7D1009918F2 /* SiteManagementServiceRemoteTests.swift */; }; 74C473B11EF31A19009918F2 /* site-delete-success.json in Resources */ = {isa = PBXBuildFile; fileRef = 74C473B01EF31A19009918F2 /* site-delete-success.json */; }; @@ -308,8 +308,6 @@ 74DA56341F06EAF000FE9BF4 /* MediaServiceRemoteXMLRPC.h in Headers */ = {isa = PBXBuildFile; fileRef = 74DA56301F06EAF000FE9BF4 /* MediaServiceRemoteXMLRPC.h */; settings = {ATTRIBUTES = (Public, ); }; }; 74DA56351F06EAF000FE9BF4 /* MediaServiceRemoteXMLRPC.m in Sources */ = {isa = PBXBuildFile; fileRef = 74DA56311F06EAF000FE9BF4 /* MediaServiceRemoteXMLRPC.m */; }; 74DA56371F06EB0500FE9BF4 /* MediaServiceRemote.h in Headers */ = {isa = PBXBuildFile; fileRef = 74DA56361F06EB0500FE9BF4 /* MediaServiceRemote.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 74DA563A1F06EB3000FE9BF4 /* RemoteMedia.h in Headers */ = {isa = PBXBuildFile; fileRef = 74DA56381F06EB3000FE9BF4 /* RemoteMedia.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 74DA563B1F06EB3000FE9BF4 /* RemoteMedia.m in Sources */ = {isa = PBXBuildFile; fileRef = 74DA56391F06EB3000FE9BF4 /* RemoteMedia.m */; }; 74E229491F1E73060085F7F2 /* SharingServiceRemote.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74E229481F1E73060085F7F2 /* SharingServiceRemote.swift */; }; 74E2294B1F1E73340085F7F2 /* SharingServiceRemoteTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 74E2294A1F1E73340085F7F2 /* SharingServiceRemoteTests.m */; }; 74E2294E1F1E73FE0085F7F2 /* RemotePublicizeService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74E2294D1F1E73FE0085F7F2 /* RemotePublicizeService.swift */; }; @@ -786,6 +784,8 @@ 4A68E3D629406DA2004AC3DC /* RemoteUser.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemoteUser.swift; sourceTree = ""; }; 4A68E3D829406E0D004AC3DC /* RemoteTheme.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemoteTheme.swift; sourceTree = ""; }; 4A68E3DA29406EA0004AC3DC /* RemoteSourcePostAttribution.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemoteSourcePostAttribution.swift; sourceTree = ""; }; + 4A68E3F22942BDAC004AC3DC /* RemoteComment.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemoteComment.swift; sourceTree = ""; }; + 4A68E3F42942BDB8004AC3DC /* RemoteMedia.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemoteMedia.swift; sourceTree = ""; }; 57BCD3D326209D9500292CB3 /* AppTransportSecuritySettings.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppTransportSecuritySettings.swift; sourceTree = ""; }; 6C2A33D76FD1052D6F30466D /* Pods-WordPressKit.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressKit.debug.xcconfig"; path = "Pods/Target Support Files/Pods-WordPressKit/Pods-WordPressKit.debug.xcconfig"; sourceTree = ""; }; 6F2E0CC4FA01B5475A378DA2 /* Pods-WordPressKitTests.release-alpha.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WordPressKitTests.release-alpha.xcconfig"; path = "Pods/Target Support Files/Pods-WordPressKitTests/Pods-WordPressKitTests.release-alpha.xcconfig"; sourceTree = ""; }; @@ -910,8 +910,6 @@ 74BA04EF1F06DC0A00ED5CD8 /* CommentServiceRemoteREST.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CommentServiceRemoteREST.m; sourceTree = ""; }; 74BA04F01F06DC0A00ED5CD8 /* CommentServiceRemoteXMLRPC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CommentServiceRemoteXMLRPC.h; sourceTree = ""; }; 74BA04F11F06DC0A00ED5CD8 /* CommentServiceRemoteXMLRPC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CommentServiceRemoteXMLRPC.m; sourceTree = ""; }; - 74BA04F71F06DC3900ED5CD8 /* RemoteComment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteComment.h; sourceTree = ""; }; - 74BA04F81F06DC3900ED5CD8 /* RemoteComment.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RemoteComment.m; sourceTree = ""; }; 74C473AB1EF2F75E009918F2 /* SiteManagementServiceRemote.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SiteManagementServiceRemote.swift; sourceTree = ""; }; 74C473AE1EF2F7D1009918F2 /* SiteManagementServiceRemoteTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SiteManagementServiceRemoteTests.swift; sourceTree = ""; }; 74C473B01EF31A19009918F2 /* site-delete-success.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "site-delete-success.json"; sourceTree = ""; }; @@ -961,8 +959,6 @@ 74DA56301F06EAF000FE9BF4 /* MediaServiceRemoteXMLRPC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaServiceRemoteXMLRPC.h; sourceTree = ""; }; 74DA56311F06EAF000FE9BF4 /* MediaServiceRemoteXMLRPC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MediaServiceRemoteXMLRPC.m; sourceTree = ""; }; 74DA56361F06EB0500FE9BF4 /* MediaServiceRemote.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaServiceRemote.h; sourceTree = ""; }; - 74DA56381F06EB3000FE9BF4 /* RemoteMedia.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteMedia.h; sourceTree = ""; }; - 74DA56391F06EB3000FE9BF4 /* RemoteMedia.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RemoteMedia.m; sourceTree = ""; }; 74E229481F1E73060085F7F2 /* SharingServiceRemote.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SharingServiceRemote.swift; sourceTree = ""; }; 74E2294A1F1E73340085F7F2 /* SharingServiceRemoteTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SharingServiceRemoteTests.m; sourceTree = ""; }; 74E2294D1F1E73FE0085F7F2 /* RemotePublicizeService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RemotePublicizeService.swift; sourceTree = ""; }; @@ -1915,13 +1911,11 @@ 4A68E3CE29404289004AC3DC /* RemoteBlogOptionsHelper.swift */, 74585B961F0D54B400E7E667 /* RemoteDomain.swift */, 93C674ED1EE834B700BFAF05 /* RemoteBlogSettings.swift */, - 74BA04F71F06DC3900ED5CD8 /* RemoteComment.h */, - 74BA04F81F06DC3900ED5CD8 /* RemoteComment.m */, + 4A68E3F22942BDAC004AC3DC /* RemoteComment.swift */, 74650F731F0EA1E200188EDB /* RemoteGravatarProfile.swift */, 17D936242475D8AB008B2205 /* RemoteHomepageType.swift */, E6B0460825E5B4DD00DF6F4F /* RemoteInviteLink.swift */, - 74DA56381F06EB3000FE9BF4 /* RemoteMedia.h */, - 74DA56391F06EB3000FE9BF4 /* RemoteMedia.m */, + 4A68E3F42942BDB8004AC3DC /* RemoteMedia.swift */, 4A68E3D029406AA0004AC3DC /* RemoteMenu.swift */, 4A68E3D129406AA0004AC3DC /* RemoteMenuItem.swift */, 4A68E3D229406AA0004AC3DC /* RemoteMenuLocation.swift */, @@ -2514,8 +2508,6 @@ 74DA56341F06EAF000FE9BF4 /* MediaServiceRemoteXMLRPC.h in Headers */, 74DA56371F06EB0500FE9BF4 /* MediaServiceRemote.h in Headers */, 74DA56321F06EAF000FE9BF4 /* MediaServiceRemoteREST.h in Headers */, - 74DA563A1F06EB3000FE9BF4 /* RemoteMedia.h in Headers */, - 74BA04F91F06DC3900ED5CD8 /* RemoteComment.h in Headers */, 74BA04F21F06DC0A00ED5CD8 /* CommentServiceRemote.h in Headers */, 74BA04F51F06DC0A00ED5CD8 /* CommentServiceRemoteXMLRPC.h in Headers */, 7430C9A71F1927180051B8E6 /* ReaderTopicServiceRemote.h in Headers */, @@ -3097,7 +3089,7 @@ 40E7FEA9220FA4060032834E /* StatsEmailFollowersInsight.swift in Sources */, 404057DA221C9D560060250C /* StatsTopReferrersTimeIntervalData.swift in Sources */, 826016F11F9FA13A00533B6C /* ActivityServiceRemote.swift in Sources */, - 74BA04FA1F06DC3900ED5CD8 /* RemoteComment.m in Sources */, + 4A68E3F52942BDB8004AC3DC /* RemoteMedia.swift in Sources */, 7E3E7A4C20E443AA0075D159 /* NSMutableParagraphStyle+extensions.swift in Sources */, 40F98809221AC88700B7B369 /* StatsPostingStreakInsight.swift in Sources */, 465F889E263B0C5500F4C950 /* BlockEditorSettingsServiceRemote.swift in Sources */, @@ -3183,7 +3175,6 @@ FEF7419D28085D89002C4203 /* RemoteBloggingPrompt.swift in Sources */, 74DA56331F06EAF000FE9BF4 /* MediaServiceRemoteREST.m in Sources */, 17CD0CC320C58A0D000D9620 /* ReaderSiteSearchServiceRemote.swift in Sources */, - 74DA563B1F06EB3000FE9BF4 /* RemoteMedia.m in Sources */, 9311A6861F22625A00704AC9 /* RemoteTaxonomyPaging.m in Sources */, 93BD27821EE73944002BB00B /* WordPressOrgXMLRPCValidator.swift in Sources */, F9E56DF824EB125600916770 /* FeatureFlagRemote.swift in Sources */, @@ -3195,6 +3186,7 @@ 74E2295B1F1E77290085F7F2 /* KeyringConnection.swift in Sources */, 4A68E3D729406DA2004AC3DC /* RemoteUser.swift in Sources */, 74B5F0DA1EF8299B00B411E7 /* BlogServiceRemoteXMLRPC.m in Sources */, + 4A68E3F32942BDAC004AC3DC /* RemoteComment.swift in Sources */, E1EF5D5D1F9F329900B6D53E /* SitePluginCapabilities.swift in Sources */, 4A68E3CD29404181004AC3DC /* RemoteBlog.swift in Sources */, 7E3E7A4520E443060075D159 /* NSAttributedString+extensions.swift in Sources */, diff --git a/WordPressKit/CommentServiceRemote.h b/WordPressKit/CommentServiceRemote.h index 1621c57a..e2957763 100644 --- a/WordPressKit/CommentServiceRemote.h +++ b/WordPressKit/CommentServiceRemote.h @@ -1,6 +1,6 @@ #import -#import +@class RemoteComment; // Used to determine which 'status' parameter to use when fetching Comments. typedef enum { diff --git a/WordPressKit/CommentServiceRemoteREST.m b/WordPressKit/CommentServiceRemoteREST.m index 11e08010..32a56edc 100644 --- a/WordPressKit/CommentServiceRemoteREST.m +++ b/WordPressKit/CommentServiceRemoteREST.m @@ -1,6 +1,5 @@ #import "CommentServiceRemoteREST.h" #import "WPKit-Swift.h" -#import "RemoteComment.h" @import NSObject_SafeExpectations; @import WordPressShared; diff --git a/WordPressKit/CommentServiceRemoteXMLRPC.m b/WordPressKit/CommentServiceRemoteXMLRPC.m index dfe05b5c..d16db92c 100644 --- a/WordPressKit/CommentServiceRemoteXMLRPC.m +++ b/WordPressKit/CommentServiceRemoteXMLRPC.m @@ -1,6 +1,5 @@ #import "CommentServiceRemoteXMLRPC.h" #import "WPKit-Swift.h" -#import "RemoteComment.h" @import wpxmlrpc; @import WordPressShared; diff --git a/WordPressKit/MediaServiceRemoteREST.m b/WordPressKit/MediaServiceRemoteREST.m index c5e6f50e..ad07f237 100644 --- a/WordPressKit/MediaServiceRemoteREST.m +++ b/WordPressKit/MediaServiceRemoteREST.m @@ -1,5 +1,4 @@ #import "MediaServiceRemoteREST.h" -#import "RemoteMedia.h" #import "WPKit-Swift.h" @import WordPressShared; @import NSObject_SafeExpectations; diff --git a/WordPressKit/MediaServiceRemoteXMLRPC.m b/WordPressKit/MediaServiceRemoteXMLRPC.m index 7558ba81..25a79e01 100644 --- a/WordPressKit/MediaServiceRemoteXMLRPC.m +++ b/WordPressKit/MediaServiceRemoteXMLRPC.m @@ -1,5 +1,4 @@ #import "MediaServiceRemoteXMLRPC.h" -#import "RemoteMedia.h" #import "WPKit-Swift.h" @import WordPressShared; diff --git a/WordPressKit/PostServiceRemoteREST.h b/WordPressKit/PostServiceRemoteREST.h index 7a987236..bdd243c3 100644 --- a/WordPressKit/PostServiceRemoteREST.h +++ b/WordPressKit/PostServiceRemoteREST.h @@ -1,10 +1,10 @@ #import #import #import -#import @class RemoteUser; @class RemoteLikeUser; +@class RemoteMedia; @interface PostServiceRemoteREST : SiteServiceRemoteWordPressComREST diff --git a/WordPressKit/RemoteComment.h b/WordPressKit/RemoteComment.h deleted file mode 100644 index 82c1917c..00000000 --- a/WordPressKit/RemoteComment.h +++ /dev/null @@ -1,23 +0,0 @@ -#import - -@interface RemoteComment : NSObject -@property (nonatomic, strong) NSNumber *commentID; -@property (nonatomic, strong) NSNumber *authorID; -@property (nonatomic, strong) NSString *author; -@property (nonatomic, strong) NSString *authorEmail; -@property (nonatomic, strong) NSString *authorUrl; -@property (nonatomic, strong) NSString *authorAvatarURL; -@property (nonatomic, strong) NSString *authorIP; -@property (nonatomic, strong) NSString *content; -@property (nonatomic, strong) NSString *rawContent; -@property (nonatomic, strong) NSDate *date; -@property (nonatomic, strong) NSString *link; -@property (nonatomic, strong) NSNumber *parentID; -@property (nonatomic, strong) NSNumber *postID; -@property (nonatomic, strong) NSString *postTitle; -@property (nonatomic, strong) NSString *status; -@property (nonatomic, strong) NSString *type; -@property (nonatomic) BOOL isLiked; -@property (nonatomic, strong) NSNumber *likeCount; -@property (nonatomic) BOOL canModerate; -@end diff --git a/WordPressKit/RemoteComment.m b/WordPressKit/RemoteComment.m deleted file mode 100644 index 7620e8ae..00000000 --- a/WordPressKit/RemoteComment.m +++ /dev/null @@ -1,5 +0,0 @@ -#import "RemoteComment.h" - -@implementation RemoteComment - -@end diff --git a/WordPressKit/RemoteComment.swift b/WordPressKit/RemoteComment.swift new file mode 100644 index 00000000..210d71c4 --- /dev/null +++ b/WordPressKit/RemoteComment.swift @@ -0,0 +1,25 @@ +import Foundation + +@objcMembers public class RemoteComment: NSObject { + + public var commentID: NSNumber? + public var authorID: NSNumber? + public var author: String? + public var authorEmail: String? + public var authorUrl: String? + public var authorAvatarURL: String? + public var authorIP: String? + public var content: String? + public var rawContent: String? + public var date: Date? + public var link: String? + public var parentID: NSNumber? + public var postID: NSNumber? + public var postTitle: String? + public var status: String? + public var type: String? + public var isLiked: Bool = false + public var likeCount: NSNumber? + public var canModerate: Bool = false + +} diff --git a/WordPressKit/RemoteMedia.h b/WordPressKit/RemoteMedia.h deleted file mode 100644 index a5f02f31..00000000 --- a/WordPressKit/RemoteMedia.h +++ /dev/null @@ -1,28 +0,0 @@ -#import - -@interface RemoteMedia : NSObject - -@property (nonatomic, strong, nullable) NSNumber *mediaID; -@property (nonatomic, strong, nullable) NSURL *url; -@property (nonatomic, strong, nullable) NSURL *localURL; -@property (nonatomic, strong, nullable) NSURL *largeURL; -@property (nonatomic, strong, nullable) NSURL *mediumURL; -@property (nonatomic, strong, nullable) NSURL *guid; -@property (nonatomic, strong, nullable) NSDate *date; -@property (nonatomic, strong, nullable) NSNumber *postID; -@property (nonatomic, strong, nullable) NSString *file; -@property (nonatomic, strong, nullable) NSString *mimeType; -@property (nonatomic, strong, nullable) NSString *extension; -@property (nonatomic, strong, nullable) NSString *title; -@property (nonatomic, strong, nullable) NSString *caption; -@property (nonatomic, strong, nullable) NSString *descriptionText; -@property (nonatomic, strong, nullable) NSString *alt; -@property (nonatomic, strong, nullable) NSNumber *height; -@property (nonatomic, strong, nullable) NSNumber *width; -@property (nonatomic, strong, nullable) NSString *shortcode; -@property (nonatomic, strong, nullable) NSDictionary *exif; -@property (nonatomic, strong, nullable) NSString *videopressGUID; -@property (nonatomic, strong, nullable) NSNumber *length; -@property (nonatomic, strong, nullable) NSString *remoteThumbnailURL; - -@end diff --git a/WordPressKit/RemoteMedia.m b/WordPressKit/RemoteMedia.m deleted file mode 100644 index 006bc324..00000000 --- a/WordPressKit/RemoteMedia.m +++ /dev/null @@ -1,30 +0,0 @@ -#import "RemoteMedia.h" -#import - -@implementation RemoteMedia - -- (NSString *)debugDescription { - NSDictionary *properties = [self debugProperties]; - return [NSString stringWithFormat:@"<%@: %p> (%@)", NSStringFromClass([self class]), self, properties]; -} - -- (NSDictionary *)debugProperties { - unsigned int propertyCount; - objc_property_t *properties = class_copyPropertyList([RemoteMedia class], &propertyCount); - NSMutableDictionary *debugProperties = [NSMutableDictionary dictionaryWithCapacity:propertyCount]; - for (int i = 0; i < propertyCount; i++) - { - // Add property name to array - objc_property_t property = properties[i]; - const char *propertyName = property_getName(property); - id value = [self valueForKey:@(propertyName)]; - if (value == nil) { - value = [NSNull null]; - } - [debugProperties setObject:value forKey:@(propertyName)]; - } - free(properties); - return [NSDictionary dictionaryWithDictionary:debugProperties]; -} - -@end \ No newline at end of file diff --git a/WordPressKit/RemoteMedia.swift b/WordPressKit/RemoteMedia.swift new file mode 100644 index 00000000..aa9a2d29 --- /dev/null +++ b/WordPressKit/RemoteMedia.swift @@ -0,0 +1,28 @@ +import Foundation + +@objcMembers public class RemoteMedia: NSObject { + + public var mediaID: NSNumber? + public var url: URL? + public var localURL: URL? + public var largeURL: URL? + public var mediumURL: URL? + public var guid: URL? + public var date: Date? + public var postID: NSNumber? + public var file: String? + public var mimeType: String? + public var `extension`: String? + public var title: String? + public var caption: String? + public var descriptionText: String? + public var alt: String? + public var height: NSNumber? + public var width: NSNumber? + public var shortcode: String? + public var exif: NSDictionary? + public var videopressGUID: String? + public var length: NSNumber? + public var remoteThumbnailURL: String? + +} diff --git a/WordPressKit/WordPressKit.h b/WordPressKit/WordPressKit.h index dbfbc3cc..df4a4106 100644 --- a/WordPressKit/WordPressKit.h +++ b/WordPressKit/WordPressKit.h @@ -35,8 +35,6 @@ FOUNDATION_EXPORT const unsigned char WordPressKitVersionString[]; #import #import -#import -#import #import #import #import From d2d11251072ac48a8df2c5fe09a05b54b5a8980b Mon Sep 17 00:00:00 2001 From: Tony Li Date: Thu, 15 Dec 2022 09:51:14 +1300 Subject: [PATCH 3/3] Declare as `[String]` instead of `NSArray` --- WordPressKit/RemoteSourcePostAttribution.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WordPressKit/RemoteSourcePostAttribution.swift b/WordPressKit/RemoteSourcePostAttribution.swift index 6acd9d1a..bfcfd4c3 100644 --- a/WordPressKit/RemoteSourcePostAttribution.swift +++ b/WordPressKit/RemoteSourcePostAttribution.swift @@ -12,6 +12,6 @@ import Foundation public var postID: NSNumber? public var likeCount: NSNumber? public var commentCount: NSNumber? - public var taxonomies: NSArray? + public var taxonomies: [String]? }