annotate LazyBear/Views/Global Helpers/StockItem.swift @ 413:2984d8946342

Minor UI changes
author Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
date Wed, 09 Jun 2021 10:23:52 +0200
parents 8357b101df67
children 9b7af8e83d12
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
342
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
1 //
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
2 // StockItem.swift
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
3 // LazyBear
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
4 //
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
5 // Created by Dennis Concepción Martín on 28/3/21.
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
6 //
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
7
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
8 import SwiftUI
396
bd34e16b01ad Add StockCharts package
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 390
diff changeset
9 import StockCharts
342
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
10
357
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
11 enum OrientationView {
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
12 case horizontal, vertical
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
13 }
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
14
342
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
15 struct StockItem: View {
375
f3cb5bdea8e5 Update Codable requests in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 357
diff changeset
16 var symbol: String
346
80bfa88c6b0f Implementing Prop API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 345
diff changeset
17 var company: QuoteModel
375
f3cb5bdea8e5 Update Codable requests in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 357
diff changeset
18 var intradayPrices: [IntradayPriceModel]?
357
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
19 var orientation: OrientationView
379
a7e2c5a7b4f6 Implement onDelete in watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 375
diff changeset
20 var hidePriceView: Bool?
342
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
21
357
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
22 var body: some View {
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
23 if orientation == .vertical {
402
8357b101df67 Implementing CompanyView in NavigationLinks
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 398
diff changeset
24 let verticalRow: AnyView = AnyView(
8357b101df67 Implementing CompanyView in NavigationLinks
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 398
diff changeset
25 NavigationLink(destination: CompanyView(symbol: symbol)) {
8357b101df67 Implementing CompanyView in NavigationLinks
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 398
diff changeset
26 VerticalStockRow(symbol: symbol, company: company, intradayPrices: intradayPrices)
8357b101df67 Implementing CompanyView in NavigationLinks
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 398
diff changeset
27 }
8357b101df67 Implementing CompanyView in NavigationLinks
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 398
diff changeset
28 .buttonStyle(PlainButtonStyle())
8357b101df67 Implementing CompanyView in NavigationLinks
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 398
diff changeset
29 )
8357b101df67 Implementing CompanyView in NavigationLinks
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 398
diff changeset
30 return verticalRow
357
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
31 } else {
402
8357b101df67 Implementing CompanyView in NavigationLinks
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 398
diff changeset
32 let horizontalRow: AnyView = AnyView(
8357b101df67 Implementing CompanyView in NavigationLinks
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 398
diff changeset
33 NavigationLink(destination: CompanyView(symbol: symbol)) {
8357b101df67 Implementing CompanyView in NavigationLinks
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 398
diff changeset
34 HorizontalStockRow(symbol: symbol, company: company, intradayPrices: intradayPrices, hidePriceView: hidePriceView ?? false)
8357b101df67 Implementing CompanyView in NavigationLinks
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 398
diff changeset
35 }
8357b101df67 Implementing CompanyView in NavigationLinks
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 398
diff changeset
36 )
8357b101df67 Implementing CompanyView in NavigationLinks
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 398
diff changeset
37 return horizontalRow
357
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
38 }
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
39 }
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
40 }
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
41
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
42 struct StockItem_Previews: PreviewProvider {
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
43 static var previews: some View {
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
44 StockItem(
375
f3cb5bdea8e5 Update Codable requests in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 357
diff changeset
45 symbol: "AAPL", company: QuoteModel(changePercent: 0.03, companyName: "apple inc", latestPrice: 130.3),
f3cb5bdea8e5 Update Codable requests in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 357
diff changeset
46 intradayPrices: [IntradayPriceModel(open: 130.3), IntradayPriceModel(open: 132.3)], orientation: .horizontal
357
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
47 )
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
48 }
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
49 }
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
50
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
51
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
52 struct VerticalStockRow: View {
375
f3cb5bdea8e5 Update Codable requests in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 357
diff changeset
53 var symbol: String
357
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
54 var company: QuoteModel
375
f3cb5bdea8e5 Update Codable requests in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 357
diff changeset
55 var intradayPrices: [IntradayPriceModel]?
342
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
56
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
57 var body: some View {
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
58 RoundedRectangle(cornerRadius: 20)
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
59 .foregroundColor(Color(.secondarySystemBackground))
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
60 .aspectRatio(0.8, contentMode: .fit)
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
61 .clipShape(RoundedRectangle(cornerRadius: 20))
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
62 .overlay(
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
63 VStack(alignment: .leading) {
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
64 Group {
375
f3cb5bdea8e5 Update Codable requests in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 357
diff changeset
65 Text(symbol.uppercased())
342
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
66 .fontWeight(.semibold)
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
67 .padding(.top)
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
68
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
69 Text(company.companyName.capitalized)
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
70 .font(.callout)
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
71 .fontWeight(.semibold)
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
72 .opacity(0.6)
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
73 .lineLimit(1)
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
74
398
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
75 let priceViewStyle = PriceViewStyle(
413
2984d8946342 Minor UI changes
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 402
diff changeset
76 horizontalAlignment: .leading,
2984d8946342 Minor UI changes
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 402
diff changeset
77 verticalAlignment: .center,
2984d8946342 Minor UI changes
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 402
diff changeset
78 orientation: .VStack,
398
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
79 priceFont: .body,
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
80 priceFontWeight: .semibold,
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
81 percentFont: .callout,
413
2984d8946342 Minor UI changes
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 402
diff changeset
82 percentFontWeight: .semibold,
2984d8946342 Minor UI changes
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 402
diff changeset
83 showBackground: false
398
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
84 )
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
85
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
86 PriceView(latestPrice: company.latestPrice ?? 0,
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
87 changePercent: company.changePercent ?? 0,
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
88 style: priceViewStyle)
357
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
89 .padding(.top)
342
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
90
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
91 }
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
92 .padding(.horizontal)
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
93
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
94 Spacer()
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
95
349
5ccceb527178 Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 346
diff changeset
96 if let prices = intradayPrices?.compactMap { $0.open } {
396
bd34e16b01ad Add StockCharts package
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 390
diff changeset
97 LineChartView(data: prices, dates: nil, hours: nil, dragGesture: false)
342
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
98 .padding(.vertical)
396
bd34e16b01ad Add StockCharts package
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 390
diff changeset
99 .clipShape(RoundedRectangle(cornerRadius: 20))
342
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
100 }
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
101
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
102 }
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
103 ,alignment: .leading
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
104 )
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
105 }
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
106 }
a6c49f1409f3 Implementing Watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
107
357
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
108
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
109 struct HorizontalStockRow: View {
375
f3cb5bdea8e5 Update Codable requests in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 357
diff changeset
110 var symbol: String
357
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
111 var company: QuoteModel
375
f3cb5bdea8e5 Update Codable requests in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 357
diff changeset
112 var intradayPrices: [IntradayPriceModel]?
379
a7e2c5a7b4f6 Implement onDelete in watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 375
diff changeset
113 var hidePriceView: Bool
357
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
114
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
115 var body: some View {
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
116 HStack {
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
117 VStack(alignment: .leading) {
375
f3cb5bdea8e5 Update Codable requests in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 357
diff changeset
118 Text(symbol.uppercased())
357
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
119 .fontWeight(.semibold)
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
120
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
121 Text(company.companyName.capitalized)
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
122 .font(.callout)
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
123 .fontWeight(.semibold)
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
124 .opacity(0.6)
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
125 .lineLimit(1)
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
126 }
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
127
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
128 Spacer()
379
a7e2c5a7b4f6 Implement onDelete in watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 375
diff changeset
129 if !hidePriceView {
a7e2c5a7b4f6 Implement onDelete in watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 375
diff changeset
130 if let prices = intradayPrices?.compactMap { $0.open } {
396
bd34e16b01ad Add StockCharts package
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 390
diff changeset
131 LineChartView(data: prices, dates: nil, hours: nil, dragGesture: false)
379
a7e2c5a7b4f6 Implement onDelete in watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 375
diff changeset
132 .frame(width: 80)
a7e2c5a7b4f6 Implement onDelete in watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 375
diff changeset
133 .padding(.vertical, 10)
a7e2c5a7b4f6 Implement onDelete in watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 375
diff changeset
134 .padding(.leading)
a7e2c5a7b4f6 Implement onDelete in watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 375
diff changeset
135 }
a7e2c5a7b4f6 Implement onDelete in watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 375
diff changeset
136
398
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
137 let priceViewStyle = PriceViewStyle(
413
2984d8946342 Minor UI changes
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 402
diff changeset
138 horizontalAlignment: .leading,
2984d8946342 Minor UI changes
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 402
diff changeset
139 verticalAlignment: .center,
2984d8946342 Minor UI changes
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 402
diff changeset
140 orientation: .VStack,
398
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
141 priceFont: .body,
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
142 priceFontWeight: .semibold,
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
143 percentFont: .callout,
413
2984d8946342 Minor UI changes
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 402
diff changeset
144 percentFontWeight: .semibold,
2984d8946342 Minor UI changes
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 402
diff changeset
145 showBackground: false
398
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
146 )
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
147
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
148 PriceView(latestPrice: company.latestPrice ?? 0,
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
149 changePercent: company.changePercent ?? 0,
933546fa5651 Implementing CompanyView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 396
diff changeset
150 style: priceViewStyle)
379
a7e2c5a7b4f6 Implement onDelete in watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 375
diff changeset
151 // Center PriceView with the other rows
a7e2c5a7b4f6 Implement onDelete in watchlists
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 375
diff changeset
152 .frame(minWidth: 80, alignment: .trailing)
357
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
153 }
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
154 }
eb97439e46cd Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 349
diff changeset
155 .padding(5)
345
fde2b30c719e Implementing Networking in ProfileView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 343
diff changeset
156 }
fde2b30c719e Implementing Networking in ProfileView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents: 343
diff changeset
157 }