diff --git a/README.md b/README.md index bc039ff..0ff85d4 100644 --- a/README.md +++ b/README.md @@ -227,7 +227,7 @@ notion.pageCreate(request: request) { let pageId = Page.Identifier("{PAGE UUIDv4}") // update title property -let request = PageProperiesUpdateRequest( +let request = PageUpdateRequest( properties: [ .name("title"): .init( type: .title([ @@ -237,7 +237,20 @@ let request = PageProperiesUpdateRequest( ] ) -notion.pageUpdateProperties(pageId: pageId, request: request) { +notion.pageUpdate(pageId: pageId, request: request) { + print($0) +} +``` + +### Delete page + +```swift +let pageId = Page.Identifier("{PAGE UUIDv4}") + +// Archive page (trash a page) +let request = PageUpdateRequest(archived: true) + +notion.pageUpdate(pageId: pageId, request: request) { print($0) } ``` diff --git a/Sources/NotionSwift/Models/Request/PageProperiesUpdateRequest.swift b/Sources/NotionSwift/Models/Request/PageUpdateRequest.swift similarity index 93% rename from Sources/NotionSwift/Models/Request/PageProperiesUpdateRequest.swift rename to Sources/NotionSwift/Models/Request/PageUpdateRequest.swift index 36f7fee..cf3e988 100644 --- a/Sources/NotionSwift/Models/Request/PageProperiesUpdateRequest.swift +++ b/Sources/NotionSwift/Models/Request/PageUpdateRequest.swift @@ -4,7 +4,7 @@ import Foundation -public struct PageProperiesUpdateRequest { +public struct PageUpdateRequest { public enum Key: Hashable, Equatable { case name(Page.PropertyName) case id(PageProperty.Identifier) @@ -29,7 +29,7 @@ public struct PageProperiesUpdateRequest { } -extension PageProperiesUpdateRequest: Encodable { +extension PageUpdateRequest: Encodable { enum CodingKeys: String, CodingKey { case properties case archived @@ -61,7 +61,7 @@ extension PageProperiesUpdateRequest: Encodable { } } -extension PageProperiesUpdateRequest.Key: Encodable { +extension PageUpdateRequest.Key: Encodable { public func encode(to encoder: Encoder) throws { var container = encoder.singleValueContainer() switch self { diff --git a/Sources/NotionSwift/NotionClient+Pages.swift b/Sources/NotionSwift/NotionClient+Pages.swift index 8983146..c338b24 100644 --- a/Sources/NotionSwift/NotionClient+Pages.swift +++ b/Sources/NotionSwift/NotionClient+Pages.swift @@ -31,9 +31,9 @@ import Foundation ) } - public func pageUpdateProperties( + public func pageUpdate( pageId: Page.Identifier, - request: PageProperiesUpdateRequest, + request: PageUpdateRequest, completed: @escaping (Result) -> Void ) { networkClient.patch( diff --git a/Sources/NotionSwift/NotionClientType+Combine.swift b/Sources/NotionSwift/NotionClientType+Combine.swift index e832a94..91cd1a2 100644 --- a/Sources/NotionSwift/NotionClientType+Combine.swift +++ b/Sources/NotionSwift/NotionClientType+Combine.swift @@ -96,12 +96,12 @@ extension NotionClientType { } } - public func pageUpdateProperties( + public func pageUpdate( pageId: Page.Identifier, - request: PageProperiesUpdateRequest + request: PageUpdateRequest ) -> AnyPublisher { convertToPublisher { promise in - self.pageUpdateProperties( + self.pageUpdate( pageId: pageId, request: request, completed: promise diff --git a/Sources/NotionSwift/NotionClientType.swift b/Sources/NotionSwift/NotionClientType.swift index 721ec5b..ec0a9e3 100644 --- a/Sources/NotionSwift/NotionClientType.swift +++ b/Sources/NotionSwift/NotionClientType.swift @@ -67,9 +67,9 @@ public protocol NotionClientType: AnyObject { completed: @escaping (Result) -> Void ) - func pageUpdateProperties( + func pageUpdate( pageId: Page.Identifier, - request: PageProperiesUpdateRequest, + request: PageUpdateRequest, completed: @escaping (Result) -> Void )