annotate Simoleon/Subscription.swift @ 30:f76d0e26c178

Add localisation
author Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
date Fri, 23 Jul 2021 13:19:28 +0100
parents c52966834f83
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
28
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
1 //
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
2 // Subscription.swift
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
3 // Simoleon
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
4 //
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
5 // Created by Dennis Concepción Martín on 22/07/2021.
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
6 //
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
7
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
8 import SwiftUI
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
9
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
10 struct Subscription: View {
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
11 @Binding var showingSubscriptionPaywall: Bool
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
12
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
13 var body: some View {
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
14 NavigationView {
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
15 ScrollView {
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
16 VStack(alignment: .leading, spacing: 20) {
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
17 HStack {
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
18 Spacer()
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
19 VStack {
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
20 Image("Subscription")
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
21 .resizable()
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
22 .aspectRatio(contentMode: .fit)
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
23 .frame(width: 100, height: 100)
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
24 .cornerRadius(25)
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
25
29
c52966834f83 Add localised strings
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 28
diff changeset
26 Text("Unlock all access", comment: "Headline in Subscription paywall")
28
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
27 .font(.title)
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
28 .fontWeight(.semibold)
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
29 .padding(.top)
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
30 }
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
31
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
32 Spacer()
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
33 }
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
34
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
35 Divider()
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
36
30
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
37 HStack(alignment:.top) {
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
38 Image(systemName: "star.circle.fill")
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
39 .foregroundColor(Color(.systemYellow))
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
40 .font(.title)
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
41
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
42 VStack(alignment: .leading) {
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
43 Text("Favourite currencies", comment: "Subscription feature title")
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
44 .font(.headline)
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
45
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
46 Text("Save your favourite currencies to access them quickly.", comment: "Subscription feature description")
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
47 }
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
48 }
28
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
49
30
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
50 HStack(alignment:.top) {
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
51 Image(systemName: "flag.circle.fill")
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
52 .foregroundColor(Color(.systemRed))
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
53 .font(.title)
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
54
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
55 VStack(alignment: .leading) {
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
56 Text("Over 170 currencies", comment: "Subscription feature title")
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
57 .font(.headline)
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
58
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
59 Text("Have access to almost every currency of the world.", comment: "Subscription feature description")
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
60 }
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
61 }
28
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
62
30
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
63 HStack(alignment:.top) {
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
64 Image(systemName: "icloud.circle.fill")
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
65 .foregroundColor(Color(.systemBlue))
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
66 .font(.title)
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
67
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
68 VStack(alignment: .leading) {
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
69 Text("Simoleon on all your devices", comment: "Subscription feature title")
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
70 .font(.headline)
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
71
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
72 Text("Your settings and favourite currencies in all your devices.", comment: "Subscription feature description")
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
73 }
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
74 }
28
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
75
30
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
76 HStack(alignment:.top) {
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
77 Image(systemName: "bitcoinsign.circle.fill")
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
78 .foregroundColor(Color(.systemOrange))
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
79 .font(.title)
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
80
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
81 VStack(alignment: .leading) {
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
82 Text("Cryptos and commodities", comment: "Subscription feature title")
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
83 .font(.headline)
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
84
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
85 Text("Convert your currency between cryptos, gold, and silver.", comment: "Subscription feature description")
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
86 }
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
87 }
f76d0e26c178 Add localisation
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 29
diff changeset
88
28
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
89 Spacer()
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
90 SubscribeButton(showingSubscriptionPaywall: $showingSubscriptionPaywall)
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
91 HStack {
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
92 Spacer()
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
93 RestoreButton(showingSubscriptionPaywall: $showingSubscriptionPaywall)
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
94 Spacer()
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
95 }
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
96
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
97 }
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
98 .padding(.bottom)
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
99 .padding(.horizontal, 40)
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
100 }
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
101 .toolbar {
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
102 ToolbarItem(placement: .cancellationAction) {
29
c52966834f83 Add localised strings
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 28
diff changeset
103 Button(action: { showingSubscriptionPaywall = false }) {
c52966834f83 Add localised strings
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 28
diff changeset
104 Text("Cancel", comment: "Button to dismiss paywall modal sheet")
c52966834f83 Add localised strings
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents: 28
diff changeset
105 }
28
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
106 }
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
107 }
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
108 }
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
109 }
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
110 }
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
111
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
112 struct Subscription_Previews: PreviewProvider {
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
113 static var previews: some View {
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
114 Subscription(showingSubscriptionPaywall: .constant(false))
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
115 }
4f862c618b44 Implemented RevenueCat
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff changeset
116 }