diff --git a/.DS_Store b/.DS_Store index 9741d79..93d4299 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/.gitignore b/.gitignore index 0d7c7ab..347ea9a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,10 @@ *.xcuserstate +*.xcuserstate +*.resolved +*.pbxproj +*.xcuserstate +*.xcuserstate +bpart.xcodeproj/project.xcworkspace/xcuserdata/alexcho.xcuserdatad/UserInterfaceState.xcuserstate +bpart.xcodeproj/xcuserdata/alexcho.xcuserdatad/xcschemes/xcschememanagement.plist +*.xcuserstate diff --git a/README.md b/README.md new file mode 100644 index 0000000..f93f696 --- /dev/null +++ b/README.md @@ -0,0 +1,14 @@ +# BPart - Be Part of Creating a Better World! + + +### SDGs 프로젝트의 최종 목표 달성과 성과를 확인하고 개인이 쉽게 참여할 수 있는 후원 플랫폼 +### 1st Hackathon @ Handong Global University: NORITHON + +![](https://velog.velcdn.com/images/alexcho617/post/9c9c9e57-ee2f-49c8-a208-2e21285384d4/image.png) +![](https://velog.velcdn.com/images/alexcho617/post/fe752c10-0c07-4bc1-b930-f73b6f5252d6/image.png) +![](https://velog.velcdn.com/images/alexcho617/post/dd927bb4-16ce-41b9-8250-1160e84b0efd/image.png) +![](https://velog.velcdn.com/images/alexcho617/post/ba4b53ab-40a4-43bc-b244-974ed2c28b42/image.png) + + + +Made by 김에녹 박예지 박정은 조성진 채정영 with ❤️ diff --git a/Services/FirestoreFundingManager.swift b/Services/FirestoreFundingManager.swift index e8e8218..9b7cac3 100644 --- a/Services/FirestoreFundingManager.swift +++ b/Services/FirestoreFundingManager.swift @@ -28,12 +28,12 @@ class FirestoreFundingManager: ObservableObject { for document in snapshot.documents{ let data = document.data() - - let currentAmount = data["currentAmount"] as? Int ?? 0 - let targetAmount = data["targetAmount"] as? Int ?? 0 - let title = data["title"] as? String ?? "" - let id = data["id"] as? String ?? "" - let media = data["media"] as? String ?? "" +// +// let currentAmount = data["currentAmount"] as? Int ?? 0 +// let targetAmount = data["targetAmount"] as? Int ?? 0 +// let title = data["title"] as? String ?? "" +// let id = data["id"] as? String ?? "" +// let media = data["media"] as? String ?? "" print(data) // let funding = Funding(title: title, currentAmount: currentAmount, targetAmount: targetAmount, id: id,media: media) // self.fundings.append(funding) @@ -43,15 +43,4 @@ class FirestoreFundingManager: ObservableObject { } } } -// func addDog(dogBreed: String){ -// let db = Firestore.firestore() -// let ref = db.collection("dogs").document(dogBreed) -// ref.setData(["breed" : dogBreed, "id":999]){ error in -// if let error = error { -// print(error) -// } -// -// } -// } - } diff --git a/Shared/Font+Extension.swift b/Shared/Font+Extension.swift index 2d5ae65..8fb8515 100644 --- a/Shared/Font+Extension.swift +++ b/Shared/Font+Extension.swift @@ -9,12 +9,20 @@ import Foundation import SwiftUI extension Font { + static let customheading0 = Font.custom("PretendardVariable", size: 25).weight(.heavy) static let customheading1 = Font.custom("PretendardVariable", size: 22).weight(.semibold) + static let customtitle2 = Font.custom("PretendardVariable", size: 26.5).weight(.semibold) static let customtitle3 = Font.custom("PretendardVariable", size: 21.5).weight(.medium) + static let customtitle5 = Font.custom("PretendardVariable", size: 13).weight(.medium) static let custombody2 = Font.custom("PretendardVariable", size: 13).weight(.medium) static let custombody3 = Font.custom("PretendardVariable", size: 8).weight(.medium) + static let custombody4 = Font.custom("PretendardVariable", size: 11).weight(.medium) + static let customhead4 = Font.custom("PretendardVariable", size: 12).weight(.medium) + static let customtitle7 = Font.custom("PretendardVariable", size: 10).weight(.medium) + + static let menuTitle = Font.custom("PretendardVariable", size: 10) static let bargraphTitle = Font.custom("PretendardVariable", size: 11).weight(.bold) static let bargraphLarge = Font.custom("PretendardVariable", size: 13).weight(.medium) diff --git a/bpart.xcodeproj/project.pbxproj b/bpart.xcodeproj/project.pbxproj index 2ab67ef..f95c456 100644 --- a/bpart.xcodeproj/project.pbxproj +++ b/bpart.xcodeproj/project.pbxproj @@ -7,6 +7,7 @@ objects = { /* Begin PBXBuildFile section */ + 5749D5582984517100C03227 /* InputNameView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FD2533629840FD8008D6657 /* InputNameView.swift */; }; 57713CCC2983469500F4C288 /* Funding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57713CCB2983469500F4C288 /* Funding.swift */; }; 57713CCE298346BA00F4C288 /* HomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57713CCD298346BA00F4C288 /* HomeView.swift */; }; 57713CD32983470900F4C288 /* FirestoreFundingManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57713CD22983470900F4C288 /* FirestoreFundingManager.swift */; }; @@ -29,10 +30,15 @@ 578C2355298343DE0052F518 /* FirebaseFirestore in Frameworks */ = {isa = PBXBuildFile; productRef = 578C2354298343DE0052F518 /* FirebaseFirestore */; }; 578C2357298343DE0052F518 /* FirebaseFunctions in Frameworks */ = {isa = PBXBuildFile; productRef = 578C2356298343DE0052F518 /* FirebaseFunctions */; }; 578C2359298343DE0052F518 /* FirebaseStorage in Frameworks */ = {isa = PBXBuildFile; productRef = 578C2358298343DE0052F518 /* FirebaseStorage */; }; + 579E30822983C78E002F37B5 /* ResultView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 579E30812983C78E002F37B5 /* ResultView.swift */; }; + 579E30842983C866002F37B5 /* NeedsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 579E30832983C866002F37B5 /* NeedsView.swift */; }; + 57A96C3429839DE3000FBEFE /* FundingResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57A96C3329839DE3000FBEFE /* FundingResult.swift */; }; 6FD2532829838425008D6657 /* RegisterView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FD2532729838425008D6657 /* RegisterView.swift */; }; 6FD2532A2983895C008D6657 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FD253292983895C008D6657 /* OnboardingView.swift */; }; 6FD2532C2983933B008D6657 /* NavigationBarBackButton+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FD2532B2983933B008D6657 /* NavigationBarBackButton+Extension.swift */; }; - 57A96C3429839DE3000FBEFE /* FundingResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57A96C3329839DE3000FBEFE /* FundingResult.swift */; }; + 6FD25335298409A7008D6657 /* SwiftUIPager in Frameworks */ = {isa = PBXBuildFile; productRef = 6FD25334298409A7008D6657 /* SwiftUIPager */; }; + 6FD253392984104D008D6657 /* OnboardingStartView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FD253382984104D008D6657 /* OnboardingStartView.swift */; }; + 6FF96F072984C2FE001BEB65 /* NeedsData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FF96F062984C2FE001BEB65 /* NeedsData.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -75,10 +81,16 @@ 578C23402983432C0052F518 /* bpartUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = bpartUITests.swift; sourceTree = ""; }; 578C23422983432C0052F518 /* bpartUITestsLaunchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = bpartUITestsLaunchTests.swift; sourceTree = ""; }; 578C234F298343710052F518 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; + 579E30812983C78E002F37B5 /* ResultView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ResultView.swift; sourceTree = ""; }; + 579E30832983C866002F37B5 /* NeedsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NeedsView.swift; sourceTree = ""; }; + 57A96C3329839DE3000FBEFE /* FundingResult.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundingResult.swift; sourceTree = ""; }; 6FD2532729838425008D6657 /* RegisterView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RegisterView.swift; sourceTree = ""; }; 6FD253292983895C008D6657 /* OnboardingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = ""; }; 6FD2532B2983933B008D6657 /* NavigationBarBackButton+Extension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "NavigationBarBackButton+Extension.swift"; sourceTree = ""; }; - 57A96C3329839DE3000FBEFE /* FundingResult.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FundingResult.swift; sourceTree = ""; }; + 6FD2532D2983F9B0008D6657 /* PageState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PageState.swift; sourceTree = ""; }; + 6FD2533629840FD8008D6657 /* InputNameView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InputNameView.swift; sourceTree = ""; }; + 6FD253382984104D008D6657 /* OnboardingStartView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingStartView.swift; sourceTree = ""; }; + 6FF96F062984C2FE001BEB65 /* NeedsData.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NeedsData.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -88,6 +100,7 @@ files = ( 578C2357298343DE0052F518 /* FirebaseFunctions in Frameworks */, 578C2359298343DE0052F518 /* FirebaseStorage in Frameworks */, + 6FD25335298409A7008D6657 /* SwiftUIPager in Frameworks */, 578C2353298343DE0052F518 /* FirebaseAuth in Frameworks */, 578C2355298343DE0052F518 /* FirebaseFirestore in Frameworks */, ); @@ -115,9 +128,13 @@ children = ( 6FD2532729838425008D6657 /* RegisterView.swift */, 6FD253292983895C008D6657 /* OnboardingView.swift */, + 6FD2533629840FD8008D6657 /* InputNameView.swift */, + 6FD253382984104D008D6657 /* OnboardingStartView.swift */, 57713CE62983563600F4C288 /* MainView.swift */, 57713CCD298346BA00F4C288 /* HomeView.swift */, 57A96C3329839DE3000FBEFE /* FundingResult.swift */, + 579E30832983C866002F37B5 /* NeedsView.swift */, + 579E30812983C78E002F37B5 /* ResultView.swift */, 57713CE22983548900F4C288 /* MyPageView.swift */, 57713CE42983549300F4C288 /* FundingMapView.swift */, 57713CD6298347EA00F4C288 /* FundingDetailView.swift */, @@ -129,6 +146,7 @@ isa = PBXGroup; children = ( 57713CCB2983469500F4C288 /* Funding.swift */, + 6FF96F062984C2FE001BEB65 /* NeedsData.swift */, ); path = Models; sourceTree = ""; @@ -181,6 +199,7 @@ 578C23252983432A0052F518 /* bpartApp.swift */, 578C234F298343710052F518 /* GoogleService-Info.plist */, 578C23272983432A0052F518 /* ContentView.swift */, + 6FD2532D2983F9B0008D6657 /* PageState.swift */, 578C23292983432C0052F518 /* Assets.xcassets */, 57713CC92983465400F4C288 /* Models */, 57713CC82983464E00F4C288 /* Views */, @@ -235,6 +254,7 @@ 578C2354298343DE0052F518 /* FirebaseFirestore */, 578C2356298343DE0052F518 /* FirebaseFunctions */, 578C2358298343DE0052F518 /* FirebaseStorage */, + 6FD25334298409A7008D6657 /* SwiftUIPager */, ); productName = bpart; productReference = 578C23222983432A0052F518 /* bpart.app */; @@ -310,6 +330,7 @@ mainGroup = 578C23192983432A0052F518; packageReferences = ( 578C2351298343DE0052F518 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */, + 6FD25333298409A7008D6657 /* XCRemoteSwiftPackageReference "SwiftUIPager" */, ); productRefGroup = 578C23232983432A0052F518 /* Products */; projectDirPath = ""; @@ -356,18 +377,20 @@ buildActionMask = 2147483647; files = ( 578C23282983432A0052F518 /* ContentView.swift in Sources */, - 57713CD92983480000F4C288 /* FundingDetailViewModel.swift in Sources */, + 6FD253392984104D008D6657 /* OnboardingStartView.swift in Sources */, 6FD2532829838425008D6657 /* RegisterView.swift in Sources */, - 57713CDB29834B3E00F4C288 /* Constants.swift in Sources */, - 57713CD52983475900F4C288 /* HomeViewModel.swift in Sources */, + 6FF96F072984C2FE001BEB65 /* NeedsData.swift in Sources */, 57713CE72983563600F4C288 /* MainView.swift in Sources */, 57713CD32983470900F4C288 /* FirestoreFundingManager.swift in Sources */, 57713CCE298346BA00F4C288 /* HomeView.swift in Sources */, 57713CE32983548900F4C288 /* MyPageView.swift in Sources */, 57713CE52983549300F4C288 /* FundingMapView.swift in Sources */, 57713CE929838A4500F4C288 /* Color+Extension.swift in Sources */, + 579E30822983C78E002F37B5 /* ResultView.swift in Sources */, 57713CE12983506900F4C288 /* Font+Extension.swift in Sources */, 57A96C3429839DE3000FBEFE /* FundingResult.swift in Sources */, + 5749D5582984517100C03227 /* InputNameView.swift in Sources */, + 579E30842983C866002F37B5 /* NeedsView.swift in Sources */, 57713CCC2983469500F4C288 /* Funding.swift in Sources */, 6FD2532C2983933B008D6657 /* NavigationBarBackButton+Extension.swift in Sources */, 578C23262983432A0052F518 /* bpartApp.swift in Sources */, @@ -540,6 +563,7 @@ INFOPLIST_KEY_UILaunchScreen_Generation = YES; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + IPHONEOS_DEPLOYMENT_TARGET = 16.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -570,6 +594,7 @@ INFOPLIST_KEY_UILaunchScreen_Generation = YES; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; + IPHONEOS_DEPLOYMENT_TARGET = 16.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -709,6 +734,14 @@ kind = branch; }; }; + 6FD25333298409A7008D6657 /* XCRemoteSwiftPackageReference "SwiftUIPager" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/fermoya/SwiftUIPager.git"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 2.0.0; + }; + }; /* End XCRemoteSwiftPackageReference section */ /* Begin XCSwiftPackageProductDependency section */ @@ -732,6 +765,11 @@ package = 578C2351298343DE0052F518 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */; productName = FirebaseStorage; }; + 6FD25334298409A7008D6657 /* SwiftUIPager */ = { + isa = XCSwiftPackageProductDependency; + package = 6FD25333298409A7008D6657 /* XCRemoteSwiftPackageReference "SwiftUIPager" */; + productName = SwiftUIPager; + }; /* End XCSwiftPackageProductDependency section */ }; rootObject = 578C231A2983432A0052F518 /* Project object */; diff --git a/bpart.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/bpart.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved deleted file mode 100644 index eadd863..0000000 --- a/bpart.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ /dev/null @@ -1,113 +0,0 @@ -{ - "pins" : [ - { - "identity" : "abseil-cpp-swiftpm", - "kind" : "remoteSourceControl", - "location" : "https://github.com/firebase/abseil-cpp-SwiftPM.git", - "state" : { - "revision" : "583de9bd60f66b40e78d08599cc92036c2e7e4e1", - "version" : "0.20220203.2" - } - }, - { - "identity" : "boringssl-swiftpm", - "kind" : "remoteSourceControl", - "location" : "https://github.com/firebase/boringssl-SwiftPM.git", - "state" : { - "revision" : "dd3eda2b05a3f459fc3073695ad1b28659066eab", - "version" : "0.9.1" - } - }, - { - "identity" : "firebase-ios-sdk", - "kind" : "remoteSourceControl", - "location" : "https://github.com/firebase/firebase-ios-sdk.git", - "state" : { - "branch" : "master", - "revision" : "4171a3b5a8875380eb271f628571032ec86ff174" - } - }, - { - "identity" : "googleappmeasurement", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/GoogleAppMeasurement.git", - "state" : { - "revision" : "9a09ece724128e8d1e14c5133b87c0e236844ac0", - "version" : "10.4.0" - } - }, - { - "identity" : "googledatatransport", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/GoogleDataTransport.git", - "state" : { - "revision" : "f6b558e3f801f2cac336b04f615ce111fa9ddaa0", - "version" : "9.2.1" - } - }, - { - "identity" : "googleutilities", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/GoogleUtilities.git", - "state" : { - "revision" : "0543562f85620b5b7c510c6bcbef75b562a5127b", - "version" : "7.11.0" - } - }, - { - "identity" : "grpc-ios", - "kind" : "remoteSourceControl", - "location" : "https://github.com/grpc/grpc-ios.git", - "state" : { - "revision" : "8440b914756e0d26d4f4d054a1c1581daedfc5b6", - "version" : "1.44.3-grpc" - } - }, - { - "identity" : "gtm-session-fetcher", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/gtm-session-fetcher.git", - "state" : { - "revision" : "96d7cc73a71ce950723aa3c50ce4fb275ae180b8", - "version" : "3.1.0" - } - }, - { - "identity" : "leveldb", - "kind" : "remoteSourceControl", - "location" : "https://github.com/firebase/leveldb.git", - "state" : { - "revision" : "0706abcc6b0bd9cedfbb015ba840e4a780b5159b", - "version" : "1.22.2" - } - }, - { - "identity" : "nanopb", - "kind" : "remoteSourceControl", - "location" : "https://github.com/firebase/nanopb.git", - "state" : { - "revision" : "819d0a2173aff699fb8c364b6fb906f7cdb1a692", - "version" : "2.30909.0" - } - }, - { - "identity" : "promises", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/promises.git", - "state" : { - "revision" : "3e4e743631e86c8c70dbc6efdc7beaa6e90fd3bb", - "version" : "2.1.1" - } - }, - { - "identity" : "swift-protobuf", - "kind" : "remoteSourceControl", - "location" : "https://github.com/apple/swift-protobuf.git", - "state" : { - "revision" : "ab3a58b7209a17d781c0d1dbb3e1ff3da306bae8", - "version" : "1.20.3" - } - } - ], - "version" : 2 -} diff --git a/bpart.xcodeproj/project.xcworkspace/xcuserdata/alexcho.xcuserdatad/UserInterfaceState.xcuserstate b/bpart.xcodeproj/project.xcworkspace/xcuserdata/alexcho.xcuserdatad/UserInterfaceState.xcuserstate index d8ecfb0..775c2de 100644 Binary files a/bpart.xcodeproj/project.xcworkspace/xcuserdata/alexcho.xcuserdatad/UserInterfaceState.xcuserstate and b/bpart.xcodeproj/project.xcworkspace/xcuserdata/alexcho.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/bpart.xcodeproj/project.xcworkspace/xcuserdata/chaejeong-yeong.xcuserdatad/UserInterfaceState.xcuserstate b/bpart.xcodeproj/project.xcworkspace/xcuserdata/chaejeong-yeong.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index c3eeafc..0000000 Binary files a/bpart.xcodeproj/project.xcworkspace/xcuserdata/chaejeong-yeong.xcuserdatad/UserInterfaceState.xcuserstate and /dev/null differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/100.png b/bpart/Assets.xcassets/AppIcon.appiconset/100.png new file mode 100644 index 0000000..e4b7e0f Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/100.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/102.png b/bpart/Assets.xcassets/AppIcon.appiconset/102.png new file mode 100644 index 0000000..ef3a3dd Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/102.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/1024.png b/bpart/Assets.xcassets/AppIcon.appiconset/1024.png new file mode 100644 index 0000000..95570c4 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/1024.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/114.png b/bpart/Assets.xcassets/AppIcon.appiconset/114.png new file mode 100644 index 0000000..5516b9e Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/114.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/120.png b/bpart/Assets.xcassets/AppIcon.appiconset/120.png new file mode 100644 index 0000000..484aeac Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/120.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/128.png b/bpart/Assets.xcassets/AppIcon.appiconset/128.png new file mode 100644 index 0000000..1e0ad0e Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/128.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/144.png b/bpart/Assets.xcassets/AppIcon.appiconset/144.png new file mode 100644 index 0000000..c97c53e Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/144.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/152.png b/bpart/Assets.xcassets/AppIcon.appiconset/152.png new file mode 100644 index 0000000..bc81c8a Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/152.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/16.png b/bpart/Assets.xcassets/AppIcon.appiconset/16.png new file mode 100644 index 0000000..3a8a56e Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/16.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/167.png b/bpart/Assets.xcassets/AppIcon.appiconset/167.png new file mode 100644 index 0000000..42d37de Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/167.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/172.png b/bpart/Assets.xcassets/AppIcon.appiconset/172.png new file mode 100644 index 0000000..df95539 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/172.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/180.png b/bpart/Assets.xcassets/AppIcon.appiconset/180.png new file mode 100644 index 0000000..efcfe82 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/180.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/196.png b/bpart/Assets.xcassets/AppIcon.appiconset/196.png new file mode 100644 index 0000000..ba2f401 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/196.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/20.png b/bpart/Assets.xcassets/AppIcon.appiconset/20.png new file mode 100644 index 0000000..4fc1782 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/20.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/216.png b/bpart/Assets.xcassets/AppIcon.appiconset/216.png new file mode 100644 index 0000000..b51143a Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/216.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/256.png b/bpart/Assets.xcassets/AppIcon.appiconset/256.png new file mode 100644 index 0000000..35ec782 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/256.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/29.png b/bpart/Assets.xcassets/AppIcon.appiconset/29.png new file mode 100644 index 0000000..a0cd117 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/29.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/32.png b/bpart/Assets.xcassets/AppIcon.appiconset/32.png new file mode 100644 index 0000000..e948e9d Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/32.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/40.png b/bpart/Assets.xcassets/AppIcon.appiconset/40.png new file mode 100644 index 0000000..fd10b07 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/40.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/48.png b/bpart/Assets.xcassets/AppIcon.appiconset/48.png new file mode 100644 index 0000000..05cb473 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/48.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/50.png b/bpart/Assets.xcassets/AppIcon.appiconset/50.png new file mode 100644 index 0000000..5ec7b66 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/50.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/512.png b/bpart/Assets.xcassets/AppIcon.appiconset/512.png new file mode 100644 index 0000000..3400955 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/512.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/55.png b/bpart/Assets.xcassets/AppIcon.appiconset/55.png new file mode 100644 index 0000000..fbfaee8 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/55.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/57.png b/bpart/Assets.xcassets/AppIcon.appiconset/57.png new file mode 100644 index 0000000..b55a5c3 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/57.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/58.png b/bpart/Assets.xcassets/AppIcon.appiconset/58.png new file mode 100644 index 0000000..ed61b09 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/58.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/60.png b/bpart/Assets.xcassets/AppIcon.appiconset/60.png new file mode 100644 index 0000000..77b7c50 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/60.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/64.png b/bpart/Assets.xcassets/AppIcon.appiconset/64.png new file mode 100644 index 0000000..9a727bb Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/64.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/66.png b/bpart/Assets.xcassets/AppIcon.appiconset/66.png new file mode 100644 index 0000000..330b68c Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/66.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/72.png b/bpart/Assets.xcassets/AppIcon.appiconset/72.png new file mode 100644 index 0000000..97efd3a Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/72.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/76.png b/bpart/Assets.xcassets/AppIcon.appiconset/76.png new file mode 100644 index 0000000..531384c Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/76.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/80.png b/bpart/Assets.xcassets/AppIcon.appiconset/80.png new file mode 100644 index 0000000..91bee10 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/80.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/87.png b/bpart/Assets.xcassets/AppIcon.appiconset/87.png new file mode 100644 index 0000000..e862f82 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/87.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/88.png b/bpart/Assets.xcassets/AppIcon.appiconset/88.png new file mode 100644 index 0000000..18a9960 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/88.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/92.png b/bpart/Assets.xcassets/AppIcon.appiconset/92.png new file mode 100644 index 0000000..d3f0375 Binary files /dev/null and b/bpart/Assets.xcassets/AppIcon.appiconset/92.png differ diff --git a/bpart/Assets.xcassets/AppIcon.appiconset/Contents.json b/bpart/Assets.xcassets/AppIcon.appiconset/Contents.json index 13613e3..6bf81eb 100644 --- a/bpart/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/bpart/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -1,9 +1,350 @@ { "images" : [ { - "idiom" : "universal", - "platform" : "ios", + "filename" : "40.png", + "idiom" : "iphone", + "scale" : "2x", + "size" : "20x20" + }, + { + "filename" : "60.png", + "idiom" : "iphone", + "scale" : "3x", + "size" : "20x20" + }, + { + "filename" : "29.png", + "idiom" : "iphone", + "scale" : "1x", + "size" : "29x29" + }, + { + "filename" : "58.png", + "idiom" : "iphone", + "scale" : "2x", + "size" : "29x29" + }, + { + "filename" : "87.png", + "idiom" : "iphone", + "scale" : "3x", + "size" : "29x29" + }, + { + "filename" : "80.png", + "idiom" : "iphone", + "scale" : "2x", + "size" : "40x40" + }, + { + "filename" : "120.png", + "idiom" : "iphone", + "scale" : "3x", + "size" : "40x40" + }, + { + "filename" : "57.png", + "idiom" : "iphone", + "scale" : "1x", + "size" : "57x57" + }, + { + "filename" : "114.png", + "idiom" : "iphone", + "scale" : "2x", + "size" : "57x57" + }, + { + "filename" : "120.png", + "idiom" : "iphone", + "scale" : "2x", + "size" : "60x60" + }, + { + "filename" : "180.png", + "idiom" : "iphone", + "scale" : "3x", + "size" : "60x60" + }, + { + "filename" : "20.png", + "idiom" : "ipad", + "scale" : "1x", + "size" : "20x20" + }, + { + "filename" : "40.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "20x20" + }, + { + "filename" : "29.png", + "idiom" : "ipad", + "scale" : "1x", + "size" : "29x29" + }, + { + "filename" : "58.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "29x29" + }, + { + "filename" : "40.png", + "idiom" : "ipad", + "scale" : "1x", + "size" : "40x40" + }, + { + "filename" : "80.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "40x40" + }, + { + "filename" : "50.png", + "idiom" : "ipad", + "scale" : "1x", + "size" : "50x50" + }, + { + "filename" : "100.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "50x50" + }, + { + "filename" : "72.png", + "idiom" : "ipad", + "scale" : "1x", + "size" : "72x72" + }, + { + "filename" : "144.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "72x72" + }, + { + "filename" : "76.png", + "idiom" : "ipad", + "scale" : "1x", + "size" : "76x76" + }, + { + "filename" : "152.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "76x76" + }, + { + "filename" : "167.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "83.5x83.5" + }, + { + "filename" : "1024.png", + "idiom" : "ios-marketing", + "scale" : "1x", "size" : "1024x1024" + }, + { + "filename" : "16.png", + "idiom" : "mac", + "scale" : "1x", + "size" : "16x16" + }, + { + "filename" : "32.png", + "idiom" : "mac", + "scale" : "2x", + "size" : "16x16" + }, + { + "filename" : "32.png", + "idiom" : "mac", + "scale" : "1x", + "size" : "32x32" + }, + { + "filename" : "64.png", + "idiom" : "mac", + "scale" : "2x", + "size" : "32x32" + }, + { + "filename" : "128.png", + "idiom" : "mac", + "scale" : "1x", + "size" : "128x128" + }, + { + "filename" : "256.png", + "idiom" : "mac", + "scale" : "2x", + "size" : "128x128" + }, + { + "filename" : "256.png", + "idiom" : "mac", + "scale" : "1x", + "size" : "256x256" + }, + { + "filename" : "512.png", + "idiom" : "mac", + "scale" : "2x", + "size" : "256x256" + }, + { + "filename" : "512.png", + "idiom" : "mac", + "scale" : "1x", + "size" : "512x512" + }, + { + "filename" : "1024.png", + "idiom" : "mac", + "scale" : "2x", + "size" : "512x512" + }, + { + "filename" : "48.png", + "idiom" : "watch", + "role" : "notificationCenter", + "scale" : "2x", + "size" : "24x24", + "subtype" : "38mm" + }, + { + "filename" : "55.png", + "idiom" : "watch", + "role" : "notificationCenter", + "scale" : "2x", + "size" : "27.5x27.5", + "subtype" : "42mm" + }, + { + "filename" : "58.png", + "idiom" : "watch", + "role" : "companionSettings", + "scale" : "2x", + "size" : "29x29" + }, + { + "filename" : "87.png", + "idiom" : "watch", + "role" : "companionSettings", + "scale" : "3x", + "size" : "29x29" + }, + { + "filename" : "66.png", + "idiom" : "watch", + "role" : "notificationCenter", + "scale" : "2x", + "size" : "33x33", + "subtype" : "45mm" + }, + { + "filename" : "80.png", + "idiom" : "watch", + "role" : "appLauncher", + "scale" : "2x", + "size" : "40x40", + "subtype" : "38mm" + }, + { + "filename" : "88.png", + "idiom" : "watch", + "role" : "appLauncher", + "scale" : "2x", + "size" : "44x44", + "subtype" : "40mm" + }, + { + "filename" : "92.png", + "idiom" : "watch", + "role" : "appLauncher", + "scale" : "2x", + "size" : "46x46", + "subtype" : "41mm" + }, + { + "filename" : "100.png", + "idiom" : "watch", + "role" : "appLauncher", + "scale" : "2x", + "size" : "50x50", + "subtype" : "44mm" + }, + { + "idiom" : "watch", + "role" : "appLauncher", + "scale" : "2x", + "size" : "51x51", + "subtype" : "45mm" + }, + { + "idiom" : "watch", + "role" : "appLauncher", + "scale" : "2x", + "size" : "54x54", + "subtype" : "49mm" + }, + { + "filename" : "172.png", + "idiom" : "watch", + "role" : "quickLook", + "scale" : "2x", + "size" : "86x86", + "subtype" : "38mm" + }, + { + "filename" : "196.png", + "idiom" : "watch", + "role" : "quickLook", + "scale" : "2x", + "size" : "98x98", + "subtype" : "42mm" + }, + { + "filename" : "216.png", + "idiom" : "watch", + "role" : "quickLook", + "scale" : "2x", + "size" : "108x108", + "subtype" : "44mm" + }, + { + "idiom" : "watch", + "role" : "quickLook", + "scale" : "2x", + "size" : "117x117", + "subtype" : "45mm" + }, + { + "idiom" : "watch", + "role" : "quickLook", + "scale" : "2x", + "size" : "129x129", + "subtype" : "49mm" + }, + { + "filename" : "1024.png", + "idiom" : "watch-marketing", + "scale" : "1x", + "size" : "1024x1024" + }, + { + "filename" : "102.png", + "idiom" : "watch", + "role" : "appLauncher", + "scale" : "2x", + "size" : "45x45", + "subtype" : "41mm" } ], "info" : { diff --git a/bpart/Assets.xcassets/back1.imageset/Contents.json b/bpart/Assets.xcassets/back1.imageset/Contents.json new file mode 100644 index 0000000..c73dc79 --- /dev/null +++ b/bpart/Assets.xcassets/back1.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Group 521818 (1).png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/back1.imageset/Group 521818 (1).png b/bpart/Assets.xcassets/back1.imageset/Group 521818 (1).png new file mode 100644 index 0000000..8b2046b Binary files /dev/null and b/bpart/Assets.xcassets/back1.imageset/Group 521818 (1).png differ diff --git a/bpart/Assets.xcassets/back2.imageset/Contents.json b/bpart/Assets.xcassets/back2.imageset/Contents.json new file mode 100644 index 0000000..1077e42 --- /dev/null +++ b/bpart/Assets.xcassets/back2.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Group 521819.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/back2.imageset/Group 521819.png b/bpart/Assets.xcassets/back2.imageset/Group 521819.png new file mode 100644 index 0000000..9d07a30 Binary files /dev/null and b/bpart/Assets.xcassets/back2.imageset/Group 521819.png differ diff --git a/bpart/Assets.xcassets/back3.imageset/Contents.json b/bpart/Assets.xcassets/back3.imageset/Contents.json new file mode 100644 index 0000000..435d81b --- /dev/null +++ b/bpart/Assets.xcassets/back3.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Group 521820.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/back3.imageset/Group 521820.png b/bpart/Assets.xcassets/back3.imageset/Group 521820.png new file mode 100644 index 0000000..4cceb7e Binary files /dev/null and b/bpart/Assets.xcassets/back3.imageset/Group 521820.png differ diff --git a/bpart/Assets.xcassets/back4.imageset/Contents.json b/bpart/Assets.xcassets/back4.imageset/Contents.json new file mode 100644 index 0000000..f5ea2c1 --- /dev/null +++ b/bpart/Assets.xcassets/back4.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Group 521825.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/back4.imageset/Group 521825.png b/bpart/Assets.xcassets/back4.imageset/Group 521825.png new file mode 100644 index 0000000..486dff2 Binary files /dev/null and b/bpart/Assets.xcassets/back4.imageset/Group 521825.png differ diff --git a/bpart/Assets.xcassets/back5.imageset/Contents.json b/bpart/Assets.xcassets/back5.imageset/Contents.json new file mode 100644 index 0000000..2554112 --- /dev/null +++ b/bpart/Assets.xcassets/back5.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Group 521836.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/back5.imageset/Group 521836.png b/bpart/Assets.xcassets/back5.imageset/Group 521836.png new file mode 100644 index 0000000..9fcee81 Binary files /dev/null and b/bpart/Assets.xcassets/back5.imageset/Group 521836.png differ diff --git a/bpart/Assets.xcassets/back6.imageset/Contents.json b/bpart/Assets.xcassets/back6.imageset/Contents.json new file mode 100644 index 0000000..0ac3e12 --- /dev/null +++ b/bpart/Assets.xcassets/back6.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Group 521837.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/back6.imageset/Group 521837.png b/bpart/Assets.xcassets/back6.imageset/Group 521837.png new file mode 100644 index 0000000..622272e Binary files /dev/null and b/bpart/Assets.xcassets/back6.imageset/Group 521837.png differ diff --git a/bpart/Assets.xcassets/businesses.imageset/Contents.json b/bpart/Assets.xcassets/businesses.imageset/Contents.json new file mode 100644 index 0000000..c1c1621 --- /dev/null +++ b/bpart/Assets.xcassets/businesses.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "businesses.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/businesses.imageset/businesses.png b/bpart/Assets.xcassets/businesses.imageset/businesses.png new file mode 100644 index 0000000..9d2c856 Binary files /dev/null and b/bpart/Assets.xcassets/businesses.imageset/businesses.png differ diff --git a/bpart/Assets.xcassets/detail.imageset/Contents.json b/bpart/Assets.xcassets/detail.imageset/Contents.json new file mode 100644 index 0000000..0a59a3c --- /dev/null +++ b/bpart/Assets.xcassets/detail.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "detail.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/detail.imageset/detail.png b/bpart/Assets.xcassets/detail.imageset/detail.png new file mode 100644 index 0000000..228cb82 Binary files /dev/null and b/bpart/Assets.xcassets/detail.imageset/detail.png differ diff --git a/bpart/Assets.xcassets/sample.imageset/Contents.json b/bpart/Assets.xcassets/econ1.imageset/Contents.json similarity index 78% rename from bpart/Assets.xcassets/sample.imageset/Contents.json rename to bpart/Assets.xcassets/econ1.imageset/Contents.json index e48221d..e0f43d5 100644 --- a/bpart/Assets.xcassets/sample.imageset/Contents.json +++ b/bpart/Assets.xcassets/econ1.imageset/Contents.json @@ -1,7 +1,7 @@ { "images" : [ { - "filename" : "sample.png", + "filename" : "econ1.png", "idiom" : "universal" } ], diff --git a/bpart/Assets.xcassets/econ1.imageset/econ1.png b/bpart/Assets.xcassets/econ1.imageset/econ1.png new file mode 100644 index 0000000..70aff5b Binary files /dev/null and b/bpart/Assets.xcassets/econ1.imageset/econ1.png differ diff --git a/bpart/Assets.xcassets/fundingDetail.imageset/Contents.json b/bpart/Assets.xcassets/econ2.imageset/Contents.json similarity index 75% rename from bpart/Assets.xcassets/fundingDetail.imageset/Contents.json rename to bpart/Assets.xcassets/econ2.imageset/Contents.json index 86cee56..adf6c8f 100644 --- a/bpart/Assets.xcassets/fundingDetail.imageset/Contents.json +++ b/bpart/Assets.xcassets/econ2.imageset/Contents.json @@ -1,7 +1,7 @@ { "images" : [ { - "filename" : "fundingDetail.PNG", + "filename" : "econ2.png", "idiom" : "universal" } ], diff --git a/bpart/Assets.xcassets/econ2.imageset/econ2.png b/bpart/Assets.xcassets/econ2.imageset/econ2.png new file mode 100644 index 0000000..962c588 Binary files /dev/null and b/bpart/Assets.xcassets/econ2.imageset/econ2.png differ diff --git a/bpart/Assets.xcassets/econ3.imageset/Contents.json b/bpart/Assets.xcassets/econ3.imageset/Contents.json new file mode 100644 index 0000000..e0a5e05 --- /dev/null +++ b/bpart/Assets.xcassets/econ3.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "econ3.png", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/econ3.imageset/econ3.png b/bpart/Assets.xcassets/econ3.imageset/econ3.png new file mode 100644 index 0000000..205ceca Binary files /dev/null and b/bpart/Assets.xcassets/econ3.imageset/econ3.png differ diff --git a/bpart/Assets.xcassets/edu1.imageset/Contents.json b/bpart/Assets.xcassets/edu1.imageset/Contents.json new file mode 100644 index 0000000..1b42cd7 --- /dev/null +++ b/bpart/Assets.xcassets/edu1.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "edu1.png", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/edu1.imageset/edu1.png b/bpart/Assets.xcassets/edu1.imageset/edu1.png new file mode 100644 index 0000000..43ae60c Binary files /dev/null and b/bpart/Assets.xcassets/edu1.imageset/edu1.png differ diff --git a/bpart/Assets.xcassets/edu2.imageset/Contents.json b/bpart/Assets.xcassets/edu2.imageset/Contents.json new file mode 100644 index 0000000..5c0dada --- /dev/null +++ b/bpart/Assets.xcassets/edu2.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "edu2.png", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/edu2.imageset/edu2.png b/bpart/Assets.xcassets/edu2.imageset/edu2.png new file mode 100644 index 0000000..22023ee Binary files /dev/null and b/bpart/Assets.xcassets/edu2.imageset/edu2.png differ diff --git a/bpart/Assets.xcassets/edu3.imageset/Contents.json b/bpart/Assets.xcassets/edu3.imageset/Contents.json new file mode 100644 index 0000000..594ec3c --- /dev/null +++ b/bpart/Assets.xcassets/edu3.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "edu3.png", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/edu3.imageset/edu3.png b/bpart/Assets.xcassets/edu3.imageset/edu3.png new file mode 100644 index 0000000..cae3670 Binary files /dev/null and b/bpart/Assets.xcassets/edu3.imageset/edu3.png differ diff --git a/bpart/Assets.xcassets/food1.imageset/Contents.json b/bpart/Assets.xcassets/food1.imageset/Contents.json new file mode 100644 index 0000000..1c532f5 --- /dev/null +++ b/bpart/Assets.xcassets/food1.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "food1.png", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/food1.imageset/food1.png b/bpart/Assets.xcassets/food1.imageset/food1.png new file mode 100644 index 0000000..88f3502 Binary files /dev/null and b/bpart/Assets.xcassets/food1.imageset/food1.png differ diff --git a/bpart/Assets.xcassets/food2.imageset/Contents.json b/bpart/Assets.xcassets/food2.imageset/Contents.json new file mode 100644 index 0000000..f356966 --- /dev/null +++ b/bpart/Assets.xcassets/food2.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "food2.png", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/food2.imageset/food2.png b/bpart/Assets.xcassets/food2.imageset/food2.png new file mode 100644 index 0000000..23ef40d Binary files /dev/null and b/bpart/Assets.xcassets/food2.imageset/food2.png differ diff --git a/bpart/Assets.xcassets/food3.imageset/Contents.json b/bpart/Assets.xcassets/food3.imageset/Contents.json new file mode 100644 index 0000000..f038d02 --- /dev/null +++ b/bpart/Assets.xcassets/food3.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "food3.png", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/food3.imageset/food3.png b/bpart/Assets.xcassets/food3.imageset/food3.png new file mode 100644 index 0000000..e13d973 Binary files /dev/null and b/bpart/Assets.xcassets/food3.imageset/food3.png differ diff --git a/bpart/Assets.xcassets/fundingDetail.imageset/fundingDetail.PNG b/bpart/Assets.xcassets/fundingDetail.imageset/fundingDetail.PNG deleted file mode 100644 index ccef42a..0000000 Binary files a/bpart/Assets.xcassets/fundingDetail.imageset/fundingDetail.PNG and /dev/null differ diff --git a/bpart/Assets.xcassets/google_logo.imageset/Contents.json b/bpart/Assets.xcassets/google_logo.imageset/Contents.json new file mode 100644 index 0000000..ae729d6 --- /dev/null +++ b/bpart/Assets.xcassets/google_logo.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "image (2).png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/google_logo.imageset/image (2).png b/bpart/Assets.xcassets/google_logo.imageset/image (2).png new file mode 100644 index 0000000..34ad77e Binary files /dev/null and b/bpart/Assets.xcassets/google_logo.imageset/image (2).png differ diff --git a/bpart/Assets.xcassets/kakao_logo.imageset/Contents.json b/bpart/Assets.xcassets/kakao_logo.imageset/Contents.json new file mode 100644 index 0000000..24c474e --- /dev/null +++ b/bpart/Assets.xcassets/kakao_logo.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "image.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/kakao_logo.imageset/image.png b/bpart/Assets.xcassets/kakao_logo.imageset/image.png new file mode 100644 index 0000000..4ab08ef Binary files /dev/null and b/bpart/Assets.xcassets/kakao_logo.imageset/image.png differ diff --git a/bpart/Assets.xcassets/map.imageset/Contents.json b/bpart/Assets.xcassets/map.imageset/Contents.json new file mode 100644 index 0000000..c78b381 --- /dev/null +++ b/bpart/Assets.xcassets/map.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "map.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/map.imageset/map.png b/bpart/Assets.xcassets/map.imageset/map.png new file mode 100644 index 0000000..9cdb432 Binary files /dev/null and b/bpart/Assets.xcassets/map.imageset/map.png differ diff --git a/bpart/Assets.xcassets/mypage1.imageset/Contents.json b/bpart/Assets.xcassets/mypage1.imageset/Contents.json new file mode 100644 index 0000000..6405388 --- /dev/null +++ b/bpart/Assets.xcassets/mypage1.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "mypage1.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/mypage1.imageset/mypage1.png b/bpart/Assets.xcassets/mypage1.imageset/mypage1.png new file mode 100644 index 0000000..dd4e054 Binary files /dev/null and b/bpart/Assets.xcassets/mypage1.imageset/mypage1.png differ diff --git a/bpart/Assets.xcassets/mypage2.imageset/Contents.json b/bpart/Assets.xcassets/mypage2.imageset/Contents.json new file mode 100644 index 0000000..1fc20c9 --- /dev/null +++ b/bpart/Assets.xcassets/mypage2.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "mypage2.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/mypage2.imageset/mypage2.png b/bpart/Assets.xcassets/mypage2.imageset/mypage2.png new file mode 100644 index 0000000..5de7e31 Binary files /dev/null and b/bpart/Assets.xcassets/mypage2.imageset/mypage2.png differ diff --git a/bpart/Assets.xcassets/naver_logo.imageset/Contents.json b/bpart/Assets.xcassets/naver_logo.imageset/Contents.json new file mode 100644 index 0000000..10eadb4 --- /dev/null +++ b/bpart/Assets.xcassets/naver_logo.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "image (1).png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/naver_logo.imageset/image (1).png b/bpart/Assets.xcassets/naver_logo.imageset/image (1).png new file mode 100644 index 0000000..79c66a7 Binary files /dev/null and b/bpart/Assets.xcassets/naver_logo.imageset/image (1).png differ diff --git a/bpart/Assets.xcassets/org1.imageset/Contents.json b/bpart/Assets.xcassets/org1.imageset/Contents.json new file mode 100644 index 0000000..c4a94c2 --- /dev/null +++ b/bpart/Assets.xcassets/org1.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Ellipse 3206.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/org1.imageset/Ellipse 3206.png b/bpart/Assets.xcassets/org1.imageset/Ellipse 3206.png new file mode 100644 index 0000000..7e8ab29 Binary files /dev/null and b/bpart/Assets.xcassets/org1.imageset/Ellipse 3206.png differ diff --git a/bpart/Assets.xcassets/org2.imageset/Contents.json b/bpart/Assets.xcassets/org2.imageset/Contents.json new file mode 100644 index 0000000..69aba41 --- /dev/null +++ b/bpart/Assets.xcassets/org2.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Ellipse 3207 (1).png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/org2.imageset/Ellipse 3207 (1).png b/bpart/Assets.xcassets/org2.imageset/Ellipse 3207 (1).png new file mode 100644 index 0000000..d577aea Binary files /dev/null and b/bpart/Assets.xcassets/org2.imageset/Ellipse 3207 (1).png differ diff --git a/bpart/Assets.xcassets/org3.imageset/Contents.json b/bpart/Assets.xcassets/org3.imageset/Contents.json new file mode 100644 index 0000000..606bcdf --- /dev/null +++ b/bpart/Assets.xcassets/org3.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Ellipse 3208.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/org3.imageset/Ellipse 3208.png b/bpart/Assets.xcassets/org3.imageset/Ellipse 3208.png new file mode 100644 index 0000000..801c69a Binary files /dev/null and b/bpart/Assets.xcassets/org3.imageset/Ellipse 3208.png differ diff --git a/bpart/Assets.xcassets/org4.imageset/Contents.json b/bpart/Assets.xcassets/org4.imageset/Contents.json new file mode 100644 index 0000000..306c3c4 --- /dev/null +++ b/bpart/Assets.xcassets/org4.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Frame 2924.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/org4.imageset/Frame 2924.png b/bpart/Assets.xcassets/org4.imageset/Frame 2924.png new file mode 100644 index 0000000..f6d8e58 Binary files /dev/null and b/bpart/Assets.xcassets/org4.imageset/Frame 2924.png differ diff --git a/bpart/Assets.xcassets/org5.imageset/Contents.json b/bpart/Assets.xcassets/org5.imageset/Contents.json new file mode 100644 index 0000000..e56d388 --- /dev/null +++ b/bpart/Assets.xcassets/org5.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Ellipse 3209.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/org5.imageset/Ellipse 3209.png b/bpart/Assets.xcassets/org5.imageset/Ellipse 3209.png new file mode 100644 index 0000000..62a45f3 Binary files /dev/null and b/bpart/Assets.xcassets/org5.imageset/Ellipse 3209.png differ diff --git a/bpart/Assets.xcassets/org6.imageset/Contents.json b/bpart/Assets.xcassets/org6.imageset/Contents.json new file mode 100644 index 0000000..c7b7e16 --- /dev/null +++ b/bpart/Assets.xcassets/org6.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Ellipse 3210.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/org6.imageset/Ellipse 3210.png b/bpart/Assets.xcassets/org6.imageset/Ellipse 3210.png new file mode 100644 index 0000000..801c69a Binary files /dev/null and b/bpart/Assets.xcassets/org6.imageset/Ellipse 3210.png differ diff --git a/bpart/Assets.xcassets/pager_1.imageset/Contents.json b/bpart/Assets.xcassets/pager_1.imageset/Contents.json new file mode 100644 index 0000000..8330f31 --- /dev/null +++ b/bpart/Assets.xcassets/pager_1.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Frame 2928.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/pager_1.imageset/Frame 2928.png b/bpart/Assets.xcassets/pager_1.imageset/Frame 2928.png new file mode 100644 index 0000000..61f8440 Binary files /dev/null and b/bpart/Assets.xcassets/pager_1.imageset/Frame 2928.png differ diff --git a/bpart/Assets.xcassets/pager_2.imageset/Contents.json b/bpart/Assets.xcassets/pager_2.imageset/Contents.json new file mode 100644 index 0000000..667553e --- /dev/null +++ b/bpart/Assets.xcassets/pager_2.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Frame 2928-1.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/pager_2.imageset/Frame 2928-1.png b/bpart/Assets.xcassets/pager_2.imageset/Frame 2928-1.png new file mode 100644 index 0000000..e2febc0 Binary files /dev/null and b/bpart/Assets.xcassets/pager_2.imageset/Frame 2928-1.png differ diff --git a/bpart/Assets.xcassets/pager_3.imageset/Contents.json b/bpart/Assets.xcassets/pager_3.imageset/Contents.json new file mode 100644 index 0000000..3a4baf2 --- /dev/null +++ b/bpart/Assets.xcassets/pager_3.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Frame 2928-2.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/pager_3.imageset/Frame 2928-2.png b/bpart/Assets.xcassets/pager_3.imageset/Frame 2928-2.png new file mode 100644 index 0000000..efb5230 Binary files /dev/null and b/bpart/Assets.xcassets/pager_3.imageset/Frame 2928-2.png differ diff --git a/bpart/Assets.xcassets/result1.imageset/Contents.json b/bpart/Assets.xcassets/result1.imageset/Contents.json new file mode 100644 index 0000000..12d528b --- /dev/null +++ b/bpart/Assets.xcassets/result1.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Post 1.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/result1.imageset/Post 1.png b/bpart/Assets.xcassets/result1.imageset/Post 1.png new file mode 100644 index 0000000..1474bc4 Binary files /dev/null and b/bpart/Assets.xcassets/result1.imageset/Post 1.png differ diff --git a/bpart/Assets.xcassets/result2.imageset/Contents.json b/bpart/Assets.xcassets/result2.imageset/Contents.json new file mode 100644 index 0000000..f5f5b81 --- /dev/null +++ b/bpart/Assets.xcassets/result2.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Post 2.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/result2.imageset/Post 2.png b/bpart/Assets.xcassets/result2.imageset/Post 2.png new file mode 100644 index 0000000..1bdb791 Binary files /dev/null and b/bpart/Assets.xcassets/result2.imageset/Post 2.png differ diff --git a/bpart/Assets.xcassets/result3.imageset/Contents.json b/bpart/Assets.xcassets/result3.imageset/Contents.json new file mode 100644 index 0000000..66b4a98 --- /dev/null +++ b/bpart/Assets.xcassets/result3.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "Post 3.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/result3.imageset/Post 3.png b/bpart/Assets.xcassets/result3.imageset/Post 3.png new file mode 100644 index 0000000..694445c Binary files /dev/null and b/bpart/Assets.xcassets/result3.imageset/Post 3.png differ diff --git a/bpart/Assets.xcassets/result4.imageset/Contents.json b/bpart/Assets.xcassets/result4.imageset/Contents.json new file mode 100644 index 0000000..2cef103 --- /dev/null +++ b/bpart/Assets.xcassets/result4.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "result4.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/result4.imageset/result4.png b/bpart/Assets.xcassets/result4.imageset/result4.png new file mode 100644 index 0000000..1bac6ea Binary files /dev/null and b/bpart/Assets.xcassets/result4.imageset/result4.png differ diff --git a/bpart/Assets.xcassets/result5.imageset/Contents.json b/bpart/Assets.xcassets/result5.imageset/Contents.json new file mode 100644 index 0000000..6fc0b2c --- /dev/null +++ b/bpart/Assets.xcassets/result5.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "result.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/result5.imageset/result.png b/bpart/Assets.xcassets/result5.imageset/result.png new file mode 100644 index 0000000..9d2f3eb Binary files /dev/null and b/bpart/Assets.xcassets/result5.imageset/result.png differ diff --git a/bpart/Assets.xcassets/right1.imageset/Contents.json b/bpart/Assets.xcassets/right1.imageset/Contents.json new file mode 100644 index 0000000..530234a --- /dev/null +++ b/bpart/Assets.xcassets/right1.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "right1.png", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/right1.imageset/right1.png b/bpart/Assets.xcassets/right1.imageset/right1.png new file mode 100644 index 0000000..2fc473e Binary files /dev/null and b/bpart/Assets.xcassets/right1.imageset/right1.png differ diff --git a/bpart/Assets.xcassets/right2.imageset/Contents.json b/bpart/Assets.xcassets/right2.imageset/Contents.json new file mode 100644 index 0000000..04832dd --- /dev/null +++ b/bpart/Assets.xcassets/right2.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "right2.png", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/right2.imageset/right2.png b/bpart/Assets.xcassets/right2.imageset/right2.png new file mode 100644 index 0000000..19dd271 Binary files /dev/null and b/bpart/Assets.xcassets/right2.imageset/right2.png differ diff --git a/bpart/Assets.xcassets/right3.imageset/Contents.json b/bpart/Assets.xcassets/right3.imageset/Contents.json new file mode 100644 index 0000000..aba72a5 --- /dev/null +++ b/bpart/Assets.xcassets/right3.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "right3.png", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/right3.imageset/right3.png b/bpart/Assets.xcassets/right3.imageset/right3.png new file mode 100644 index 0000000..7644190 Binary files /dev/null and b/bpart/Assets.xcassets/right3.imageset/right3.png differ diff --git a/bpart/Assets.xcassets/sample.imageset/sample.png b/bpart/Assets.xcassets/sample.imageset/sample.png deleted file mode 100644 index a09c0c0..0000000 Binary files a/bpart/Assets.xcassets/sample.imageset/sample.png and /dev/null differ diff --git a/bpart/Assets.xcassets/water1.imageset/Contents.json b/bpart/Assets.xcassets/water1.imageset/Contents.json new file mode 100644 index 0000000..2bff494 --- /dev/null +++ b/bpart/Assets.xcassets/water1.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "water1.png", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/water1.imageset/water1.png b/bpart/Assets.xcassets/water1.imageset/water1.png new file mode 100644 index 0000000..7c2730a Binary files /dev/null and b/bpart/Assets.xcassets/water1.imageset/water1.png differ diff --git a/bpart/Assets.xcassets/water2.imageset/Contents.json b/bpart/Assets.xcassets/water2.imageset/Contents.json new file mode 100644 index 0000000..3d2835c --- /dev/null +++ b/bpart/Assets.xcassets/water2.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "water2.png", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/water2.imageset/water2.png b/bpart/Assets.xcassets/water2.imageset/water2.png new file mode 100644 index 0000000..55dc28d Binary files /dev/null and b/bpart/Assets.xcassets/water2.imageset/water2.png differ diff --git a/bpart/Assets.xcassets/water3.imageset/Contents.json b/bpart/Assets.xcassets/water3.imageset/Contents.json new file mode 100644 index 0000000..815daec --- /dev/null +++ b/bpart/Assets.xcassets/water3.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "water3.png", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/bpart/Assets.xcassets/water3.imageset/water3.png b/bpart/Assets.xcassets/water3.imageset/water3.png new file mode 100644 index 0000000..6dbd6ba Binary files /dev/null and b/bpart/Assets.xcassets/water3.imageset/water3.png differ diff --git a/bpart/ContentView.swift b/bpart/ContentView.swift index 059bf12..7df4e92 100644 --- a/bpart/ContentView.swift +++ b/bpart/ContentView.swift @@ -7,10 +7,19 @@ import SwiftUI + + + struct ContentView: View { + + + @State var pageState : String = "RegisterView" + var body: some View { - MainView() + MainView() + + } } @@ -19,3 +28,5 @@ struct ContentView_Previews: PreviewProvider { ContentView() } } + + diff --git a/bpart/Models/Funding.swift b/bpart/Models/Funding.swift index 3f58acd..eba5876 100644 --- a/bpart/Models/Funding.swift +++ b/bpart/Models/Funding.swift @@ -10,6 +10,7 @@ import Foundation struct Funding :Hashable{ + var category: String var title: String var description: String var currentAmount: Int @@ -18,11 +19,65 @@ struct Funding :Hashable{ var media: String var milestones: [Milestone] var participationCount: Int -} - + var isFavorite: Bool + //add location struct + +} struct Milestone: Hashable { + var type: String var what: String var who: String var isDone: Bool + var completionRate: Int +} + + +//define location struct + + +extension Funding{ + static func all()->[Funding] { + return [ + Funding(category: "추천", + title: "가나 교육사업 프로젝트", + description: "\"저희 동네에도 학교가 지어졌지만,\n선생님이 안계셔서 공부를 할 수 없어요\"", + currentAmount: 74, targetAmount: 100, id: "1111", media: "sample", + milestones: [ + Milestone(type: "check",what: "학교건설", who: "현대건설",isDone: true,completionRate: 0), + Milestone(type: "check",what: "기기지원", who: "Samsung",isDone: false,completionRate: 0), + Milestone(type: "progress",what: "교사채용 및 학교운영", who: "개인 후원",isDone: false,completionRate: 73), + ], + participationCount: 262,isFavorite: true), + ] + } + + static func edu() -> [String]{ + return [ + "edu3" + ] + } + + static func water() -> [String]{ + return [ + "water1","water2","water3" + ] + } + static func food() -> [String]{ + return [ + "food1","food2","food3" + ] + } + static func right() -> [String]{ + return [ + "right1","right2","right3" + ] + } + + //no econ yet + static func econ() -> [String]{ + return [ + "edu3" + ] + } } diff --git a/bpart/Models/NeedsData.swift b/bpart/Models/NeedsData.swift new file mode 100644 index 0000000..927986f --- /dev/null +++ b/bpart/Models/NeedsData.swift @@ -0,0 +1,35 @@ +// +// NeedsData.swift +// bpart +// +// Created by 채정영 on 1/28/23. +// + +import Foundation + +struct NeedsData : Hashable { + let id: String + let imageURL: String + let organization: String + let orgURL: String + let description: String + let numLikes : Int + let numComments : Int + let timestamp : String + + +} + + +extension NeedsData { + static func all() -> [NeedsData] { + return [ + NeedsData(id: "1", imageURL: "back1", organization: "Samsung", orgURL: "org1", description: "팔레스타인 난민촌을 위한 도움이 필요해요", numLikes: 912, numComments: 72, timestamp: "2015.03.19"), + NeedsData(id: "2", imageURL: "back2", organization: "Unicef", orgURL: "org2", description: "디지털 문맹 개선을 위한 서비스가 필요해요", numLikes: 710, numComments: 60, timestamp: "2021.10.22"), + NeedsData(id: "3", imageURL: "back3", organization: "Canada", orgURL: "org3", description: "자금난을 겪는 소상공인을 도와줍시다", numLikes: 420, numComments: 55, timestamp: "2020.03.21"), + NeedsData(id: "4", imageURL: "back4", organization: "비파트", orgURL: "org4", description: "북한 인권을 위한 도움을 주고 싶어요", numLikes: 310, numComments: 70, timestamp: "2022.06.25"), + NeedsData(id: "5", imageURL: "back5", organization: "에이파트", orgURL: "org5", description: "가나의 영재교육을 위한 서비스를 만들어요", numLikes: 210, numComments: 10, timestamp: "2021.02.01"), + NeedsData(id: "6", imageURL: "back6", organization: "비지니스 ", orgURL: "org6", description: "미얀마 임산부를 위한 좌석이 필요해요", numLikes: 100, numComments: 30, timestamp: "2022.03.22") + ] + } +} diff --git a/bpart/PageState.swift b/bpart/PageState.swift new file mode 100644 index 0000000..aba7318 --- /dev/null +++ b/bpart/PageState.swift @@ -0,0 +1,13 @@ +// +// PageState.swift +// bpart +// +// Created by 채정영 on 1/27/23. +// + +import Foundation +import SwiftUI + +enum EPageState : Int { + case register, onboarding_1, onborading_2, home +} diff --git a/bpart/Views/FundingDetailView.swift b/bpart/Views/FundingDetailView.swift index e6117b7..7174f14 100644 --- a/bpart/Views/FundingDetailView.swift +++ b/bpart/Views/FundingDetailView.swift @@ -8,9 +8,37 @@ import SwiftUI struct FundingDetailView: View { + var body: some View { - Text("FUNDING MAP") - .navigationTitle(Text("Funding Detail")) + + NavigationView{ + ScrollView{ + Image("detail") + .resizable() + .aspectRatio( contentMode: .fill) + + HStack{ + VStack{ + Image(systemName: "heart") + Text("19") + } + + Button { + // + } label: { + Text("후원하기").font(.customtitle2) + .foregroundColor(Color.white) + .frame(width: 250, height: 51) + .background(Color.blue) + } + .padding(24) + + } + + }.navigationTitle("상세 페이지") + + } + } } diff --git a/bpart/Views/FundingMapView.swift b/bpart/Views/FundingMapView.swift index 7f692b5..19bb623 100644 --- a/bpart/Views/FundingMapView.swift +++ b/bpart/Views/FundingMapView.swift @@ -5,6 +5,13 @@ // Created by Alex Cho on 2023/01/27. // +// +// FundingMapView.swift +// bpart +// +// Created by Alex Cho on 2023/01/27. +// 0 + import SwiftUI import MapKit @@ -14,46 +21,93 @@ struct Location: Identifiable { let coordinate: CLLocationCoordinate2D let country: String let tag: String //물 교육 인권 일자리 보건 Water, Education, Human Rights, Workforce, Health + let imageURL: String } struct FundingMapView: View { @State private var mapRegion = MKCoordinateRegion(center: CLLocationCoordinate2D(latitude: 0.783195, longitude: 15),span: MKCoordinateSpan(latitudeDelta: 50, longitudeDelta: 70)) @State private var selectedPlace: Location? - + @State var input: String = "" + @State var imageurl_var: String = "" + @State var selectedIndex: Int = 0 let geo_dummy = [ - Location(coordinate: CLLocationCoordinate2D(latitude: 29.912289, longitude: 5.641287), country: "South Sudan", tag: "Education"), - Location(coordinate: CLLocationCoordinate2D(latitude: 0.175897, longitude: 10.466159), country: "Gahna", tag: "Education"), - Location(coordinate: CLLocationCoordinate2D(latitude: 7.171549, longitude: 23.314558), country: "Algeria", tag: "Water"), - Location(coordinate: CLLocationCoordinate2D(latitude: 16.879637, longitude: -8.890065), country: "Tanzania", tag: "Human Rights"), - Location(coordinate: CLLocationCoordinate2D(latitude: 20.957217, longitude: 12.525986), country: "Ethiopia", tag: "Health"), - Location(coordinate: CLLocationCoordinate2D(latitude: 19.157224, longitude: 24.507183), country: "Botswana", tag: "Water") - ] + Location(coordinate: CLLocationCoordinate2D(latitude: 29.912289, longitude: 5.641287), country: "South Sudan", tag: "Education", imageURL: ""), + Location(coordinate: CLLocationCoordinate2D(latitude: 0.175897, longitude: 10.466159), country: "Gahna", tag: "Education", imageURL: ""), + Location(coordinate: CLLocationCoordinate2D(latitude: 2.801340, longitude: 32.795292), country: "Uganda", tag: "Water", imageURL: "Uganda"), + Location(coordinate: CLLocationCoordinate2D(latitude: -14.403812, longitude: 23.757980), country: "Zambia", tag: "Human Rights", imageURL: "Zambia"), + Location(coordinate: CLLocationCoordinate2D(latitude: 20.957217, longitude: 12.525986), country: "Ethiopia", tag: "Health", imageURL: "Ethiopia"), + Location(coordinate: CLLocationCoordinate2D(latitude: 14.896299, longitude: -4.871375), country: "Senegal", tag: "Water", imageURL: "Senegal"), + + Location(coordinate: CLLocationCoordinate2D(latitude: 2, longitude: 38), country: "Gahna", tag: "Education", imageURL: ""), + Location(coordinate: CLLocationCoordinate2D(latitude: 7, longitude: 12), country: "Gahna", tag: "Water", imageURL: ""), + Location(coordinate: CLLocationCoordinate2D(latitude: 0.6, longitude: 20), country: "Gahna", tag: "Health", imageURL: ""), + Location(coordinate: CLLocationCoordinate2D(latitude: 0.8, longitude: 17), country: "Gahna", tag: "Human Rights", imageURL: ""), + Location(coordinate: CLLocationCoordinate2D(latitude: 1.0, longitude: 24), country: "Gahna", tag: "Workforce", imageURL: ""), + ] - + var buttonStrings : [String] = ["교육","식수시설", "식량시설", "보건시설", "인권보호", "경제성장"] + @State private var emptyArray = [String]() var body: some View { - Map(coordinateRegion: $mapRegion, annotationItems: geo_dummy) {dummy in - MapAnnotation(coordinate: dummy.coordinate) { - Image(systemName: "pin.fill") - .resizable() - .foregroundColor(.blue) - .frame(width:30, height:30) - .clipShape(Circle()) - .onTapGesture{ - selectedPlace = dummy + + NavigationView{ + VStack{ + ScrollView(.horizontal){ + HStack{ + ForEach(0..<6, id: \.self ){ idx in + Button { + //change selectednumber + selectedIndex = idx + } label: { + + ZStack { + Text(buttonStrings[idx]) + .font(.custombody4) + .padding(EdgeInsets(top: 8, leading: 10, bottom: 8, trailing: 10)) + .overlay( + RoundedRectangle(cornerRadius: 30) + .stroke(idx == selectedIndex ? Color.teal : Color.clear, lineWidth: 2) + ).padding(0) + .foregroundColor(idx == selectedIndex ? .teal : .white) + + }.background(idx == selectedIndex ? Color.clear : .teal) + .opacity(0.8) + .cornerRadius(10.0) + .padding(6) + + } + } + + } + } + Map(coordinateRegion: $mapRegion, annotationItems: geo_dummy) {dummy in + MapAnnotation(coordinate: dummy.coordinate) { + Image(systemName: "circle.fill") + .resizable() + .foregroundColor(.blue) + .frame(width:15, height:15) + .clipShape(Circle()) + .onTapGesture{ + selectedPlace = dummy + } + } + }.sheet(item: $selectedPlace){ place in + //imageurl_var = Text(place.imageURL) + VStack{ + Image("map").resizable().aspectRatio(contentMode: .fill) + //.frame(width: 300, height: 400, alignment: .topLeading) + // Text(place.imageURL) + //UIImage(place.imageURL) } -// VStack { -// Circle() -// .stroke(.red, lineWidth: 3) -// .frame(width: 44, height: 44) -// //UIImage(named: "green-square-Retina") -// } + .presentationDetents([.fraction(0.8)]) + } } - }.sheet(item: $selectedPlace){ place in - Text(place.country) - .presentationDetents([.fraction(0.25), .fraction(0.75)]) - } + + }.searchable(text: $input, prompt: "원하는 지역을 검색해보세요") + } + + } struct FundingMapView_Previews: PreviewProvider { diff --git a/bpart/Views/FundingResult.swift b/bpart/Views/FundingResult.swift index 88efc2c..08934b8 100644 --- a/bpart/Views/FundingResult.swift +++ b/bpart/Views/FundingResult.swift @@ -9,15 +9,46 @@ import SwiftUI struct FundingResult: View { var body: some View { - ScrollView { + ScrollView (){ VStack(alignment:.leading){ - Image("logo").resizable().frame(width: 60, height: 19.23) + Image("logo").resizable().frame(width: 60, height: 19.23).padding(EdgeInsets(top: 12, leading: 0, bottom: 0, trailing: 0)) Spacer() - Text("비파트님,\n당신의 따듯한 후원 덕분에\n오늘 3개의 학교가 세워졌어요.").font(.customheading1) - }.frame(width: .infinity) - Text("후원 기업 현황") - Text("따듯한 후원을 통해 나눔을 실천하는 기업들이 있어요.").foregroundColor(.gray) + .frame(height:20.77) + Text("2023년, 비파트를 통해,").font(.customheading1) + Spacer() + .frame(height:13) + Text("당신의 따듯한 후원 덕분에").font(.customheading1) + .frame(height:13) + Text("오늘 3개의 학교가 세워졌어요.").font(.customheading1) + Spacer().frame(height:20.77) + Divider() + }.padding(24) + + VStack(alignment:.leading){ + Text("후원 기업 현황").font(.customtitle3) + .frame(height:13) + .padding(3) + Text("따뜻한 후원을 통해 나눔을 실천하는 기업들이 있어요.").foregroundColor(Color.gray) .font(.system(size: 14)) + .frame(height:13) + Image("result4") + .resizable() + .aspectRatio(contentMode: .fit) + //.frame(width: 200, height: 150) + Spacer().frame(height:20.77) + + Text("실시간 후원 결과").font(.customtitle3) + .frame(height:13) + .padding(3) + Text("총 3274개의 프로젝트 중 1273개의 프로젝트가 완료되었습니다.").foregroundColor(Color.gray) .font(.system(size: 14)) + .frame(height:13) + Image("result5") + .resizable() + .aspectRatio(contentMode: .fit) + //.frame(width: 300, height: 150) + + }.padding(EdgeInsets(top: 0, leading: 24, bottom: 24, trailing: 24)) } + } } diff --git a/bpart/Views/HomeView.swift b/bpart/Views/HomeView.swift index 9a8988e..fc836fe 100644 --- a/bpart/Views/HomeView.swift +++ b/bpart/Views/HomeView.swift @@ -10,153 +10,290 @@ import SwiftUI struct HomeView: View { // @EnvironmentObject var firestoreFundingManager: FirestoreFundingManager // @State private var showPopUp = false + @State var selectedMenuIndex: Int = 0 - @State var funding = Funding(title: "가나 교육사업 프로젝트", description: "\"저희 동네에도 학교가 지어졌지만,\n선생님이 안계셔서 공부를 할 수 없어요\"",currentAmount: 74, targetAmount: 100, id: "1111", media: "sample", milestones: [Milestone(what: "학교건설", who: "현대건설",isDone: true),Milestone(what: "기기지원", who: "Samsung",isDone: false),],participationCount: 262) + var menuIcons :[String] = ["star","graduationcap","humidity","leaf","lock.rectangle.on.rectangle","wonsign.circle"] + var menuNames : [String] = ["추천","교육","식수시설","보건 및 식량","인권 보호","경제 성장"] + + let framewidth : CGFloat = 358 + let frameheight : CGFloat = 277 + + + // @State var fundings: [String] = Funding.edu() init(){ + //calling firebase } var body: some View { - NavigationStack { + + NavigationView{ ScrollView { - VStack(alignment: .leading){ - Image("logo").resizable().frame(width: 60, height: 19.23) + Spacer().frame(height: 1) + .padding(.top, 1) + VStack(alignment: .leading) { + Image("logo").resizable().frame(width: 60, height: 19.23).padding(EdgeInsets(top: 12, leading: 0, bottom: 0, trailing: 0)) Spacer() - Text("비파트님,\n당신의 따듯한 후원 덕분에\n오늘 3개의 학교가 세워졌어요.").font(.customheading1) + .frame(height:20.77) + Text("비파트님,").font(.customheading1) Spacer() - + .frame(height:13) + Text("당신의 따듯한 후원 덕분에").font(.customheading1) + .frame(height:13) + Text("오늘 3개의 학교가 세워졌어요.").font(.customheading1) + Spacer().frame(height:20.77) + .frame(width: framewidth) + } + VStack(alignment: .leading){ NavigationLink { FundingResult() } label: { - Text("후원 결과 확인하기") - .font(.body) + Text("2023 후원 현황 확인하기") + + .font(.customhead4) .foregroundColor(.teal) - .padding(EdgeInsets(top: 0, leading: 8, bottom: 0, trailing: 8)) + .padding(EdgeInsets(top: 2, leading: 16, bottom: 2, trailing: 16)) .overlay( RoundedRectangle(cornerRadius: 30) - .stroke(Color.teal, lineWidth: 2) - ) + .stroke(Color.teal, lineWidth: 1) + ).padding(4) + + } - - Spacer() - + Spacer().frame(height:16) HStack{ - VStack{ + ForEach(0..<6 ) { idx in Button { - // + selectedMenuIndex = idx } label: { VStack{ - Image(systemName:"star") - Text("전체") - } - VStack{ - Image(systemName:"wonsign.circle") - Text("교육") + Image(systemName: menuIcons[idx]) + .foregroundColor(idx == selectedMenuIndex ? .cyan : .gray) + .padding(2) + Text(menuNames[idx]).font(.menuTitle) + .foregroundColor(idx == selectedMenuIndex ? .cyan : .gray) + } + .padding(EdgeInsets(top: 0, leading: 7, bottom: 0, trailing: 7)) } - } + } - //list of CARDS - VStack(alignment: .leading){ - //imagegraph view - ImageGraph(funding: self.$funding) + } + Group{ + switch selectedMenuIndex{ + //suggestive case + case 0: + Group{ + NavigationLink(destination: FundingDetailView()) { + Image("edu1").resizable().frame(width: framewidth, height: frameheight) + } + + NavigationLink(destination: FundingDetailView()) { + Image("edu3").resizable().frame(width: framewidth, height: frameheight) + } + + NavigationLink(destination: FundingDetailView()) { + Image("econ1").resizable().frame(width: framewidth, height: frameheight) + } + } - //card - HStack { - VStack(alignment: .leading) { - Text(funding.title).font(.title3) - - Text(funding.description).font(.custombody2) - .foregroundColor(.gray) - } - Spacer() - VStack{ - Button { - //heart" - } label: { - Image(systemName: "heart").foregroundColor(.teal) - } - Spacer() - NavigationLink { - FundingDetailView() - } label: { - Text("함께하기") - .font(.body) - .foregroundColor(.teal) - .padding(EdgeInsets(top: 0, leading: 8, bottom: 0, trailing: 8)) - .overlay( - RoundedRectangle(cornerRadius: 30) - .stroke(Color.teal, lineWidth: 2) - ) - } + + + case 1: + NavigationLink(destination: FundingDetailView()) { + Image("edu1").resizable().frame(width: framewidth, height: frameheight) + } + NavigationLink(destination: FundingDetailView()) { + Image("edu2").resizable().frame(width: framewidth, height: frameheight) + } + NavigationLink(destination: FundingDetailView()) { + Image("edu3").resizable().frame(width: framewidth, height: frameheight) + } + + case 2: + + Group{ + NavigationLink(destination: FundingDetailView()) { + Image("water1").resizable().frame(width: framewidth, height: frameheight) + } + NavigationLink(destination: FundingDetailView()) { + Image("water2").resizable().frame(width: framewidth, height: frameheight) + } + NavigationLink(destination: FundingDetailView()) { + Image("water3").resizable().frame(width: framewidth, height: frameheight) } } - } - } - - }.padding() - } - - } - -} - -struct ImageGraph: View { - - @Binding var funding : Funding - - var body: some View { - - ZStack(alignment: .bottomLeading){ - Image(funding.media).resizable() - .frame(width: 348, height: 178) - .cornerRadius(8) - HStack{ - ZStack{ - - Rectangle().frame(width:60,height: 4).foregroundColor(.blue).offset(y:17).padding(12) - - HStack{ - ForEach(funding.milestones, id: \.self){ milestone in - VStack{ - Text(milestone.what).foregroundColor(.white).font(.bargraphLarge) - Text(milestone.who).foregroundColor(.white).font(.bargraphSmall) - - Image(systemName: "checkmark") - .foregroundColor(milestone.isDone ? .white : .blue) - .font(.bargraphLarge) - .padding(4) - .background(milestone.isDone ? .blue : .cyan) - .clipShape(Circle()) - - + + + case 3: + Group{ + NavigationLink(destination: FundingDetailView()) { + Image("food1").resizable().frame(width: framewidth, height: frameheight) + } + NavigationLink(destination: FundingDetailView()) { + Image("food2").resizable().frame(width: framewidth, height: frameheight) + } + NavigationLink(destination: FundingDetailView()) { + Image("food3").resizable().frame(width: framewidth, height: frameheight) } } - } - - } - - - + + + case 4: + VStack{ + NavigationLink(destination: FundingDetailView()) { + Image("right1").resizable().frame(width: framewidth, height: frameheight) + } + NavigationLink(destination: FundingDetailView()) { + Image("right2").resizable().frame(width: framewidth, height: frameheight) + } + NavigationLink(destination: FundingDetailView()) { + Image("right3").resizable().frame(width: framewidth, height: frameheight) + } + } + case 5: + VStack{ + NavigationLink(destination: FundingDetailView()) { + Image("econ1").resizable().frame(width: framewidth, height: frameheight) + } + NavigationLink(destination: FundingDetailView()) { + Image("econ2").resizable().frame(width: framewidth, height: frameheight) + } + NavigationLink(destination: FundingDetailView()) { + Image("econ3").resizable().frame(width: framewidth, height: frameheight) + } + } + default: + Text("NO FUNDS") + }//end of selectivemenu case + }//end of Group - Spacer() - Text("\(funding.participationCount)명이\n후원에 동참했어요") - .font(.bargraphTitle).foregroundColor(.white) - .padding(12) - .multilineTextAlignment(.trailing) + .frame(width: framewidth) } } - } } + + + struct ListView_Previews: PreviewProvider { static var previews: some View { HomeView() } } +// +//struct CardLists: View { +// @Binding var fundings: [Funding] +// var body: some View { +// ForEach(fundings, id: \.self) { funding in +// // ForEach(0..<6){ idx in +// //add selected filtering +// VStack(alignment: .leading){ +// //imagegraph view +// ZStack(alignment: .bottomLeading){ +// Image(funding.media).resizable() +// .frame(width: .infinity, height: 178) +// .cornerRadius(8) +// +// HStack{ +// VStack{ +// Text(funding.milestones[0].what).foregroundColor(.white).font(.bargraphLarge) +// Text(funding.milestones[0].who).foregroundColor(.white).font(.bargraphSmall) +// +// Image(systemName: "checkmark") +//// .foregroundColor(funding.milestones[0].isDone ? .white : .blue) +// .foregroundColor(.white) +// .font(.bargraphLarge) +// .padding(4) +//// .background(funding.milestones[0].isDone ? .blue : .cyan) +// .background(.white) +// .clipShape(Circle()) +// +// +// } +// VStack{ +// Text(funding.milestones[1].what).foregroundColor(.white).font(.bargraphLarge) +// Text(funding.milestones[1].who).foregroundColor(.white).font(.bargraphSmall) +// +// Image(systemName: "checkmark") +//// .foregroundColor(funding.milestones[1].isDone ? .white : .blue) +// .foregroundColor(.blue) +// .font(.bargraphLarge) +// .padding(4) +//// .background(funding.milestones[1].isDone ? .blue : .cyan) +// .background(.cyan) +// .clipShape(Circle()) +// +// +// } +// VStack{ +// Text(funding.milestones[2].what).foregroundColor(.white).font(.bargraphLarge) +// Text(funding.milestones[2].who).foregroundColor(.white).font(.bargraphSmall) +// } +// +// +// } +// +// }.background(.black.opacity(0.3)) +// +// +// //card +// HStack { +// VStack(alignment: .leading) { +// Text(funding.title).font(.title3) +// +// Text(funding.description).font(.custombody2) +// .foregroundColor(.gray) +// } +// Spacer() +// VStack{ +// Button { +// // funding.isFavorite.toggle() +// +// } label: { +// Image(systemName: funding.isFavorite ? "heart.fill" : "heart").foregroundColor(.teal) +// } +// Spacer() +// NavigationLink { +// FundingDetailView() +// +// +// } label: { +// Text("함께하기") +// .font(.body) +// .foregroundColor(.teal) +// .padding(EdgeInsets(top: 0, leading: 8, bottom: 0, trailing: 8)) +// .overlay( +// RoundedRectangle(cornerRadius: 30) +// .stroke(Color.teal, lineWidth: 2) +// ) +// }.padding(4) +// } +// } +// }.padding(EdgeInsets(top: 10, leading: 0, bottom: 0, trailing: 0)) +// } +// } +//} + + + + + + + + + + + + + + + + + diff --git a/bpart/Views/InputNameView.swift b/bpart/Views/InputNameView.swift new file mode 100644 index 0000000..254ac09 --- /dev/null +++ b/bpart/Views/InputNameView.swift @@ -0,0 +1,64 @@ +// +// InputNameView.swift +// bpart +// +// Created by 채정영 on 1/27/23. +// + +import SwiftUI + +struct InputNameView : View{ + + @Binding var pageState : String + @State var userName: String = "" + + var body: some View { + VStack(alignment: .leading) { + Button(action: { + pageState = "OnboardingView" + }, label: { + + Image(systemName: "chevron.backward") + .resizable() + .aspectRatio(contentMode: .fit) + .frame(width: 15) + .padding(20) + }) + Text("BPart에서 사용할\n이름을 입력해주세요.") + .font(.customheading1) + .padding(EdgeInsets(top: 30, leading: 20, bottom: 20, trailing: 0)) + + TextField("이름을 임력해주세요", text: $userName ) + .frame(height: 50) + .background(Color(red: 252/255, green: 252/255, blue: 252/255)) + .padding(EdgeInsets(top: 30, leading: 20, bottom: 20, trailing: 0)) + + Spacer() + VStack{ + Text("확인") + .frame(width: 350, height : 60) + .foregroundColor(isNameValid() ? .white: .gray) + .font(.customtitle2) + .background(isNameValid() ? Color(red: 62/255, green: 185/255, blue: 255/255) : Color.white) + .cornerRadius(10) + .border(isNameValid() ? .white: .gray, width: 2) + .cornerRadius(10) + .onTapGesture{ + if(isNameValid()){ + self.pageState = "OnboardingStartView" + } + } + }.padding(20) + }.padding(20) + } + + func isNameValid() -> Bool { + return (userName.count >= 3) + } +} + +struct InputNameView_Previews: PreviewProvider { + static var previews: some View { + InputNameView(pageState: .constant("InputNameView")) + } +} diff --git a/bpart/Views/MainView.swift b/bpart/Views/MainView.swift index 2ec14ae..8e96908 100644 --- a/bpart/Views/MainView.swift +++ b/bpart/Views/MainView.swift @@ -8,22 +8,51 @@ import SwiftUI struct MainView: View { + @State var pageState : String = "RegisterView" + var body: some View { - TabView { - HomeView() - .environmentObject(FirestoreFundingManager()) - .tabItem { - Label("홈", systemImage: "house") - } - MyPageView().tabItem { - Label("마이페이지", systemImage: "heart") - } - FundingMapView().tabItem { - Label("지도", systemImage: "map") - } - } + + + + if pageState == "RegisterView" { + RegisterView(pageState : self.$pageState) + } else if pageState == "OnboardingView" { + OnboardingView(pageState : self.$pageState) + } else if pageState == "InputNameView" { + InputNameView(pageState : self.$pageState) + } else if pageState == "OnboardingStartView" { + OnboardingStartView(pageState : self.$pageState) + } else if pageState == "OnboardingPagerView" { + OnboardingStartView(pageState: self.$pageState) + } else { + + TabView { + HomeView() + .environmentObject(FirestoreFundingManager()) + .tabItem { + Label("홈", systemImage: "house.fill") + } + ResultView().tabItem { + Label("결과", systemImage: "doc.text") + } + NeedsView().tabItem { + Label("니즈", systemImage: "message") + } + + MyPageView().tabItem { + Label("마이페이지", systemImage: "person") + } + FundingMapView().tabItem { + Label("지도", systemImage: "map") + } + } + + + + } //end of else at 26 + + - } } diff --git a/bpart/Views/MyPageView.swift b/bpart/Views/MyPageView.swift index 5f32325..1c8907f 100644 --- a/bpart/Views/MyPageView.swift +++ b/bpart/Views/MyPageView.swift @@ -9,9 +9,30 @@ import SwiftUI struct MyPageView: View { var body: some View { - NavigationStack { - Text("MyPage") - .navigationTitle("MyPage") +// var xOffset : CGFloat = -125 + NavigationView{ + ScrollView{ + VStack(alignment: .leading){ + Image("logo") + .resizable() + .frame(width: 60, height: 19.23) + .padding(EdgeInsets(top: 12, leading: 0, bottom: 0, trailing: 0)) + + Text("마이페이지").font(.customtitle2).offset(y:10) + + + Image("mypage1").resizable().aspectRatio( contentMode: .fit) + + Divider() + + Image("mypage2").resizable().aspectRatio( contentMode: .fit) + + Divider() + + } + }.padding(EdgeInsets(top: 0, leading: 21, bottom: 0, trailing: 21)) + + } } } diff --git a/bpart/Views/NeedsView.swift b/bpart/Views/NeedsView.swift new file mode 100644 index 0000000..70ac035 --- /dev/null +++ b/bpart/Views/NeedsView.swift @@ -0,0 +1,148 @@ +// +// NeedsView.swift +// bpart +// +// Created by Alex Cho on 2023/01/27. +// + +import SwiftUI + +struct NeedsView: View { + let tagCategorys: [String] = [ + "교육", "난민 문제", "전쟁", "피해자 보상", "국가적 피해", + "소상공인", "캠페인", "장애인", "불평등", "정의"] + + @State private var searchString = "" + + var needsDataList: [NeedsData] = [] + + init(){ + needsDataList = NeedsData.all() + } + + + + let columns : [GridItem] = Array(repeating: .init(.flexible()), count: 2) + + var body: some View { + VStack { + Spacer().frame(height: 1) + VStack(alignment: .leading){ + VStack(alignment: .leading) { + Image("logo").resizable().frame(width: 60, height: 19.23) + Spacer() + .frame(height:20.77) + Text("따뜻한 관심이,").font(.customheading1) + Spacer() + .frame(height:13) + Text("필요한 이야기를 나눕니다.").font(.customheading1) + .frame(height:13) + .offset(y:5) + + } + + TextField("검색어를 입력해주세요", text: $searchString) // TODO : ADD Label + .frame(height: 50) + .background(Color(red: 252/255, green: 252/255, blue: 252/255)) + .padding(EdgeInsets(top: 10, leading: 20, bottom: 20, trailing: 0)) + + HStack{ + Spacer() + MyButtonView(tagname: "교육") + MyButtonView(tagname: "난민 문제") + MyButtonView(tagname: "전쟁") + MyButtonView(tagname: "피해자 보상") + MyButtonView(tagname: "국가적 피해") + Spacer() + } + HStack{ + Spacer() + MyButtonView(tagname:"소상공인") + MyButtonView(tagname:"캠페인") + MyButtonView(tagname:"장애인") + MyButtonView(tagname:"불펼등") + MyButtonView(tagname:"정의") + Spacer() + }.padding(EdgeInsets(top: 0, leading: 0, bottom: 10, trailing: 0)) + + + ScrollView { + LazyVGrid(columns:columns, alignment: .leading, spacing: 0) { + ForEach(self.needsDataList, id: \.self) { needsData in + VStack(alignment: .leading){ + VStack(alignment: .leading){ + HStack(alignment: .top){ + + Image(needsData.orgURL) + .resizable() + .frame(width:20, height:20) + Text(needsData.organization) + .foregroundColor(.white) + Spacer() + + + } + + Text(needsData.description) + .foregroundColor(.white) + Spacer() + + Text("\(needsData.numLikes)명이 \n공감하고 있어요") + .foregroundColor(.white) + .font(.custombody4) + .padding(4) + HStack{ + Text(needsData.timestamp) + .foregroundColor(.white) + .font(.customtitle7) + + Spacer() + + HStack{ + Image(systemName:"bubble.left") + .font(.customtitle7) + .foregroundColor(.white) + Text("\(needsData.numComments)") + .foregroundColor(.white) + .font(.customtitle7) + } + } + + }.padding(20) + + }.background(Image(needsData.imageURL) + .resizable() + .aspectRatio(contentMode: .fit)) + .cornerRadius(10) + + }.frame(width: 180, height: 180) + .padding(EdgeInsets(top: 0, leading: 0, bottom: 10, trailing: 0)) + }.padding(0) + } + } + } + .padding(EdgeInsets(top: 12, leading: 15, bottom: 0, trailing: 15)) + } +} + +struct MyButtonView: View{ + var tagname : String + + var body: some View{ + Button(action: {}){ + Text(self.tagname) + .font(.custombody4) + .foregroundColor(.teal) + .padding(EdgeInsets(top: 8, leading: 10, bottom: 8, trailing: 10)) + .overlay( + RoundedRectangle(cornerRadius: 30) + .stroke(Color.teal, lineWidth: 1) + ).padding(0) + }.padding(0) + } +} +struct NeedsView_Previews: PreviewProvider { + static var previews: some View { + NeedsView() + } +} diff --git a/bpart/Views/OnboardingStartView.swift b/bpart/Views/OnboardingStartView.swift new file mode 100644 index 0000000..f5949d7 --- /dev/null +++ b/bpart/Views/OnboardingStartView.swift @@ -0,0 +1,128 @@ +// +// OnboardingStartView.swift +// bpart +// +// Created by 채정영 on 1/27/23. +// + +import SwiftUI +import SwiftUIPager + +struct OnboardingStartView : View{ + + + @Binding var pageState : String + @StateObject var page : Page = .first() + @State private var pagerIdx : Int = 0 + + let headerTexts: [String] = [ + "\"우리 지역에 학교는 이미 많은데..\"\n소통과 공유 없이 진행되어\n빛을 보지 못한 수많은 프로젝트", + "이젠 따로가 아닌 함께 !\n정리된 프로젝트 현황을 보며\n함께 협업하여 목표를 이뤄가요", + "기업, 단체뿐 아니라 개인도\n꼭 필요한 곳에 후원하여\nSDGs 달성할 수 있어요!" + ] + let secondaryTexts: [String] = [ + "SDGs 목표 달성을 위한 수많은 프로젝트가\n정보 공유 없이 각각 흩어져서 진행되어\n중복되거나, 버려진다는 사실을 아셨나요?", + "BPart는 SDGs의 프로젝트 현황 정보를 모아\n기업과 단체, 개인이 지원 단계별 현황을 보고\n꼭 필요한 후원을 할 수 있게해요!", + "개인 후원으로 프로젝트에 부분적으로 참여하여\n큰 부담없이도 SDGs의 장기 목표 달성에\n동참하여 보람을 얻을 수 있어요!" + ] + + let pagerImages : [String] = [ + "pager_1", + "pager_2", + "pager_3" + ] + + let items : [Int] = Array(0..<3) + + var body: some View { + VStack(alignment: .leading){ + Button(action: { + pageState = "InputNameView" + }, label: { + + Image(systemName: "chevron.backward") + .resizable() + .aspectRatio(contentMode: .fit) + .frame(width: 15) + .padding(20) + }) + + Pager(page: page, + data: items, + id: \.self) { idx in + VStack(alignment: .leading) { + + Text(headerTexts[idx]) + .font(.customheading1) + .padding(EdgeInsets(top: 30, leading: 0, bottom: 0, trailing: 0)) + + Text(secondaryTexts[idx]) + .font(.customtitle5) + .foregroundColor(Color(red: 166/255, green: 166/255, blue: 166/255)) + .padding(EdgeInsets(top: 20, leading: 0, bottom: 20, trailing: 0)) + Image(pagerImages[idx]) + .resizable() + .scaledToFit() + //.frame() + + + }//.frame(height: 600) + .padding(20) + + } + .sensitivity(.high) + .horizontal(.startToEnd) + .onPageChanged({ (newIndex) in + pagerIdx = newIndex + }) + + Spacer() + + VStack{ + HStack{ + Spacer() + ForEach(0..<3) { idx in + //Text("\(idx)") + (idx == pagerIdx) ? + Capsule() + .fill(Color(red: 62/255, green: 185/255, blue: 255/255)) + .frame(width: 30, height:10): + Capsule() + .fill(Color(red: 200/255, green: 225/255, blue: 255/255)) + .frame(width: 10, height:10) + } + Spacer() + } + + VStack{ + Text("시작하기") + .frame(width: 350, height : 60) + .background(Color(red: 62/255, green: 185/255, blue: 255/255)) + .cornerRadius(10) + .foregroundColor(.white) + .font(.customtitle2) + .onTapGesture{ + self.pageState = "HomeView" + } + } + + }.padding(20) + +// Text("시작하기") +// .frame(width: 350, height : 60) +// .foregroundColor(.white) +// .font(.customtitle2) +// .cornerRadius(10) +// .background(Color(red: 62/255, green: 185/255, blue: 255/255)) +// .onTapGesture{ +// self.pageState = "OnboardingPagerView" +// } + } + } +} + +struct OnboardingStartView_Previews: PreviewProvider { + static var previews: some View { + OnboardingStartView(pageState: .constant("OnboardingStartView")) + } +} diff --git a/bpart/Views/OnboardingView.swift b/bpart/Views/OnboardingView.swift index 85cdf4c..1fe74a5 100644 --- a/bpart/Views/OnboardingView.swift +++ b/bpart/Views/OnboardingView.swift @@ -8,6 +8,7 @@ import SwiftUI struct OnboardingView: View { + @Binding var pageState : String @State private var allConsentListselected = false let allConsent = "약관 전체 동의" @@ -22,101 +23,126 @@ struct OnboardingView: View { "(선택) 마케팅 정보 수신정보", ] - init(){ - } - var body: some View { consent } var consent: some View { - return NavigationView { + return NavigationStack { VStack(alignment:.leading) { + Button(action: { + pageState = "RegisterView" + }, label: { + Image(systemName: "chevron.backward") + .resizable() + .aspectRatio(contentMode: .fit) + .frame(width: 15) + .padding(20) + }) + Text("서비스 이용 동의") + .font(.customheading0) + .padding(EdgeInsets(top: 30, leading: 35, bottom: 20, trailing: 0)) - HStack{ - Button(action: { - allConsentListselected = !allConsentListselected + VStack(alignment: .leading){ + HStack{ + Button(action: { + allConsentListselected = !allConsentListselected + + if(allConsentListselected){ + for idx in 0...3 { + consentListSelected[idx] = true + } + } + + }, label: { + allConsentListselected ? + Image(systemName: "circle.fill") + .resizable() + .frame(width: 20, height: 20) : + Image(systemName: "circle") + .resizable() + .frame(width: 20, height: 20) + }) + Text(allConsent) + .font(.customheading1) - if(allConsentListselected){ + }.padding(EdgeInsets(top: 30, leading: 15, bottom: 20, trailing: 0)) + .onTapGesture { + allConsentListselected = !allConsentListselected - for idx in 0...3 { - consentListSelected[idx] = true + if(allConsentListselected){ + for idx in 0...3 { + consentListSelected[idx] = true + } } } - }, label: { - allConsentListselected ? - Image(systemName: "circle.fill") : - Image(systemName: "circle") - }) - Text(allConsent) + // line + HStack{ + Spacer() + Rectangle() + .fill(Color.gray) + .frame(width: 300, height: 3) + Spacer() + } - }.padding(EdgeInsets(top: 30, leading: 35, bottom: 20, trailing: 0)) - - // line - Rectangle() - .fill(Color.gray) - .frame(width: 300, height: 3) - .offset(x: 50) - - VStack{ VStack{ ForEach(0.. Bool { + return (consentListSelected[1] && consentListSelected[2]) } } - struct OnboardingView_Previews: PreviewProvider { static var previews: some View { - OnboardingView() + OnboardingView(pageState: .constant("OnboardingView")) } } diff --git a/bpart/Views/RegisterView.swift b/bpart/Views/RegisterView.swift index 48ed82a..3e84121 100644 --- a/bpart/Views/RegisterView.swift +++ b/bpart/Views/RegisterView.swift @@ -8,45 +8,73 @@ import SwiftUI struct RegisterView: View { + + @Binding var pageState : String + var body: some View { VStack{ VStack(alignment: .leading){ Spacer() - Image("sample") // logo + Image("logo") // logo .resizable() - .frame(width: 180, height: 100) + .aspectRatio(contentMode: .fit) + .frame(width: 180) + .padding(EdgeInsets(top: 0, leading: 0, bottom: 30, trailing: 10)) + .offset(x: -40) Text("진정한 도움을 위한 부분들을 함께 완성해주세요.") - .font(.custom("PretendardVariable", size: 20)).fontWeight(.bold) + .font(.customheading1) + .offset(x: -40) Spacer() } VStack(alignment: .center){ Text("SNS 계정으로 간편 가입하기") + .foregroundColor(.gray) + .font(.customtitle5) + .onTapGesture{ + self.pageState = "OnboardingView" + } - HStack{ - Image("sample") + + HStack(){ + Spacer() + Image("kakao_logo") .resizable() - .frame(width: 60) - .aspectRatio(contentMode: .fit) - .clipShape(Circle()) + .frame(width: 60, height: 60) + .onTapGesture{ + self.pageState = "OnboardingView" + } + + Spacer() - Image("sample") + Image("naver_logo") .resizable() - .frame(width: 60) - .aspectRatio(contentMode: .fit) - .clipShape(Circle()) + .frame(width: 60, height: 60) + .onTapGesture{ + self.pageState = "OnboardingView" + } - Button(action : { - //OnboardingView() - }){ - Image("sample") - .resizable() - .frame(width: 60) - .aspectRatio(contentMode: .fit) - .clipShape(Circle()) - } - } - }.frame(height: 80) + Spacer() + + Image("google_logo") + .resizable() + .frame(width: 60, height: 60) + .onTapGesture{ + self.pageState = "OnboardingView" + } + +// NavigationLink(destination: OnboardingView()) { +// Text("GO") +// Image("google_logo") +// .resizable() +// .frame(width: 60, height: 60) +// } + + Spacer() + + }.padding(20) + }.frame(height: 150) + } } } @@ -54,6 +82,6 @@ struct RegisterView: View { struct RegisterView_Previews: PreviewProvider { static var previews: some View { - RegisterView() + RegisterView(pageState:.constant("RegisterView")) } } diff --git a/bpart/Views/ResultView.swift b/bpart/Views/ResultView.swift new file mode 100644 index 0000000..f100109 --- /dev/null +++ b/bpart/Views/ResultView.swift @@ -0,0 +1,42 @@ +// +// ResultView.swift +// bpart +// +// Created by Alex Cho on 2023/01/27. +// + +import SwiftUI + +struct ResultView: View { + + var body: some View { + let framewidth : CGFloat = 358 + + NavigationView{ + ScrollView{ + VStack(alignment: .leading){ + Image("logo").resizable().frame(width: 60, height: 19.23).padding(EdgeInsets(top: 12, leading: 0, bottom: 0, trailing: 0)) + Spacer() + .frame(height:20.77) + Text("여러분들의 따뜻한 후원 덕분에") + .font(.customheading1) + Spacer() + .frame(height:13) + + Text("이룬 완료프로젝트들 입니다.").font(.customheading1) + .frame(width: framewidth) + .offset(x:-54, y: 5) + } + + Image("result1").resizable().frame(width: .infinity, height: 240) + Image("result2").resizable().frame(width: .infinity, height: 240) + Image("result3").resizable().frame(width: .infinity, height: 240) + }.padding(EdgeInsets(top: 0, leading: 21, bottom: 0, trailing: 21)) + } + } +} +struct ResultView_Previews: PreviewProvider { + static var previews: some View { + ResultView() + } +} diff --git a/bpart/bpartApp.swift b/bpart/bpartApp.swift index 9684d77..4de290c 100644 --- a/bpart/bpartApp.swift +++ b/bpart/bpartApp.swift @@ -9,9 +9,9 @@ import SwiftUI import Firebase @main struct bpartApp: App { - init() { - FirebaseApp.configure() - } +// init() { +// FirebaseApp.configure() +// } var body: some Scene { WindowGroup { ContentView()