You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Apple/Sources/AllInApp/AllIn/Views/WelcomeView.swift

107 lines
5.3 KiB

//
// WelcomeView.swift
// AllIn
//
// Created by Emre on 23/09/2023.
//
import SwiftUI
struct WelcomeView: View {
var body: some View {
GeometryReader { geometry in
VStack(alignment: .leading, spacing: 0) {
Spacer()
VStack(alignment: .leading, spacing: -5) {
Spacer()
Spacer()
Text("Bienvenue sur,")
.textStyle(weight: .bold, color: AllInColors.darkBlueColor, size: 30)
.frame(alignment: .topLeading)
.frame(width: geometry.size.width, alignment: .topLeading)
Text("Allin")
.font(.system(size: 45).bold())
.foregroundStyle(LinearGradient(
colors: [AllInColors.pinkAccentColor, AllInColors.blueAccentColor],
startPoint: .bottomLeading,
endPoint: .topTrailing
))
.padding(.bottom, 40)
}
.padding([.leading], geometry.size.width*0.2)
.frame(width: geometry.size.width, height: 320)
.background( LinearGradient(
stops: [
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0), location: 0.00),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.01), location: 0.07),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.04), location: 0.13),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.08), location: 0.20),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.15), location: 0.27),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.23), location: 0.33),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.33), location: 0.40),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.44), location: 0.47),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.56), location: 0.53),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.67), location: 0.60),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.77), location: 0.67),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.85), location: 0.73),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.92), location: 0.80),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.96), location: 0.87),
Gradient.Stop(color: AllInColors.startBackgroundColor.opacity(0.99), location: 0.93),
Gradient.Stop(color: AllInColors.startBackgroundColor, location: 1.00),
],
startPoint: UnitPoint(x: 0.5, y: 0),
endPoint: UnitPoint(x: 0.5, y: 0.85)
))
VStack() {
Text("Récupère tes Allcoins et vient parier avec tes amis pour prouver qui est le meilleur.")
.textStyle(weight: .regular, color: AllInColors.darkBlueColor, size: 15)
.frame(width: geometry.size.width*0.8, alignment: .leading)
.padding([.leading,.trailing], 40)
Spacer()
Spacer()
NavigationLink(destination: RegisterView().navigationBarBackButtonHidden(true))
{
Text("Rejoindre")
.textStyle(weight: .bold, color: AllInColors.whiteColor, size: 17)
.frame(width: min(geometry.size.width*0.85, 500), height: 50)
.background(AllInColors.loginPurpleColor)
.cornerRadius(30)
}
HStack(spacing: 0) {
Text("Tu as déja un compte? ")
.textStyle(weight: .regular, color: AllInColors.loginPurpleColor, size: 16)
NavigationLink(destination: LoginView().navigationBarBackButtonHidden(true))
{
Text("Connexion")
.textStyle(weight: .semibold, color: AllInColors.loginPurpleColor, size: 16)
.underline()
}
}
Spacer()
}
.frame(width: geometry.size.width, height: geometry.size.height/3.5)
.background(AllInColors.startBackgroundColor)
}
.frame(width: geometry.size.width, height: geometry.size.height)
.background(
Image("welcomeBackgroundImage")
.resizable()
)
.edgesIgnoringSafeArea(.all)
}
.background(AllInColors.startBackgroundColor)
}
}
struct WelcomeView_Previews: PreviewProvider {
static var previews: some View {
WelcomeView()
}
}