Mercurial > public > lazybear
annotate LazyBear/Views/Global Helpers/StockRectangleRow.swift @ 343:ab909fc9ce55
Implement batch requests HomeView
author | Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com> |
---|---|
date | Tue, 06 Apr 2021 11:04:21 +0200 |
parents | |
children | fde2b30c719e |
rev | line source |
---|---|
343
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
1 // |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
2 // StockRectangleRow.swift |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
3 // LazyBear |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
4 // |
ab909fc9ce55
Implement batch requests HomeView
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. |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
6 // |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
7 |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
8 import SwiftUI |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
9 |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
10 |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
11 struct StockRectangleRow: View { |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
12 var listType: String |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
13 var list: [CompanyQuoteModel] |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
14 var intradayPrices: [String: [IntradayPricesResult]] |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
15 |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
16 var body: some View { |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
17 VStack(alignment: .leading) { |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
18 Text(adaptTitle(listType)) |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
19 .font(.title3) |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
20 .fontWeight(.semibold) |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
21 .padding([.top, .horizontal]) |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
22 |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
23 ScrollView(.horizontal, showsIndicators: false) { |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
24 HStack(spacing: 20) { |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
25 ForEach(list, id: \.self) { company in |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
26 StockItem(company: company, intradayPrices: self.intradayPrices[company.symbol]!) |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
27 } |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
28 } |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
29 .padding() |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
30 } |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
31 .frame(height: 250) |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
32 } |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
33 .padding(.bottom) |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
34 } |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
35 } |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
36 |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
37 private func adaptTitle(_ listType: String) -> String { |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
38 if listType == "mostactive" { |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
39 return "Most active" |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
40 } else { |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
41 return listType.capitalized |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
42 } |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
43 } |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
44 |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
45 |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
46 //struct StockRectangleRow_Previews: PreviewProvider { |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
47 // static var previews: some View { |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
48 // StockRectangleRow(listType: "gainers", list: [CompanyQuoteModel(companyName: "apple inc", symbol: "aapl", latestPrice: 120.30, changePercent: 0.034)]) |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
49 // } |
ab909fc9ce55
Implement batch requests HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
50 //} |