annotate LazyBearWatchOS Extension/Views/Helpers/WatchOSNewsList.swift @ 457:c6913f0ce46e

Minor UI Updates
author Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
date Mon, 28 Jun 2021 14:03:50 +0200
parents b560babcd5ed
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
455
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
1 //
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
2 // WatchOSNewsList.swift
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
3 // LazyBearWatchOS Extension
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
4 //
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
5 // Created by Dennis Concepción Martín on 27/06/2021.
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
6 //
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
7
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
8 import SwiftUI
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
9
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
10 struct WatchOSNewsList: View {
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
11 var latestNews: [LatestNewsModel]?
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
12
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
13 var body: some View {
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
14 VStack {
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
15 if let latestNews = latestNews {
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
16 List(latestNews, id: \.self) { new in
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
17 NavigationLink(destination: WatchOSNewsDetail(new: new)
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
18 .navigationTitle("News")
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
19 ) {
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
20 WatchOSNewsRow(new: new)
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
21 }
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
22 }
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
23 } else {
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
24 // Handle if there is no data
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
25 }
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
26 }
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
27 }
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
28 }
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
29
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
30 struct WatchOSNewsList_Previews: PreviewProvider {
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
31 static var previews: some View {
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
32 WatchOSNewsList(
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
33 latestNews: [
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
34 LatestNewsModel(
457
c6913f0ce46e Minor UI Updates
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 455
diff changeset
35 datetime: 1621037,
455
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
36 headline: "Chaos Monkeys' author calls Apple's statement on his departure defamatory",
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
37 image: "https://cloud.iexapis.com/v1/news/image/99abeb99-6d9e-47c8-ae7b-53404eacccec",
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
38 source: "Investing.com",
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
39 summary: "https://www.investing.com/news/stock-market-news",
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
40 url: "https://bloomberg.com")
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
41 ]
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
42 )
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
43 }
b560babcd5ed WatchOS views implemented
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
44 }