Skip to content
Merged
39 changes: 34 additions & 5 deletions Uplift.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,12 @@
897DF9BA2CCDC49B00246B0D /* UpliftAPI in Frameworks */ = {isa = PBXBuildFile; productRef = 897DF9B92CCDC49B00246B0D /* UpliftAPI */; };
89950D8A2B992E8400DFB007 /* ClassesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89950D892B992E8400DFB007 /* ClassesView.swift */; };
8996FEE02BDF351800F13C67 /* NextSessionCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8996FEDF2BDF351800F13C67 /* NextSessionCell.swift */; };
899B186D2CA5FAFB00FAC061 /* ProfileView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 899B186C2CA5FAFB00FAC061 /* ProfileView.swift */; };
89A652F92D02B00000277A16 /* CapacityRemindersView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89A652F62D02B00000277A16 /* CapacityRemindersView.swift */; };
89A652FA2D02B00000277A16 /* RemindersView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89A652F72D02B00000277A16 /* RemindersView.swift */; };
89C34AA12CA66E9C00C579A5 /* CapacityRemindersViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89C34AA02CA66E9000C579A5 /* CapacityRemindersViewModel.swift */; };
89C8658D2BB4779C00758337 /* ClassCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89C8658C2BB4779C00758337 /* ClassCell.swift */; };
89D26F202D7A9196007C839B /* UpliftAPI in Frameworks */ = {isa = PBXBuildFile; productRef = 89D26F1F2D7A9196007C839B /* UpliftAPI */; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
Expand Down Expand Up @@ -186,6 +191,10 @@
897703652BA2028D00F9992F /* ClassesViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ClassesViewModel.swift; sourceTree = "<group>"; };
89950D892B992E8400DFB007 /* ClassesView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ClassesView.swift; sourceTree = "<group>"; };
8996FEDF2BDF351800F13C67 /* NextSessionCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NextSessionCell.swift; sourceTree = "<group>"; };
899B186C2CA5FAFB00FAC061 /* ProfileView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProfileView.swift; sourceTree = "<group>"; };
89A652F62D02B00000277A16 /* CapacityRemindersView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CapacityRemindersView.swift; sourceTree = "<group>"; };
89A652F72D02B00000277A16 /* RemindersView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RemindersView.swift; sourceTree = "<group>"; };
89C34AA02CA66E9000C579A5 /* CapacityRemindersViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CapacityRemindersViewModel.swift; sourceTree = "<group>"; };
89C8658C2BB4779C00758337 /* ClassCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ClassCell.swift; sourceTree = "<group>"; };
/* End PBXFileReference section */

Expand All @@ -205,6 +214,7 @@
63001AD82CC9AD970082AFFA /* GoogleSignIn in Frameworks */,
2EE5F3E22B12EDB6008E0299 /* Apollo in Frameworks */,
2E6785BC2B3A48D700DD3ADA /* WrappingHStack in Frameworks */,
89D26F202D7A9196007C839B /* UpliftAPI in Frameworks */,
2E4F06DC2B4B48DC008905C8 /* UpliftAPI in Frameworks */,
2E090ECB2B12FF5900BAE982 /* UpliftAPI in Frameworks */,
2E45B2452B4F632700FB83B7 /* FirebaseAnalytics in Frameworks */,
Expand Down Expand Up @@ -296,8 +306,10 @@
63CA15862C924B84001620B5 /* Onboarding */,
2E8FE3912B1278B700B3DC6A /* HomeView.swift */,
2E15F5052B39F81B00414BEC /* MainView.swift */,
899B186C2CA5FAFB00FAC061 /* ProfileView.swift */,
89C8658B2BB4778400758337 /* Classes */,
2E1105C02B13D11E00119F5B /* Home */,
89A652F82D02B00000277A16 /* Profile */,
2E15F50A2B3A0AF700414BEC /* Supporting */,
);
path = Views;
Expand All @@ -306,6 +318,7 @@
2E090ED12B1308D500BAE982 /* ViewModels */ = {
isa = PBXGroup;
children = (
89C34AA02CA66E9000C579A5 /* CapacityRemindersViewModel.swift */,
63001AD52CC9ACFF0082AFFA /* LoginViewModel.swift */,
897703652BA2028D00F9992F /* ClassesViewModel.swift */,
2E39D82B2B3BB35000AD238B /* FacilityExpandedViewModel.swift */,
Expand Down Expand Up @@ -491,6 +504,15 @@
path = Onboarding;
sourceTree = "<group>";
};
89A652F82D02B00000277A16 /* Profile */ = {
isa = PBXGroup;
children = (
89A652F62D02B00000277A16 /* CapacityRemindersView.swift */,
89A652F72D02B00000277A16 /* RemindersView.swift */,
);
path = Profile;
sourceTree = "<group>";
};
89C8658B2BB4778400758337 /* Classes */ = {
isa = PBXGroup;
children = (
Expand Down Expand Up @@ -560,6 +582,7 @@
63001AD92CC9AD970082AFFA /* GoogleSignInSwift */,
6338EC5B2CE149AA000BBFD3 /* UpliftAPI */,
6338EC5E2CE14B54000BBFD3 /* UpliftAPI */,
89D26F1F2D7A9196007C839B /* UpliftAPI */,
);
productName = Uplift;
productReference = 2E8FE38C2B1278B700B3DC6A /* Uplift.app */;
Expand All @@ -573,7 +596,7 @@
attributes = {
BuildIndependentTargetsInParallel = 1;
LastSwiftUpdateCheck = 1500;
LastUpgradeCheck = 1500;
LastUpgradeCheck = 1610;
ORGANIZATIONNAME = "Cornell AppDev";
TargetAttributes = {
2E15F4EA2B39255B00414BEC = {
Expand All @@ -600,7 +623,7 @@
2EC3EE642B3C000E00E927BF /* XCRemoteSwiftPackageReference "Kingfisher" */,
2E45B23E2B4E361100FB83B7 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */,
63001AD42CC9A6B20082AFFA /* XCRemoteSwiftPackageReference "GoogleSignIn-iOS" */,
6338EC5D2CE14B54000BBFD3 /* XCLocalSwiftPackageReference "UpliftAPI" */,
89D26F1E2D7A9196007C839B /* XCLocalSwiftPackageReference "UpliftAPI" */,
);
productRefGroup = 2E8FE38D2B1278B700B3DC6A /* Products */;
projectDirPath = "";
Expand Down Expand Up @@ -725,8 +748,6 @@
2E15F5062B39F81B00414BEC /* MainView.swift in Sources */,
8996FEE02BDF351800F13C67 /* NextSessionCell.swift in Sources */,
6329A4482CA0F89D00D30A2F /* CreateProfileView.swift in Sources */,
8996FEE02BDF351800F13C67 /* NextSessionCell.swift in Sources */,
6329A4482CA0F89D00D30A2F /* CreateProfileView.swift in Sources */,
2E39D82A2B3B9F3D00AD238B /* FacilityExpandedView.swift in Sources */,
2EB161C92BBC9C3100493B71 /* StretchyModifier.swift in Sources */,
6329A44A2CA0FE8A00D30A2F /* CheckBoxView.swift in Sources */,
Expand All @@ -747,15 +768,19 @@
2E8FE3902B1278B700B3DC6A /* UpliftApp.swift in Sources */,
2EE5F3C82B12E094008E0299 /* ApolloClientProtocol.swift in Sources */,
2E39D8262B3B6C6500AD238B /* SlidingTabBarView.swift in Sources */,
899B186D2CA5FAFB00FAC061 /* ProfileView.swift in Sources */,
89599A502BD4B4B600DA44DE /* FitnessClassInstance.swift in Sources */,
2E1105C42B13D1B000119F5B /* DummyData.swift in Sources */,
2E15F4E22B3917B200414BEC /* Status.swift in Sources */,
2E3DC2432BCD2F1D0063B369 /* GiveawayModal.swift in Sources */,
2E15F5042B39E54700414BEC /* LocationManager.swift in Sources */,
89A652F92D02B00000277A16 /* CapacityRemindersView.swift in Sources */,
89A652FA2D02B00000277A16 /* RemindersView.swift in Sources */,
2E39D81E2B3B610200AD238B /* UINavigationController+Extension.swift in Sources */,
63001AD62CC9ACFF0082AFFA /* LoginViewModel.swift in Sources */,
2E15F4DC2B39117300414BEC /* OpenHours.swift in Sources */,
2E090ED62B13121600BAE982 /* Constants.swift in Sources */,
89C34AA12CA66E9C00C579A5 /* CapacityRemindersViewModel.swift in Sources */,
2E39D8282B3B726D00AD238B /* GymTabType.swift in Sources */,
2E2748CB2BCD37810023882E /* GiveawayPopup.swift in Sources */,
2E15F4DE2B3912C700414BEC /* Facility.swift in Sources */,
Expand Down Expand Up @@ -1055,7 +1080,7 @@
/* End XCConfigurationList section */

/* Begin XCLocalSwiftPackageReference section */
6338EC5D2CE14B54000BBFD3 /* XCLocalSwiftPackageReference "UpliftAPI" */ = {
89D26F1E2D7A9196007C839B /* XCLocalSwiftPackageReference "UpliftAPI" */ = {
isa = XCLocalSwiftPackageReference;
relativePath = UpliftAPI;
};
Expand Down Expand Up @@ -1193,6 +1218,10 @@
isa = XCSwiftPackageProductDependency;
productName = UpliftAPI;
};
89D26F1F2D7A9196007C839B /* UpliftAPI */ = {
isa = XCSwiftPackageProductDependency;
productName = UpliftAPI;
};
/* End XCSwiftPackageProductDependency section */
};
rootObject = 2E8FE3842B1278B700B3DC6A /* Project object */;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1500"
LastUpgradeVersion = "1610"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
Expand Down
2 changes: 1 addition & 1 deletion Uplift.xcodeproj/xcshareddata/xcschemes/Uplift.xcscheme
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1500"
LastUpgradeVersion = "1610"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
23 changes: 23 additions & 0 deletions Uplift/Resources/Assets.xcassets/capacity.imageset/Contents.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"images" : [
{
"filename" : "Capacities.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Capacities (1).png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Capacities (2).png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
5 changes: 5 additions & 0 deletions Uplift/Utils/Constants.swift
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ struct Constants {
static let turquoise = Color(red: 74/255, green: 210/255, blue: 242/255)

// Gray
static let lightGray = Color(red: 248/255, green: 250/255, blue: 250/255)
static let gray00 = Color(red: 239/255, green: 241/255, blue: 244/255)
static let gray01 = Color(red: 229/255, green: 236/255, blue: 237/255)
static let gray02 = Color(red: 209/255, green: 213/255, blue: 218/255)
static let gray03 = Color(red: 161/255, green: 165/255, blue: 166/255)
Expand Down Expand Up @@ -104,6 +106,7 @@ struct Constants {
static let calendar = Image("calendar")
static let camera = Image("camera")
static let cameraMini = Image("camera_mini")
static let capacity = Image("capacity")
static let clock = Image("clock")
static let cross = Image("cross")
static let dumbbellLarge = Image("dumbbell_large")
Expand Down Expand Up @@ -135,6 +138,8 @@ struct Constants {
static let gymDetailHorizontal: CGFloat = 24
static let gymDetailSpacing: CGFloat = 20
static let homeHorizontal: CGFloat = 16
static let remindersHorizontal: CGFloat = 16
static let remindersVertical: CGFloat = 24
static let tabBarHeight: CGFloat = 64
}

Expand Down
23 changes: 23 additions & 0 deletions Uplift/ViewModels/CapacityRemindersViewModel.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
//
// CapacityRemindersViewModel.swift
// Uplift
//
// Created by Caitlyn Jin on 9/27/24.
// Copyright © 2024 Cornell AppDev. All rights reserved.
//

import Foundation

extension CapacityRemindersView {

/// The ViewModel for the Classes page view.
@MainActor
class ViewModel: ObservableObject {

// MARK: - Properties

@Published var selectedDays: [DayOfWeek] = []
@Published var selectedLocations: [String] = []

}
}
2 changes: 2 additions & 0 deletions Uplift/Views/ClassesView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ struct ClassesView: View {
@StateObject private var viewModel = ViewModel()
@State private var weeks: [Int] = [0, 1, 2] // Integers represent the number of weeks from the current week

// MARK: - UI

var body: some View {
NavigationStack {
VStack {
Expand Down
16 changes: 16 additions & 0 deletions Uplift/Views/MainView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ struct MainView: View {
case .classes:
ClassesView()
.environmentObject(tabBarProp)
case .profile:
ProfileView()
}
}
.overlay(alignment: .bottom) {
Expand Down Expand Up @@ -76,6 +78,10 @@ struct MainView: View {
tabItem(for: .classes)

Spacer()

tabItem(for: .profile)

Spacer()
}
.frame(height: Constants.Padding.tabBarHeight)
.background(Constants.Colors.yellow)
Expand Down Expand Up @@ -104,6 +110,15 @@ struct MainView: View {
name: "Classes"
)
}
case .profile:
Button {
selectedTab = .profile
} label: {
tabItemView(
icon: selectedTab == .profile ? Constants.Images.whistleSolid : Constants.Images.whistleOutline,
name: "Profile"
)
}
}
}

Expand All @@ -128,6 +143,7 @@ extension MainView {
private enum Screen {
case home
case classes
case profile
}

}
Expand Down
Loading