From 6a020d6c32034e5736e6b9b989f5fdea789cfd0f Mon Sep 17 00:00:00 2001 From: talksik Date: Thu, 16 Dec 2021 12:18:59 -0800 Subject: [PATCH] cleaning up home page background --- nirvana-ios.xcodeproj/project.pbxproj | 17 -- .../xcshareddata/swiftpm/Package.resolved | 9 - .../v2/InnerCircle/InnerCircleView.swift | 160 ++++++++---------- 3 files changed, 66 insertions(+), 120 deletions(-) diff --git a/nirvana-ios.xcodeproj/project.pbxproj b/nirvana-ios.xcodeproj/project.pbxproj index 84cbf68..567256d 100644 --- a/nirvana-ios.xcodeproj/project.pbxproj +++ b/nirvana-ios.xcodeproj/project.pbxproj @@ -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" */; diff --git a/nirvana-ios.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/nirvana-ios.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index e8b8529..9d5cafb 100644 --- a/nirvana-ios.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/nirvana-ios.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -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", diff --git a/nirvana-ios/v2/InnerCircle/InnerCircleView.swift b/nirvana-ios/v2/InnerCircle/InnerCircleView.swift index e32dc46..2eda35c 100644 --- a/nirvana-ios/v2/InnerCircle/InnerCircleView.swift +++ b/nirvana-ios/v2/InnerCircle/InnerCircleView.swift @@ -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)) + } } }