diff --git a/Marigold.xcodeproj/project.pbxproj b/Marigold.xcodeproj/project.pbxproj index 5ddca0a..207287b 100644 --- a/Marigold.xcodeproj/project.pbxproj +++ b/Marigold.xcodeproj/project.pbxproj @@ -29,6 +29,7 @@ DEBF7C982B847FD700A82249 /* TextButtonView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEBF7C972B847FD700A82249 /* TextButtonView.swift */; }; 7E3FB8412B8578DF004B7FE2 /* HeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E3FB8402B8578DF004B7FE2 /* HeaderView.swift */; }; DEBF7C942B84710B00A82249 /* EventCardView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEBF7C932B84710B00A82249 /* EventCardView.swift */; }; + FE1144862B87CF4800BECEA8 /* ClubCardView.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE1144852B87CF4800BECEA8 /* ClubCardView.swift */; }; DEBF7C962B84737100A82249 /* HomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEBF7C952B84737100A82249 /* HomeView.swift */; }; /* End PBXBuildFile section */ @@ -54,7 +55,9 @@ DEBF7C972B847FD700A82249 /* TextButtonView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextButtonView.swift; sourceTree = ""; }; 7E3FB8402B8578DF004B7FE2 /* HeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HeaderView.swift; sourceTree = ""; }; DEBF7C932B84710B00A82249 /* EventCardView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EventCardView.swift; sourceTree = ""; }; + FE1144852B87CF4800BECEA8 /* ClubCardView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ClubCardView.swift; sourceTree = ""; }; DEBF7C952B84737100A82249 /* HomeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeView.swift; sourceTree = ""; }; + /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -133,6 +136,7 @@ 454681EB2A8995400033B8D3 /* Profile */, 450C5BA52A7DC9D5005353EC /* Auth */, 453E439F2A6DF4BC00366A25 /* ContentView.swift */, + FE1144852B87CF4800BECEA8 /* ClubCardView.swift */, 453E43BA2A6DFBAD00366A25 /* CardView.swift */, 453E43BC2A6E1D5900366A25 /* EventsView.swift */, 450C5BA32A7DA742005353EC /* WelcomeView.swift */, @@ -240,6 +244,7 @@ 453E43BD2A6E1D5900366A25 /* EventsView.swift in Sources */, 450C5BA42A7DA742005353EC /* WelcomeView.swift in Sources */, 453E43B62A6DF6AB00366A25 /* Club.swift in Sources */, + FE1144862B87CF4800BECEA8 /* ClubCardView.swift in Sources */, 450C5BA72A7DC9E0005353EC /* SignUpView.swift in Sources */, DEBF7C942B84710B00A82249 /* EventCardView.swift in Sources */, 453E43B22A6DF52000366A25 /* User.swift in Sources */, diff --git a/Marigold.xcodeproj/project.xcworkspace/xcuserdata/a1.xcuserdatad/UserInterfaceState.xcuserstate b/Marigold.xcodeproj/project.xcworkspace/xcuserdata/a1.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000..90b06ee Binary files /dev/null and b/Marigold.xcodeproj/project.xcworkspace/xcuserdata/a1.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/Marigold.xcodeproj/project.xcworkspace/xcuserdata/adhakal2.xcuserdatad/UserInterfaceState.xcuserstate b/Marigold.xcodeproj/project.xcworkspace/xcuserdata/adhakal2.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000..4c4ffab Binary files /dev/null and b/Marigold.xcodeproj/project.xcworkspace/xcuserdata/adhakal2.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/Marigold.xcodeproj/xcuserdata/a1.xcuserdatad/xcschemes/xcschememanagement.plist b/Marigold.xcodeproj/xcuserdata/a1.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..64463f8 --- /dev/null +++ b/Marigold.xcodeproj/xcuserdata/a1.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,35 @@ + + + + + SchemeUserState + + GettingStarted (Playground) 1.xcscheme + + isShown + + orderHint + 2 + + GettingStarted (Playground) 2.xcscheme + + isShown + + orderHint + 3 + + GettingStarted (Playground).xcscheme + + isShown + + orderHint + 1 + + Marigold.xcscheme_^#shared#^_ + + orderHint + 0 + + + + diff --git a/Marigold.xcodeproj/xcuserdata/adhakal2.xcuserdatad/xcschemes/xcschememanagement.plist b/Marigold.xcodeproj/xcuserdata/adhakal2.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..64463f8 --- /dev/null +++ b/Marigold.xcodeproj/xcuserdata/adhakal2.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,35 @@ + + + + + SchemeUserState + + GettingStarted (Playground) 1.xcscheme + + isShown + + orderHint + 2 + + GettingStarted (Playground) 2.xcscheme + + isShown + + orderHint + 3 + + GettingStarted (Playground).xcscheme + + isShown + + orderHint + 1 + + Marigold.xcscheme_^#shared#^_ + + orderHint + 0 + + + + diff --git a/Marigold/Assets.xcassets/adc/Contents.json b/Marigold/Assets.xcassets/adc/Contents.json new file mode 100644 index 0000000..73c0059 --- /dev/null +++ b/Marigold/Assets.xcassets/adc/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Marigold/Assets.xcassets/adc/adc-image-lg.imageset/5e7cfb29fd10257c7e079c855bfc989b.jpeg b/Marigold/Assets.xcassets/adc/adc-image-lg.imageset/5e7cfb29fd10257c7e079c855bfc989b.jpeg new file mode 100644 index 0000000..7e55980 Binary files /dev/null and b/Marigold/Assets.xcassets/adc/adc-image-lg.imageset/5e7cfb29fd10257c7e079c855bfc989b.jpeg differ diff --git a/Marigold/Assets.xcassets/adc/adc-image-lg.imageset/Contents.json b/Marigold/Assets.xcassets/adc/adc-image-lg.imageset/Contents.json new file mode 100644 index 0000000..c39f32f --- /dev/null +++ b/Marigold/Assets.xcassets/adc/adc-image-lg.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "5e7cfb29fd10257c7e079c855bfc989b.jpeg", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Marigold/Assets.xcassets/adc/adc-image-sm.imageset/276264b374573f439a5a1b0878151739.jpeg b/Marigold/Assets.xcassets/adc/adc-image-sm.imageset/276264b374573f439a5a1b0878151739.jpeg new file mode 100644 index 0000000..f51b637 Binary files /dev/null and b/Marigold/Assets.xcassets/adc/adc-image-sm.imageset/276264b374573f439a5a1b0878151739.jpeg differ diff --git a/Marigold/Assets.xcassets/adc/adc-image-sm.imageset/Contents.json b/Marigold/Assets.xcassets/adc/adc-image-sm.imageset/Contents.json new file mode 100644 index 0000000..6ad1121 --- /dev/null +++ b/Marigold/Assets.xcassets/adc/adc-image-sm.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "276264b374573f439a5a1b0878151739.jpeg", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Marigold/Localizable.xcstrings b/Marigold/Localizable.xcstrings index f57c678..38e7d72 100644 --- a/Marigold/Localizable.xcstrings +++ b/Marigold/Localizable.xcstrings @@ -13,6 +13,15 @@ } } } + }, + "• 1 capital letter" : { + + }, + "• 1 number" : { + + }, + "• 8 characters" : { + }, "Are you sure you want to delete your account? This action cannot be undone." : { @@ -20,10 +29,13 @@ "Clubs" : { }, - "Confirm Password" : { + "Create Account" : { + + }, + "Create Event" : { }, - "Create Account" : { + "Create Post" : { }, "Delete Account" : { @@ -71,7 +83,7 @@ "NC State University" : { }, - "Password" : { + "Passwords must match" : { }, "Please try again." : { @@ -97,9 +109,15 @@ }, "Upcoming Events" : { + }, + "Vice President" : { + }, "Welcome Back!" : { + }, + "Your password must contain at least:" : { + } }, "version" : "1.0" diff --git a/Marigold/View/ClubCardView.swift b/Marigold/View/ClubCardView.swift new file mode 100644 index 0000000..0c5adff --- /dev/null +++ b/Marigold/View/ClubCardView.swift @@ -0,0 +1,94 @@ +// +// ClubCardView.swift +// Marigold +// +// Created by Amodh on 2/22/24. +// + +import SwiftUI + +struct ClubCardView: View { + private var club: Club + + init(club: Club) { + self.club = club + } + + var body: some View { + VStack(alignment: .leading) { + // Club Banner + Image(.adcImageLg) + .resizable() + .scaledToFill() + .frame(width: 357, height: 168) + .clipped() + + HStack(alignment: .top) { + // Club Logo + Image(.adcImageSm) + .resizable() + .scaledToFill() + .frame(width: 26, height: 26) + .clipShape(Circle()) + .padding([.leading], 6.0) + .padding([.top], 8.0) + .clipped() + + VStack { + HStack { + // Club Name + Text(club.fullName) + .font(.system(size: 20.0)) + .fontWeight(.bold) + .padding([.top], 8.0) + + Spacer() + } + + HStack { + // Club Role + Text("Vice President") + .font(.system(size: 12.0)) + + // Create Event Button + Button(action: {}, label: { + Text("Create Event") + .fontWeight(.bold) + .font(.system(size: 12.0)) + .foregroundColor(.purple) + .frame(width: 104, height: 26) + }) + .background(.opacity(0.1)) + .clipShape(.capsule) + + // Create Post Button + Button(action: {}, label: { + Text("Create Post") + .fontWeight(.bold) + .font(.system(size: 12.0)) + .foregroundColor(.purple) + .frame(width: 104, height: 26)}) + .background(.opacity(0.1)) + .clipShape(.capsule) + + Spacer() + } + + Spacer() + } + } + }.cornerRadius(10.0) + .frame(width: 359, height: 264) + .background( + RoundedRectangle(cornerRadius: 20) + .fill(Color.white) + .shadow(color: .gray.opacity(0.5), radius: 3) + .mask(RoundedRectangle(cornerRadius: 50.0).padding(.bottom, -20)) + ) + + } +} + +#Preview { + ClubCardView(club: Club.adc) +}