-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathWebPageMapping.swift
More file actions
32 lines (30 loc) · 833 Bytes
/
Copy pathWebPageMapping.swift
File metadata and controls
32 lines (30 loc) · 833 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
//
// WebPageMapping.swift
// DevLogData
//
// Created by 최윤진 on 2/19/26.
//
import Foundation
import DevLogDomain
public extension WebPageResponse {
func toDomain() throws -> WebPage {
guard let url = URL(string: url) else {
throw DataError.invalidData("WebPageResponse.url is invalid: \(url)")
}
guard let displayURL = URL(string: displayURL) else {
throw DataError.invalidData("WebPageResponse.displayURL is invalid: \(displayURL)")
}
let imageURL: URL?
if !self.imageURL.isEmpty {
imageURL = URL(string: self.imageURL)
} else {
imageURL = nil
}
return WebPage(
title: title,
url: url,
displayURL: displayURL,
imageURL: imageURL
)
}
}