mirror of
https://github.com/Ranchero-Software/NetNewsWire.git
synced 2024-12-12 09:26:26 +01:00
47 lines
1.2 KiB
Swift
47 lines
1.2 KiB
Swift
|
//
|
||
|
// WidgetDeepLinks.swift
|
||
|
// NetNewsWire
|
||
|
//
|
||
|
// Created by Stuart Breckenridge on 18/11/20.
|
||
|
// Copyright © 2020 Ranchero Software. All rights reserved.
|
||
|
//
|
||
|
|
||
|
import Foundation
|
||
|
|
||
|
enum WidgetDeepLink {
|
||
|
|
||
|
case unread
|
||
|
case unreadArticle(id: String)
|
||
|
case today
|
||
|
case todayArticle(id: String)
|
||
|
case starred
|
||
|
case starredArticle(id: String)
|
||
|
case icon
|
||
|
|
||
|
var url: URL {
|
||
|
switch self {
|
||
|
case .unread:
|
||
|
return URL(string: "nnw://showunread")!
|
||
|
case .unreadArticle(let articleID):
|
||
|
var url = URLComponents(url: WidgetDeepLink.unread.url, resolvingAgainstBaseURL: false)!
|
||
|
url.queryItems = [URLQueryItem(name: "id", value: articleID)]
|
||
|
return url.url!
|
||
|
case .today:
|
||
|
return URL(string: "nnw://showtoday")!
|
||
|
case .todayArticle(let articleID):
|
||
|
var url = URLComponents(url: WidgetDeepLink.today.url, resolvingAgainstBaseURL: false)!
|
||
|
url.queryItems = [URLQueryItem(name: "id", value: articleID)]
|
||
|
return url.url!
|
||
|
case .starred:
|
||
|
return URL(string: "nnw://showstarred")!
|
||
|
case .starredArticle(let articleID):
|
||
|
var url = URLComponents(url: WidgetDeepLink.starred.url, resolvingAgainstBaseURL: false)!
|
||
|
url.queryItems = [URLQueryItem(name: "id", value: articleID)]
|
||
|
return url.url!
|
||
|
case .icon:
|
||
|
return URL(string: "nnw://icon")!
|
||
|
}
|
||
|
}
|
||
|
|
||
|
}
|