Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
fe9b8b9
An initial and somewhat naive implementation of list users
oguzkocer Apr 3, 2024
98b30bc
Add the remaining fields to UserListParams
oguzkocer Apr 3, 2024
a2c4940
Implements user_retrieve_request
oguzkocer Apr 3, 2024
498fe32
Change UserListParams.slug to be Vec<String>
oguzkocer Apr 4, 2024
8765f53
Merge remote-tracking branch 'origin/trunk' into users_types
oguzkocer Apr 4, 2024
5b73f8e
Add UserCreateParams
oguzkocer Apr 4, 2024
f9bdd0b
Implement create user request
oguzkocer Apr 4, 2024
4c9046c
Implement user_update_request
oguzkocer Apr 4, 2024
884faea
Implement user_delete_request
oguzkocer Apr 4, 2024
61f962c
Add a header_map helper to WPApiHelper
oguzkocer Apr 4, 2024
3e50d00
Implements UsersEndpoint
oguzkocer Apr 4, 2024
f3d2f80
Rename user requests to start with verb
oguzkocer Apr 5, 2024
40559a7
Implements retrieve current user
oguzkocer Apr 5, 2024
8061a5b
Adds UserId new type
oguzkocer Apr 5, 2024
62cf189
Use UserId for retrieve, update & delete user requests
oguzkocer Apr 5, 2024
c604808
Implements update & delete current user
oguzkocer Apr 5, 2024
798770e
Update capabilities & avatar_urls types for SparseUser
oguzkocer Apr 5, 2024
9f6da9c
Move parsing code for users to users module
oguzkocer Apr 5, 2024
f71b212
Extract generic error parsing to a helper
oguzkocer Apr 5, 2024
a8aa1b7
Move WPApiParamOrder to wp_api lib.rs
oguzkocer Apr 5, 2024
d3fbcd1
Replace Display trait with as_str for WPContext
oguzkocer Apr 5, 2024
d9f5535
Rename retrieve_current_user as retrieve_current_user_request
oguzkocer Apr 5, 2024
301014e
Replace Display trait with as_str for WPApiParamOrder
oguzkocer Apr 5, 2024
858e10f
Remove unused list_posts from wp_networking
oguzkocer Apr 5, 2024
151ffec
Add body argument to WPNetworkRequest in WordPressAPI.swift
oguzkocer Apr 5, 2024
ec6f364
Merge remote-tracking branch 'origin/trunk' into users_types
oguzkocer Apr 5, 2024
49ffd28
Add application/json header to WPNetworkRequest for post requests
oguzkocer Apr 9, 2024
c46d3d8
Prefer from_utf8_lossy over from_utf8
oguzkocer Apr 9, 2024
66508da
Replace Display trait with as_str for WPApiParamUsersOrderBy
oguzkocer Apr 9, 2024
9656d8c
Use references for user request parameters
oguzkocer Apr 10, 2024
6c9fe91
Refactor UserListParams.query_pairs() to be more readable
oguzkocer Apr 11, 2024
24fcd6b
Remove the Option from parse retrieve user results
oguzkocer Apr 11, 2024
618e099
update_current_user_request should use post request header map
oguzkocer Apr 11, 2024
b8f0b8d
Add 'Accept' header to all WPRequests
oguzkocer Apr 11, 2024
2023d8d
Update breaking changes in Swift for headerMap becoming non-optional
oguzkocer Apr 11, 2024
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
74 changes: 74 additions & 0 deletions Cargo.lock

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

4 changes: 2 additions & 2 deletions native/swift/Sources/wordpress-api/Login/API+Login.swift
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,15 @@ import FoundationNetworking

public extension WordPressAPI {
static func findRestApiEndpointRoot(forSiteUrl url: URL, using session: URLSession) async throws -> URL? {
let request = WpNetworkRequest(method: .head, url: url)
let request = WpNetworkRequest(method: .head, url: url, headerMap: [:])
let ephemeralClient = WordPressAPI(urlSession: session, baseUrl: url, authenticationStategy: .none)
let response = try await ephemeralClient.perform(request: request)

return wordpress_api_wrapper.getLinkHeader(response: response, name: "https://api.w.org/")?.asUrl()
}

func getRestAPICapabilities(forApiRoot url: URL, using session: URLSession) async throws -> WpapiDetails {
let wpResponse = try await self.perform(request: WpNetworkRequest(method: .get, url: url, headerMap: nil))
let wpResponse = try await self.perform(request: WpNetworkRequest(method: .get, url: url, headerMap: [:]))
return try wordpress_api_wrapper.parseApiDetailsResponse(response: wpResponse)
}
}
4 changes: 2 additions & 2 deletions native/swift/Sources/wordpress-api/WordPressAPI.swift
Original file line number Diff line number Diff line change
Expand Up @@ -159,8 +159,8 @@ extension RequestMethod {
}

extension WpNetworkRequest {
init(method: RequestMethod, url: URL, headerMap: [String: String]? = nil) {
self.init(method: method, url: url.absoluteString, headerMap: headerMap)
init(method: RequestMethod, url: URL, headerMap: [String: String]) {
self.init(method: method, url: url.absoluteString, headerMap: headerMap, body: nil)
}
}

Expand Down
2 changes: 2 additions & 0 deletions wp_api/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,15 @@ crate-type = ["lib", "cdylib", "staticlib"]
name = "wp_api"

[dependencies]
derive_builder = "0.20"
http = { workspace = true }
url = "2.5"
parse_link_header = "0.3"
serde = { version = "1.0", features = [ "derive" ] }
serde_json = "1.0"
thiserror = { workspace = true }
uniffi = { workspace = true }
wp_derive = { path = "../wp_derive" }

[build-dependencies]
uniffi = { workspace = true , features = [ "build", "cli" ] }
Loading