Mercurial > public > simoleon
annotate Simoleon/Helpers/CurrencyRow.swift @ 62:c7b6249ab745
uncomment localized texts
author | Dennis Concepción Martín <dennisconcepcionmartin@gmail.com> |
---|---|
date | Tue, 27 Jul 2021 18:45:43 +0100 |
parents | 7a6a7c677851 |
children | b6f8661300f2 |
rev | line source |
---|---|
6
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
1 // |
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
2 // CurrencyRow.swift |
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
3 // Simoleon |
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
4 // |
16
aec2e86e5dbd
Change design and icon
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
15
diff
changeset
|
5 // Created by Dennis Concepción Martín on 15/07/2021. |
6
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
6 // |
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
7 |
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
8 import SwiftUI |
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
9 |
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
10 struct CurrencyRow: View { |
21
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
11 var currencyPair: String |
50
7a6a7c677851
Handle errors with alerts
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
29
diff
changeset
|
12 |
16
aec2e86e5dbd
Change design and icon
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
15
diff
changeset
|
13 let currencyMetadata: [String: CurrencyMetadataModel] = parseJson("CurrencyMetadata.json") |
6
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
14 |
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
15 var body: some View { |
16
aec2e86e5dbd
Change design and icon
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
15
diff
changeset
|
16 HStack { |
21
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
17 let currencies = currencyPair.split(separator: "/") |
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
18 Image(currencyMetadata[String(currencies[0])]!.flag) |
16
aec2e86e5dbd
Change design and icon
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
15
diff
changeset
|
19 .resizable() |
aec2e86e5dbd
Change design and icon
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
15
diff
changeset
|
20 .aspectRatio(contentMode: .fill) |
aec2e86e5dbd
Change design and icon
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
15
diff
changeset
|
21 .frame(width: 30, height: 30) |
aec2e86e5dbd
Change design and icon
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
15
diff
changeset
|
22 .clipShape(Circle()) |
aec2e86e5dbd
Change design and icon
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
15
diff
changeset
|
23 .overlay(Circle().stroke(Color(.systemGray), lineWidth: 1)) |
aec2e86e5dbd
Change design and icon
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
15
diff
changeset
|
24 |
21
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
25 Image(currencyMetadata[String(currencies[1])]!.flag) |
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
26 .resizable() |
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
27 .aspectRatio(contentMode: .fill) |
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
28 .frame(width: 30, height: 30) |
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
29 .clipShape(Circle()) |
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
30 .overlay(Circle().stroke(Color(.systemGray), lineWidth: 1)) |
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
31 .offset(x: -20) |
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
32 .padding(.trailing, -20) |
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
33 |
62
c7b6249ab745
uncomment localized texts
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
50
diff
changeset
|
34 Text("From \(String(currencies[0])) to \(String(currencies[1]))") |
21
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
35 .fontWeight(.semibold) |
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
36 .foregroundColor(Color("PlainButton")) |
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
37 .padding(.leading) |
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
38 |
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
39 Spacer() |
13
cdc5f728b105
Minor UI updates
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
11
diff
changeset
|
40 } |
cdc5f728b105
Minor UI updates
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
11
diff
changeset
|
41 } |
11
a62e5e4a4f02
Implementing networking
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
10
diff
changeset
|
42 } |
6
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
43 |
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
44 struct CurrencyRow_Previews: PreviewProvider { |
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
45 static var previews: some View { |
21
c3dda63f50ed
Added Core Data and UI changes
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
46 CurrencyRow(currencyPair: "USD/GBP") |
6
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
47 } |
3d6f56b0d4ed
Implementing first UI layout
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
48 } |