Mercurial > public > lazybear
annotate LazyBear/Views/Home/Helpers/CurrencyItem.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 | 417148200aaf |
children |
rev | line source |
---|---|
349
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
1 // |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
2 // CurrencyItem.swift |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
3 // LazyBear |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
4 // |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
5 // Created by Dennis Concepción Martín on 12/4/21. |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
6 // |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
7 |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
8 import SwiftUI |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
9 |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
10 struct CurrencyItem: View { |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
11 var currency: CurrencyModel |
441
417148200aaf
Change background color and minor UI updates
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
425
diff
changeset
|
12 @Environment(\.colorScheme) private var colorScheme |
349
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
13 |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
14 var body: some View { |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
15 RoundedRectangle(cornerRadius: 8) |
441
417148200aaf
Change background color and minor UI updates
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
425
diff
changeset
|
16 .foregroundColor(Color("customSecondaryBackground")) |
417148200aaf
Change background color and minor UI updates
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
425
diff
changeset
|
17 .if(colorScheme == .light) { content in |
417148200aaf
Change background color and minor UI updates
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
425
diff
changeset
|
18 content.shadow(color: Color(.systemGray).opacity(0.25), radius: 10, x: 0.0, y: 0.0) |
417148200aaf
Change background color and minor UI updates
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
425
diff
changeset
|
19 } |
349
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
20 .frame(width: 330, height: 50) |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
21 .overlay( |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
22 HStack { |
457
c6913f0ce46e
Minor UI Updates
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
441
diff
changeset
|
23 Color.blue |
349
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
24 .frame(width: 40) |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
25 .overlay( |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
26 Text(currency.flag) |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
27 ) |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
28 VStack(alignment: .leading) { |
425
4effac4733b0
Changing keys from API responses
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
424
diff
changeset
|
29 Text("USD/\(currency.symbol)") |
349
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
30 .font(.headline) |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
31 |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
32 Text(currency.name) |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
33 .font(.callout) |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
34 } |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
35 |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
36 Spacer() |
357
eb97439e46cd
Implement ExtensiveList in HomeView
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
349
diff
changeset
|
37 Text("\(currency.rate, specifier: "%.2f")") |
349
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
38 .padding(.horizontal) |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
39 } |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
40 .clipShape(RoundedRectangle(cornerRadius: 8)) |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
41 ) |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
42 } |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
43 } |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
44 |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
45 struct CurrencyItem_Previews: PreviewProvider { |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
46 static var previews: some View { |
425
4effac4733b0
Changing keys from API responses
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
424
diff
changeset
|
47 CurrencyItem(currency: CurrencyModel(symbol: "AUD", name: "Australian dollar", flag: "🇺🇸", rate: 1.3116)) |
349
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
48 } |
5ccceb527178
Implementing new internal API
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff
changeset
|
49 } |