Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 12 additions & 2 deletions Modules/Package.resolved

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 3 additions & 1 deletion Modules/Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ let package = Package(
.package(url: "https://github.com/wordpress-mobile/NSURL-IDN", revision: "b34794c9a3f32312e1593d4a3d120572afa0d010"),
.package(
url: "https://github.com/wordpress-mobile/WordPressKit-iOS",
revision: "440d94e3a3d6f9f39035a371984e088a2fb42a32"
branch: "rework-spm"
),
.package(url: "https://github.com/zendesk/support_sdk_ios", from: "8.0.3"),
// We can't use wordpress-rs branches nor commits here. Only tags work.
Expand Down Expand Up @@ -273,6 +273,7 @@ enum XcodeSupport {
.product(name: "ZIPFoundation", package: "ZIPFoundation"),
.product(name: "Aztec", package: "AztecEditor-iOS"),
.product(name: "WordPressEditor", package: "AztecEditor-iOS"),
.product(name: "WordPressKit", package: "WordPressKit-iOS"),
]

let testDependencies: [Target.Dependency] = [
Expand Down Expand Up @@ -392,6 +393,7 @@ enum XcodeSupport {
.product(name: "CocoaLumberjack", package: "CocoaLumberjack"),
.product(name: "CocoaLumberjackSwift", package: "CocoaLumberjack"),
.product(name: "WordPressAPI", package: "wordpress-rs"),
.product(name: "WordPressKit", package: "WordPressKit-iOS"),
]),
.xcodeTarget("XcodeTarget_Intents", dependencies: [
"BuildSettingsKit",
Expand Down
6 changes: 4 additions & 2 deletions Modules/Sources/JetpackStats/Services/StatsService.swift
Original file line number Diff line number Diff line change
Expand Up @@ -266,8 +266,10 @@ actor StatsService: StatsServiceProtocol {
excludeUserIDs: nil,
success: { users, found in
let likeUsers = users.map { remoteLike in
PostLikesData.PostLikeUser(
id: remoteLike.userID.intValue,
wpAssert(remoteLike.userID != nil, "user id must not be nil")

return PostLikesData.PostLikeUser(
id: remoteLike.userID?.intValue ?? 0,
name: remoteLike.displayName ?? remoteLike.username ?? "",
avatarURL: remoteLike.avatarURL.flatMap(URL.init)
)
Expand Down
4 changes: 4 additions & 0 deletions Sources/WordPressAuthenticator/Helpers/LoginFacade.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
#import <Foundation/Foundation.h>

// This is a strange hack to make the `-[LoginFacadeDelegate needsMultifactorCodeForUserID:andNonceInfo:]`
// available in Objective-C runtime.
@import WordPressKit;

NS_ASSUME_NONNULL_BEGIN

@class LoginFields;
Expand Down
1 change: 1 addition & 0 deletions Sources/WordPressData/Objective-C/Blog.m
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
@import WordPressShared;
@import NSObject_SafeExpectations;
@import NSURL_IDN;
@import WordPressKit;

@class Comment;

Expand Down
1 change: 1 addition & 0 deletions Sources/WordPressData/Objective-C/PostHelper.m
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#import "WordPressData-Swift.h"

@import WordPressKit;
@import WordPressKitModels;
@import WordPressShared;
@import NSObject_SafeExpectations;

Expand Down
1 change: 1 addition & 0 deletions Sources/WordPressData/Objective-C/ReaderPost.m
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
#import "WordPressData-Swift.h"

@import WordPressKit;
@import WordPressKitModels;
@import WordPressShared;

// These keys are used in the getStoredComment method
Expand Down
2 changes: 2 additions & 0 deletions Sources/WordPressData/Objective-C/include/Blog.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
#import <CommonCrypto/CommonDigest.h>
#import <CoreData/CoreData.h>

@import WordPressKit;

NS_ASSUME_NONNULL_BEGIN

@class AbstractPost;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#import <WordPressKit/WordPressKit.h>
@import WordPressKitObjC;

/**
@class PostServiceSyncOptions
Expand Down
2 changes: 2 additions & 0 deletions Sources/WordPressData/Objective-C/include/WPAccount.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>

@import WordPressKit;

NS_ASSUME_NONNULL_BEGIN

@class Blog;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import Foundation
import CoreData
import WordPressKit

public class BloggingPrompt: NSManagedObject {

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import CoreData
import WordPressKit

extension PageTemplateCategory {

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import CoreData
import WordPressKit

extension PageTemplateLayout {

Expand Down
1 change: 1 addition & 0 deletions Sources/WordPressData/Swift/PostHelper+Metadata.swift
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import WordPressShared
import WordPressKit

public extension PostHelper {
@objc static let foreignIDKey = "wp_jp_foreign_id"
Expand Down
1 change: 1 addition & 0 deletions Sources/WordPressData/Swift/ReaderCard+CoreDataClass.swift
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import CoreData
import WordPressKit

public class ReaderCard: NSManagedObject {
public enum CardType {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import CoreData
import WordPressKit

@objc(ReaderSiteInfoSubscriptionPost)
public class ReaderSiteInfoSubscriptionPost: NSManagedObject {
Expand Down
1 change: 1 addition & 0 deletions Sources/WordPressData/Swift/ReaderSiteTopic.swift
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import Foundation
import WordPressKit

@objc(ReaderSiteTopic)
open class ReaderSiteTopic: ReaderAbstractTopic {
Expand Down
1 change: 1 addition & 0 deletions Sources/WordPressData/Swift/ReaderTagTopic.swift
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import WordPressShared
import WordPressKit

@objc(ReaderTagTopic)
open class ReaderTagTopic: ReaderAbstractTopic {
Expand Down
1 change: 1 addition & 0 deletions Sources/WordPressData/Swift/RemotePost+Metadata.swift
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import WordPressShared
import WordPressKit

@objc
public extension RemotePost {
Expand Down
1 change: 1 addition & 0 deletions Sources/WordPressData/Swift/Role.swift
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import CoreData
import WordPressKit

public class Role: NSManagedObject {
@NSManaged public var name: String!
Expand Down
18 changes: 0 additions & 18 deletions Tests/KeystoneTests/Tests/Services/PostRepositoryTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -270,11 +270,6 @@ private class PostServiceRESTMock: PostServiceRemoteREST {

var autoSaveStubbedBehavior = StubbedBehavior.success(nil)

// related to fetching likes
var fetchLikesShouldSucceed: Bool = true
var remoteUsersToReturnOnGetLikes = [RemoteLikeUser]()
var totalLikes: NSNumber = 1

var deletePostResult: Result<Void, Error> = .success(())
var trashPostResult: Result<RemotePost, Error> = .failure(NSError.testInstance())
var restorePostResult: Result<RemotePost, Error> = .failure(NSError.testInstance())
Expand Down Expand Up @@ -325,19 +320,6 @@ private class PostServiceRESTMock: PostServiceRemoteREST {
}
}

override func getLikesForPostID(_ postID: NSNumber,
count: NSNumber,
before: String?,
excludeUserIDs: [NSNumber]?,
success: (([RemoteLikeUser], NSNumber) -> Void)!,
failure: ((Error?) -> Void)!) {
if self.fetchLikesShouldSucceed {
success(self.remoteUsersToReturnOnGetLikes, self.totalLikes)
} else {
failure(nil)
}
}

override func delete(_ post: RemotePost!, success: (() -> Void)!, failure: ((Error?) -> Void)!) {
switch deletePostResult {
case let .failure(error):
Expand Down
1 change: 1 addition & 0 deletions WordPress/Classes/Categories/Media+Extensions.m
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
#import "MediaService.h"
@import WordPressData;
@import WordPressShared;
@import WordPressKitModels;
#import "WordPress-Swift.h"
@implementation Media (Extensions)

Expand Down
3 changes: 2 additions & 1 deletion WordPress/Classes/Login/WordPressDotComAuthenticator.swift
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import UIKit
import SVProgressHUD
import WordPressData
import WordPressShared
import WordPressKit
import BuildSettingsKit
@preconcurrency import Combine

Expand Down Expand Up @@ -138,7 +139,7 @@ struct WordPressDotComAuthenticator {
// Fetch WP.com account details
let user: RemoteUser
do {
let service = AccountServiceRemoteREST(wordPressComRestApi: .defaultApi(oAuthToken: token, userAgent: WPUserAgent.wordPress()))
let service = AccountServiceRemoteREST(wordPressComRestApi: WordPressComRestApi.defaultApi(oAuthToken: token, userAgent: WPUserAgent.wordPress()))
user = try await withCheckedThrowingContinuation { continuation in
service.getAccountDetails(success: { continuation.resume(returning: $0!) }, failure: { continuation.resume(throwing: $0!) })
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import FormattableContentKit
import WordPressData
import WordPressKit

extension WordPressData.Notification {

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import WordPressData
import WordPressKit

extension PublicizeConnection {

Expand Down
1 change: 1 addition & 0 deletions WordPress/Classes/Models/WPAccount+AccountSettings.swift
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import Foundation
import BuildSettingsKit
import WordPressData
import WordPressKit

extension WPAccount {
enum VerificationStatus: String {
Expand Down
2 changes: 2 additions & 0 deletions WordPress/Classes/Services/AccountService.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>

@import WordPressKitModels;

NS_ASSUME_NONNULL_BEGIN

@class WPAccount;
Expand Down
1 change: 1 addition & 0 deletions WordPress/Classes/Services/AccountService.m
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@

@import WordPressData;
@import WordPressKit;
@import WordPressKitModels;
@import WordPressShared;

#import "WordPress-Swift.h"
Expand Down
10 changes: 8 additions & 2 deletions WordPress/Classes/Services/BlogService+Swift.swift
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import WordPressData
import WordPressShared

extension BlogService {
@objc public func unscheduleBloggingReminders(for blog: Blog) {
Expand Down Expand Up @@ -44,8 +45,13 @@ extension BlogService {
}

remoteUsers.forEach {
let blogAuthor = findBlogAuthor(with: $0.userID, and: blog, in: context)
blogAuthor.userID = $0.userID
guard let userID = $0.userID else {
wpAssertionFailure("user id must not be nil")
return
}

let blogAuthor = findBlogAuthor(with: userID, and: blog, in: context)
blogAuthor.userID = userID
blogAuthor.username = $0.username
blogAuthor.email = $0.email
blogAuthor.displayName = $0.displayName
Expand Down
1 change: 1 addition & 0 deletions WordPress/Classes/Services/BlogService.m
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
#import "WordPress-Swift.h"
@import WordPressData;
@import WordPressKit;
@import WordPressKitModels;
@import WordPressShared;

@class Comment;
Expand Down
5 changes: 4 additions & 1 deletion WordPress/Classes/Services/CommentService.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#import <Foundation/Foundation.h>
#import <WordPressKit/WordPressKit.h>

@import WordPressKitObjC;

NS_ASSUME_NONNULL_BEGIN

Expand All @@ -10,7 +11,9 @@ extern NSUInteger const WPTopLevelHierarchicalCommentsPerPage;
@class ReaderPost;
@class BasePost;
@class RemoteUser;
@class RemoteComment;
@class CommentServiceRemoteFactory;
@class CommentServiceRemoteREST;
@protocol CoreDataStack;

@interface CommentService : NSObject
Expand Down
2 changes: 2 additions & 0 deletions WordPress/Classes/Services/CommentService.m
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
#import "AccountService.h"
#import "WordPress-Swift.h"
@import WordPressData;
@import WordPressKit;
@import WordPressKitModels;

@import WordPressShared;

Expand Down
1 change: 1 addition & 0 deletions WordPress/Classes/Services/JetpackBackupService.swift
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import WordPressData
import WordPressKit

class JetpackBackupService {

Expand Down
1 change: 1 addition & 0 deletions WordPress/Classes/Services/JetpackRestoreService.swift
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import WordPressData
import WordPressKit

class JetpackRestoreService {

Expand Down
1 change: 1 addition & 0 deletions WordPress/Classes/Services/JetpackScanService.swift
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import WordPressData
import WordPressKit

class JetpackScanService {

Expand Down
8 changes: 4 additions & 4 deletions WordPress/Classes/Services/LikeUserHelpers.swift
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@ import WordPressKit
@objc class func createOrUpdateFrom(remoteUser: RemoteLikeUser, context: NSManagedObjectContext) -> LikeUser {
let liker = likeUser(for: remoteUser, context: context) ?? LikeUser(context: context)

liker.userID = remoteUser.userID.int64Value
liker.username = remoteUser.username
liker.displayName = remoteUser.displayName
liker.userID = remoteUser.userID?.int64Value ?? 0
liker.username = remoteUser.username ?? ""
liker.displayName = remoteUser.displayName ?? ""
liker.primaryBlogID = remoteUser.primaryBlogID?.int64Value ?? 0
liker.avatarUrl = remoteUser.avatarURL
liker.avatarUrl = remoteUser.avatarURL ?? ""
liker.bio = remoteUser.bio ?? ""
liker.dateLikedString = remoteUser.dateLiked ?? ""
liker.dateLiked = Date.dateFromServerDate(liker.dateLikedString) ?? .now
Expand Down
1 change: 1 addition & 0 deletions WordPress/Classes/Services/MediaRepository.swift
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Foundation
import WordPressData
import WordPressKit

final class MediaRepository {

Expand Down
1 change: 1 addition & 0 deletions WordPress/Classes/Services/MediaService.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
#import <Photos/Photos.h>
@import WordPressData;

@class Blog;
@class Media;
@class RemoteVideoPressVideo;
@protocol ExportableAsset;
Expand Down
Loading