cleaning up home page background

This commit is contained in:
talksik
2021-12-16 12:18:59 -08:00
parent a4a76dcacd
commit 6a020d6c32
3 changed files with 66 additions and 120 deletions
-17
View File
@@ -39,7 +39,6 @@
89BDCDEC2769918D00577829 /* OnboardingTrioView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89BDCDEB2769918D00577829 /* OnboardingTrioView.swift */; };
89BDCDEF2769B50C00577829 /* ContactsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89BDCDEE2769B50C00577829 /* ContactsView.swift */; };
89BDCDF12769E64200577829 /* Firestore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89BDCDF02769E64200577829 /* Firestore.swift */; };
89D99D2E2766FD6B00237814 /* Liquid in Frameworks */ = {isa = PBXBuildFile; productRef = 89D99D2D2766FD6B00237814 /* Liquid */; };
89F05B9B276A87920002E9C7 /* ContactsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89F05B9A276A87920002E9C7 /* ContactsViewModel.swift */; };
89F05B9F276A8D360002E9C7 /* Contact.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89F05B9E276A8D360002E9C7 /* Contact.swift */; };
89F05BA4276ACC060002E9C7 /* ContactService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89F05BA3276ACC060002E9C7 /* ContactService.swift */; };
@@ -95,7 +94,6 @@
89288EC5276756DF00E962C4 /* FirebaseAuth in Frameworks */,
89288EC7276756DF00E962C4 /* FirebaseDatabase in Frameworks */,
89288EC9276756DF00E962C4 /* FirebaseStorage in Frameworks */,
89D99D2E2766FD6B00237814 /* Liquid in Frameworks */,
89F138702767F55F006680ED /* GoogleSignIn in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -304,7 +302,6 @@
);
name = "nirvana-ios";
packageProductDependencies = (
89D99D2D2766FD6B00237814 /* Liquid */,
89288EC2276756DF00E962C4 /* FirebaseAnalytics */,
89288EC4276756DF00E962C4 /* FirebaseAuth */,
89288EC6276756DF00E962C4 /* FirebaseDatabase */,
@@ -341,7 +338,6 @@
);
mainGroup = 891A15D427653A7000B26659;
packageReferences = (
89D99D2C2766FD6B00237814 /* XCRemoteSwiftPackageReference "liquid" */,
89288EC1276756DF00E962C4 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */,
89F1386E2767F55F006680ED /* XCRemoteSwiftPackageReference "GoogleSignIn-iOS" */,
89BCABE0276B3CB0009E9B10 /* XCRemoteSwiftPackageReference "swiftui-navigation-stack" */,
@@ -630,14 +626,6 @@
minimumVersion = 1.0.0;
};
};
89D99D2C2766FD6B00237814 /* XCRemoteSwiftPackageReference "liquid" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/maustinstar/liquid";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 0.0.2;
};
};
89F1386E2767F55F006680ED /* XCRemoteSwiftPackageReference "GoogleSignIn-iOS" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/google/GoogleSignIn-iOS.git";
@@ -674,11 +662,6 @@
package = 89BCABE0276B3CB0009E9B10 /* XCRemoteSwiftPackageReference "swiftui-navigation-stack" */;
productName = NavigationStack;
};
89D99D2D2766FD6B00237814 /* Liquid */ = {
isa = XCSwiftPackageProductDependency;
package = 89D99D2C2766FD6B00237814 /* XCRemoteSwiftPackageReference "liquid" */;
productName = Liquid;
};
89F1386F2767F55F006680ED /* GoogleSignIn */ = {
isa = XCSwiftPackageProductDependency;
package = 89F1386E2767F55F006680ED /* XCRemoteSwiftPackageReference "GoogleSignIn-iOS" */;
@@ -109,15 +109,6 @@
"version": "1.22.2"
}
},
{
"package": "Liquid",
"repositoryURL": "https://github.com/maustinstar/liquid",
"state": {
"branch": null,
"revision": "9123b9d1fb24c8273c989924b4e889f07629a26b",
"version": "0.0.2"
}
},
{
"package": "nanopb",
"repositoryURL": "https://github.com/firebase/nanopb.git",
@@ -15,111 +15,83 @@ struct InnerCircleView: View {
var body: some View {
ZStack {
AngularGradient(
gradient: Gradient(
colors: [NirvanaColor.solidBlue, NirvanaColor.dimTeal, Color.orange, NirvanaColor.solidBlue]),
center: .center,
angle: .degrees(120))
LinearGradient(gradient: Gradient(
colors: [NirvanaColor.white.opacity(0), NirvanaColor.white.opacity(1.0)]), startPoint: .bottom, endPoint: .top)
// wave #1
Path {path in
path.move(
to: CGPoint(
x: 0,
y: baseLineY
)
)
path.addCurve(
to: CGPoint(x: universalSize.width, y: baseLineY),
control1: CGPoint(x: universalSize.width * 0.4, y: baseLineY + 150),
control2: CGPoint(x: universalSize.width * 0.65, y: baseLineY - 100))
path.addCurve(
to: CGPoint(x: 2*universalSize.width, y: baseLineY),
control1: CGPoint(x: universalSize.width * 1.4, y: baseLineY + 150),
control2: CGPoint(x: universalSize.width * 1.65, y: baseLineY - 100))
path.addLine(to: CGPoint(x: 2*universalSize.width, y: universalSize.height))
path.addLine(to: CGPoint(x: 0, y: universalSize.height))
VStack {
HStack {
Image("undraw_handcrafts_leaf")
.resizable()
.frame(width: 20.0, height: 32.132)
Text("nirvana")
.font(Font.custom("Satisfy-Regular", size: 35))
.foregroundColor(NirvanaColor.teal)
.multilineTextAlignment(.center)
}
}
.foregroundColor(NirvanaColor.dimTeal.opacity(0.5))
.blur(radius:2)
.offset(x: self.animateWaves ? -1*universalSize.width : 0)
.animation(
Animation.linear(duration: 20).repeatForever(autoreverses: false)
)
// wave #2
Path {path in
path.move(
to: CGPoint(
x: 0,
y: baseLineY + 20
// background
ZStack {
AngularGradient(
gradient: Gradient(
colors: [NirvanaColor.solidBlue, NirvanaColor.dimTeal, Color.orange, NirvanaColor.solidBlue]),
center: .center,
angle: .degrees(120))
LinearGradient(gradient: Gradient(
colors: [NirvanaColor.white.opacity(0), NirvanaColor.white.opacity(1.0)]), startPoint: .bottom, endPoint: .top)
getWave(peakPercentage: 0.4, troughPercentage: 0.65, peakAltercation: baseLineY + 150, troughAltercation: baseLineY - 90)
.foregroundColor(NirvanaColor.dimTeal.opacity(0.5))
.blur(radius:2)
.offset(x: self.animateWaves ? -1*universalSize.width : 0)
.animation(
Animation.linear(duration: 20).repeatForever(autoreverses: false)
)
)
path.addCurve(
to: CGPoint(x: universalSize.width, y: baseLineY + 30),
control1: CGPoint(x: universalSize.width * 0.2, y: baseLineY - 50),
control2: CGPoint(x: universalSize.width * 0.75, y: baseLineY + 100))
path.addCurve(
to: CGPoint(x: 2*universalSize.width, y: baseLineY),
control1: CGPoint(x: universalSize.width * 1.2, y: baseLineY - 50),
control2: CGPoint(x: universalSize.width * 1.75, y: baseLineY + 100))
path.addLine(to: CGPoint(x: 2*universalSize.width, y: universalSize.height))
path.addLine(to: CGPoint(x: 0, y: universalSize.height))
}
.foregroundColor(Color.orange.opacity(0.3))
.blur(radius:2)
.offset(x: self.animateWaves ? -1*universalSize.width : 0)
.animation(
Animation.linear(duration: 10).repeatForever(autoreverses: false)
)
// wave #3
Path {path in
path.move(
to: CGPoint(
x: 0,
y: baseLineY - 20
getWave(peakPercentage: 0.2, troughPercentage: 0.75, peakAltercation: baseLineY - 50, troughAltercation: baseLineY + 100)
.foregroundColor(Color.orange.opacity(0.3))
.blur(radius:2)
.offset(x: self.animateWaves ? -1*universalSize.width : 0)
.animation(
Animation.linear(duration: 10).repeatForever(autoreverses: false)
)
)
path.addCurve(
to: CGPoint(x: universalSize.width, y: baseLineY),
control1: CGPoint(x: universalSize.width * 0.25, y: baseLineY + 70),
control2: CGPoint(x: universalSize.width * 0.75, y: baseLineY - 100))
path.addCurve(
to: CGPoint(x: 2*universalSize.width, y: baseLineY),
control1: CGPoint(x: universalSize.width * 1.25, y: baseLineY + 70),
control2: CGPoint(x: universalSize.width * 1.75, y: baseLineY - 100))
path.addLine(to: CGPoint(x: 2*universalSize.width, y: universalSize.height))
path.addLine(to: CGPoint(x: 0, y: universalSize.height))
getWave(peakPercentage: 0.25, troughPercentage: 0.75, peakAltercation: baseLineY + 70, troughAltercation: baseLineY - 100)
.foregroundColor(NirvanaColor.teal.opacity(0.3))
.blur(radius:2)
.offset(x: self.animateWaves ? -1*universalSize.width : 0)
.animation(
Animation.linear(duration: 12).repeatForever(autoreverses: false)
)
}
.foregroundColor(NirvanaColor.teal.opacity(0.3))
.blur(radius:2)
.offset(x: self.animateWaves ? -1*universalSize.width : 0)
.animation(
Animation.linear(duration: 12).repeatForever(autoreverses: false)
)
}
.onAppear() {
self.animateWaves = true
}
.ignoresSafeArea(.all)
}
private func getWave(peakPercentage: Double, troughPercentage: Double, peakAltercation: CGFloat, troughAltercation: CGFloat) -> Path {
Path {path in
path.move(
to: CGPoint(
x: 0,
y: baseLineY
)
)
path.addCurve(
to: CGPoint(x: universalSize.width, y: baseLineY),
control1: CGPoint(x: universalSize.width * peakPercentage, y: peakAltercation),
control2: CGPoint(x: universalSize.width * troughPercentage, y: troughAltercation))
path.addCurve(
to: CGPoint(x: 2*universalSize.width, y: baseLineY),
control1: CGPoint(x: universalSize.width * (1 + peakPercentage), y: peakAltercation),
control2: CGPoint(x: universalSize.width * (1 + troughPercentage), y: troughAltercation))
path.addLine(to: CGPoint(x: 2*universalSize.width, y: universalSize.height))
path.addLine(to: CGPoint(x: 0, y: universalSize.height))
}
}
}