Skip to content

Commit ea208f1

Browse files
authored
Integrate WordPressKit via source code (#24771)
* Fix imports * Add a bridging header to the share extension targets Without this, Objective-C APIs that contains Swift types in WordPressKit will not be available to Swift code in the share extension targets. * Add a Swift compiler flag to all targets * Use WordPressComRestApi explicitly * fix imports * `RemoteLikeUser` properties are now Optional * Update WordPressKit * Remove unused getLikes stub * Fix a OCMock unit test * Remove a duplicated import * Remove a few unnecessary import statements
1 parent e2650fe commit ea208f1

121 files changed

Lines changed: 182 additions & 40 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Modules/Package.resolved

Lines changed: 12 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Modules/Package.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ let package = Package(
5050
.package(url: "https://github.com/wordpress-mobile/NSURL-IDN", revision: "b34794c9a3f32312e1593d4a3d120572afa0d010"),
5151
.package(
5252
url: "https://github.com/wordpress-mobile/WordPressKit-iOS",
53-
revision: "440d94e3a3d6f9f39035a371984e088a2fb42a32"
53+
branch: "rework-spm"
5454
),
5555
.package(url: "https://github.com/zendesk/support_sdk_ios", from: "8.0.3"),
5656
// We can't use wordpress-rs branches nor commits here. Only tags work.
@@ -273,6 +273,7 @@ enum XcodeSupport {
273273
.product(name: "ZIPFoundation", package: "ZIPFoundation"),
274274
.product(name: "Aztec", package: "AztecEditor-iOS"),
275275
.product(name: "WordPressEditor", package: "AztecEditor-iOS"),
276+
.product(name: "WordPressKit", package: "WordPressKit-iOS"),
276277
]
277278

278279
let testDependencies: [Target.Dependency] = [
@@ -392,6 +393,7 @@ enum XcodeSupport {
392393
.product(name: "CocoaLumberjack", package: "CocoaLumberjack"),
393394
.product(name: "CocoaLumberjackSwift", package: "CocoaLumberjack"),
394395
.product(name: "WordPressAPI", package: "wordpress-rs"),
396+
.product(name: "WordPressKit", package: "WordPressKit-iOS"),
395397
]),
396398
.xcodeTarget("XcodeTarget_Intents", dependencies: [
397399
"BuildSettingsKit",

Modules/Sources/JetpackStats/Services/StatsService.swift

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -266,8 +266,10 @@ actor StatsService: StatsServiceProtocol {
266266
excludeUserIDs: nil,
267267
success: { users, found in
268268
let likeUsers = users.map { remoteLike in
269-
PostLikesData.PostLikeUser(
270-
id: remoteLike.userID.intValue,
269+
wpAssert(remoteLike.userID != nil, "user id must not be nil")
270+
271+
return PostLikesData.PostLikeUser(
272+
id: remoteLike.userID?.intValue ?? 0,
271273
name: remoteLike.displayName ?? remoteLike.username ?? "",
272274
avatarURL: remoteLike.avatarURL.flatMap(URL.init)
273275
)

Sources/WordPressAuthenticator/Helpers/LoginFacade.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
#import <Foundation/Foundation.h>
22

3+
// This is a strange hack to make the `-[LoginFacadeDelegate needsMultifactorCodeForUserID:andNonceInfo:]`
4+
// available in Objective-C runtime.
5+
@import WordPressKit;
6+
37
NS_ASSUME_NONNULL_BEGIN
48

59
@class LoginFields;

Sources/WordPressData/Objective-C/Blog.m

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
@import WordPressShared;
88
@import NSObject_SafeExpectations;
99
@import NSURL_IDN;
10+
@import WordPressKit;
1011

1112
@class Comment;
1213

Sources/WordPressData/Objective-C/PostHelper.m

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
#import "WordPressData-Swift.h"
44

55
@import WordPressKit;
6+
@import WordPressKitModels;
67
@import WordPressShared;
78
@import NSObject_SafeExpectations;
89

Sources/WordPressData/Objective-C/ReaderPost.m

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
#import "WordPressData-Swift.h"
55

66
@import WordPressKit;
7+
@import WordPressKitModels;
78
@import WordPressShared;
89

910
// These keys are used in the getStoredComment method

Sources/WordPressData/Objective-C/include/Blog.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
#import <CommonCrypto/CommonDigest.h>
33
#import <CoreData/CoreData.h>
44

5+
@import WordPressKit;
6+
57
NS_ASSUME_NONNULL_BEGIN
68

79
@class AbstractPost;

Sources/WordPressData/Objective-C/include/PostServiceOptions.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#import <WordPressKit/WordPressKit.h>
1+
@import WordPressKitObjC;
22

33
/**
44
@class PostServiceSyncOptions

Sources/WordPressData/Objective-C/include/WPAccount.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
#import <Foundation/Foundation.h>
22
#import <CoreData/CoreData.h>
33

4+
@import WordPressKit;
5+
46
NS_ASSUME_NONNULL_BEGIN
57

68
@class Blog;

0 commit comments

Comments
 (0)