diff --git a/DemoApps/ChatDemoApp/ChatDemoApp.xcodeproj/project.pbxproj b/DemoApps/ChatDemoApp/ChatDemoApp.xcodeproj/project.pbxproj index ef61a6e..c613553 100644 --- a/DemoApps/ChatDemoApp/ChatDemoApp.xcodeproj/project.pbxproj +++ b/DemoApps/ChatDemoApp/ChatDemoApp.xcodeproj/project.pbxproj @@ -276,11 +276,24 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_IDENTITY = "iPhone Developer"; ENABLE_PREVIEWS = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/ChatDemoApp-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.ChatDemoApp; PRODUCT_NAME = ChatDemoApp; SDKROOT = iphoneos; @@ -362,12 +375,25 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/ChatDemoAppTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.ChatDemoAppTests; PRODUCT_NAME = ChatDemoAppTests; SDKROOT = iphoneos; @@ -388,12 +414,25 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/ChatDemoAppTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.ChatDemoAppTests; PRODUCT_NAME = ChatDemoAppTests; SDKROOT = iphoneos; @@ -420,11 +459,24 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_IDENTITY = "iPhone Developer"; ENABLE_PREVIEWS = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/ChatDemoApp-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.ChatDemoApp; PRODUCT_NAME = ChatDemoApp; SDKROOT = iphoneos; diff --git a/DemoApps/DiaryDemoApp/DiaryDemoApp.xcodeproj/project.pbxproj b/DemoApps/DiaryDemoApp/DiaryDemoApp.xcodeproj/project.pbxproj index 2a5ecaf..5de5e67 100644 --- a/DemoApps/DiaryDemoApp/DiaryDemoApp.xcodeproj/project.pbxproj +++ b/DemoApps/DiaryDemoApp/DiaryDemoApp.xcodeproj/project.pbxproj @@ -388,11 +388,24 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_IDENTITY = "iPhone Developer"; ENABLE_PREVIEWS = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/DiaryDemoApp-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.DiaryDemoApp; PRODUCT_NAME = DiaryDemoApp; SDKROOT = iphoneos; @@ -411,12 +424,25 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/DiaryDemoAppTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.DiaryDemoAppTests; PRODUCT_NAME = DiaryDemoAppTests; SDKROOT = iphoneos; @@ -439,11 +465,24 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_IDENTITY = "iPhone Developer"; ENABLE_PREVIEWS = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/DiaryDemoApp-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.DiaryDemoApp; PRODUCT_NAME = DiaryDemoApp; SDKROOT = iphoneos; @@ -466,12 +505,25 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/DiaryDemoAppTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.DiaryDemoAppTests; PRODUCT_NAME = DiaryDemoAppTests; SDKROOT = iphoneos; diff --git a/DemoApps/HomeDemoApp/HomeDemoApp.xcodeproj/project.pbxproj b/DemoApps/HomeDemoApp/HomeDemoApp.xcodeproj/project.pbxproj index f282b4e..91c7d90 100644 --- a/DemoApps/HomeDemoApp/HomeDemoApp.xcodeproj/project.pbxproj +++ b/DemoApps/HomeDemoApp/HomeDemoApp.xcodeproj/project.pbxproj @@ -274,12 +274,25 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/HomeDemoAppTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.HomeDemoAppTests; PRODUCT_NAME = HomeDemoAppTests; SDKROOT = iphoneos; @@ -300,12 +313,25 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/HomeDemoAppTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.HomeDemoAppTests; PRODUCT_NAME = HomeDemoAppTests; SDKROOT = iphoneos; @@ -385,11 +411,24 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_IDENTITY = "iPhone Developer"; ENABLE_PREVIEWS = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/HomeDemoApp-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.HomeDemoApp; PRODUCT_NAME = HomeDemoApp; SDKROOT = iphoneos; @@ -410,11 +449,24 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_IDENTITY = "iPhone Developer"; ENABLE_PREVIEWS = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/HomeDemoApp-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.HomeDemoApp; PRODUCT_NAME = HomeDemoApp; SDKROOT = iphoneos; diff --git a/DemoApps/MyPageDemoApp/MyPageDemoApp.xcodeproj/project.pbxproj b/DemoApps/MyPageDemoApp/MyPageDemoApp.xcodeproj/project.pbxproj index fd93905..546e3ec 100644 --- a/DemoApps/MyPageDemoApp/MyPageDemoApp.xcodeproj/project.pbxproj +++ b/DemoApps/MyPageDemoApp/MyPageDemoApp.xcodeproj/project.pbxproj @@ -276,11 +276,24 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_IDENTITY = "iPhone Developer"; ENABLE_PREVIEWS = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/MyPageDemoApp-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.MyPageDemoApp; PRODUCT_NAME = MyPageDemoApp; SDKROOT = iphoneos; @@ -301,11 +314,24 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_IDENTITY = "iPhone Developer"; ENABLE_PREVIEWS = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/MyPageDemoApp-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.MyPageDemoApp; PRODUCT_NAME = MyPageDemoApp; SDKROOT = iphoneos; @@ -328,12 +354,25 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/MyPageDemoAppTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.MyPageDemoAppTests; PRODUCT_NAME = MyPageDemoAppTests; SDKROOT = iphoneos; @@ -466,12 +505,25 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/MyPageDemoAppTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.MyPageDemoAppTests; PRODUCT_NAME = MyPageDemoAppTests; SDKROOT = iphoneos; diff --git a/DemoApps/StatsDemoApp/StatsDemoApp.xcodeproj/project.pbxproj b/DemoApps/StatsDemoApp/StatsDemoApp.xcodeproj/project.pbxproj index 282c779..11cc87b 100644 --- a/DemoApps/StatsDemoApp/StatsDemoApp.xcodeproj/project.pbxproj +++ b/DemoApps/StatsDemoApp/StatsDemoApp.xcodeproj/project.pbxproj @@ -333,12 +333,25 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/StatsDemoAppTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.StatsDemoAppTests; PRODUCT_NAME = StatsDemoAppTests; SDKROOT = iphoneos; @@ -414,11 +427,24 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_IDENTITY = "iPhone Developer"; ENABLE_PREVIEWS = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/StatsDemoApp-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.StatsDemoApp; PRODUCT_NAME = StatsDemoApp; SDKROOT = iphoneos; @@ -437,12 +463,25 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/StatsDemoAppTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.StatsDemoAppTests; PRODUCT_NAME = StatsDemoAppTests; SDKROOT = iphoneos; @@ -469,11 +508,24 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_IDENTITY = "iPhone Developer"; ENABLE_PREVIEWS = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/StatsDemoApp-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.StatsDemoApp; PRODUCT_NAME = StatsDemoApp; SDKROOT = iphoneos; diff --git a/Projects/Chat/Chat.xcodeproj/project.pbxproj b/Projects/Chat/Chat.xcodeproj/project.pbxproj index 4e8e679..4d48404 100644 --- a/Projects/Chat/Chat.xcodeproj/project.pbxproj +++ b/Projects/Chat/Chat.xcodeproj/project.pbxproj @@ -300,12 +300,25 @@ isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/ChatTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.ChatTests; PRODUCT_NAME = ChatTests; SDKROOT = iphoneos; @@ -385,6 +398,10 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/Chat-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = ( @@ -392,6 +409,15 @@ "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.Chat; PRODUCT_NAME = Chat; SDKROOT = iphoneos; @@ -471,12 +497,25 @@ isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/ChatTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.ChatTests; PRODUCT_NAME = ChatTests; SDKROOT = iphoneos; @@ -499,6 +538,10 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/Chat-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = ( @@ -506,6 +549,15 @@ "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.Chat; PRODUCT_NAME = Chat; SDKROOT = iphoneos; diff --git a/Projects/CommonUI/CommonUI.xcodeproj/project.pbxproj b/Projects/CommonUI/CommonUI.xcodeproj/project.pbxproj index 51c3591..a2b680b 100644 --- a/Projects/CommonUI/CommonUI.xcodeproj/project.pbxproj +++ b/Projects/CommonUI/CommonUI.xcodeproj/project.pbxproj @@ -7,12 +7,19 @@ objects = { /* Begin PBXBuildFile section */ + 416C58AEE5E4491991982CFF /* HomeProgressView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7CE59FBFD1AAA1B5E7B45FD5 /* HomeProgressView.swift */; }; 473C96577A92DD6F71241A76 /* MyPageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9266801EFBA6178C5B70C641 /* MyPageView.swift */; }; - 959AFCDA2E1CF75A006F9875 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 959AFCD92E1CF75A006F9875 /* Images.xcassets */; }; - 959AFCDC2E1D0271006F9875 /* Colors.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 959AFCDB2E1D0271006F9875 /* Colors.xcassets */; }; - 959AFCDF2E1D3F01006F9875 /* HomeProgressView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 959AFCDE2E1D3EF7006F9875 /* HomeProgressView.swift */; }; + 4782805C566E0871101C2B60 /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F1321D979BCBEAF892D8C0C8 /* RxSwift.framework */; }; + 4A71A59F40DC619E678B1CAD /* RxCocoaRuntime.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CA4151AAF9C1E241C733FF76 /* RxCocoaRuntime.framework */; }; + 537F80B2F39FD73F6F78F9B2 /* HomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47AA88AB7E000E21ED0BD7D8 /* HomeView.swift */; }; + 7D319882A302F75CCE46A48C /* HomeQuizView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39A77FC9A0E2D7F62CA16E90 /* HomeQuizView.swift */; }; + 951226DA2E2340E3000FDE3D /* QuizView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 951226D92E2340DC000FDE3D /* QuizView.swift */; }; + BAD8B768F782046D4AA1C073 /* RxCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3DE048BEDCB92B48F401061 /* RxCocoa.framework */; }; BE81B1F3E60D37D75A058D2B /* SnapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9CCDC15081A22BAED6318E3E /* SnapKit.framework */; }; - C9831384B25F6DE9A630F6FC /* HomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD69BB6AD88A246EE5D437C3 /* HomeView.swift */; }; + CEADBDD98AC9921C05AAC1DA /* QuizCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7A9CE581345578C7C0F1F1A /* QuizCollectionViewCell.swift */; }; + CFB380B298BD58E955349DB3 /* DefaultNavigationBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = C69A8F84966D9255A07CB9B1 /* DefaultNavigationBar.swift */; }; + D5A1FD9A23361E68C449CB95 /* RxRelay.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DDBA6D35FFEB10E15860DEAA /* RxRelay.framework */; }; + E040692C1AD240D1B76D922B /* Domain.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D7F071BE47C00467572D4D30 /* Domain.framework */; }; E055AA66777B1D4CC8C884E4 /* CommonUIAssets.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75EF1CA00DA4B6E64F0CB1F0 /* CommonUIAssets.swift */; }; E0865F2849CCB89CC83D3B77 /* Coordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27E2803575B1ED3D999440C1 /* Coordinator.swift */; }; F3DA12FF4D18AE405F2F6B08 /* BaseViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09C3D5AB996D321B353C1255 /* BaseViewController.swift */; }; @@ -36,17 +43,26 @@ /* Begin PBXFileReference section */ 09C3D5AB996D321B353C1255 /* BaseViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseViewController.swift; sourceTree = ""; }; 27E2803575B1ED3D999440C1 /* Coordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Coordinator.swift; sourceTree = ""; }; + 39A77FC9A0E2D7F62CA16E90 /* HomeQuizView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeQuizView.swift; sourceTree = ""; }; 3EBDD10D8389EBB23B42C54F /* ChatView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatView.swift; sourceTree = ""; }; + 47AA88AB7E000E21ED0BD7D8 /* HomeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeView.swift; sourceTree = ""; }; 75EF1CA00DA4B6E64F0CB1F0 /* CommonUIAssets.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommonUIAssets.swift; sourceTree = ""; }; + 7CE59FBFD1AAA1B5E7B45FD5 /* HomeProgressView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeProgressView.swift; sourceTree = ""; }; 9266801EFBA6178C5B70C641 /* MyPageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MyPageView.swift; sourceTree = ""; }; - 959AFCD92E1CF75A006F9875 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; - 959AFCDB2E1D0271006F9875 /* Colors.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Colors.xcassets; sourceTree = ""; }; - 959AFCDE2E1D3EF7006F9875 /* HomeProgressView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeProgressView.swift; sourceTree = ""; }; + 951226D62E233E3E000FDE3D /* Colors.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Colors.xcassets; sourceTree = ""; }; + 951226D72E233E3E000FDE3D /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; + 951226D92E2340DC000FDE3D /* QuizView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QuizView.swift; sourceTree = ""; }; 9CCDC15081A22BAED6318E3E /* SnapKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SnapKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; C28FE6392E1612667826E5C5 /* DiaryView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DiaryView.swift; sourceTree = ""; }; + C69A8F84966D9255A07CB9B1 /* DefaultNavigationBar.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DefaultNavigationBar.swift; sourceTree = ""; }; + CA4151AAF9C1E241C733FF76 /* RxCocoaRuntime.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxCocoaRuntime.framework; sourceTree = BUILT_PRODUCTS_DIR; }; CDBD62030B65AE3A6A7F34D6 /* CommonUI-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = "CommonUI-Info.plist"; sourceTree = ""; }; - DD69BB6AD88A246EE5D437C3 /* HomeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeView.swift; sourceTree = ""; }; + D7F071BE47C00467572D4D30 /* Domain.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Domain.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + DDBA6D35FFEB10E15860DEAA /* RxRelay.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxRelay.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + E7A9CE581345578C7C0F1F1A /* QuizCollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QuizCollectionViewCell.swift; sourceTree = ""; }; F0F7A08F911F04FE3F6FE36B /* CommonUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CommonUI.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + F1321D979BCBEAF892D8C0C8 /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + F3DE048BEDCB92B48F401061 /* RxCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -54,6 +70,11 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + E040692C1AD240D1B76D922B /* Domain.framework in Frameworks */, + BAD8B768F782046D4AA1C073 /* RxCocoa.framework in Frameworks */, + 4A71A59F40DC619E678B1CAD /* RxCocoaRuntime.framework in Frameworks */, + D5A1FD9A23361E68C449CB95 /* RxRelay.framework in Frameworks */, + 4782805C566E0871101C2B60 /* RxSwift.framework in Frameworks */, BE81B1F3E60D37D75A058D2B /* SnapKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -94,36 +115,36 @@ name = Project; sourceTree = ""; }; - 88FA467F361B11350139B775 /* Base */ = { + 7F5AEF3C3719E8689E7AF017 /* Navigation */ = { isa = PBXGroup; children = ( - 09C3D5AB996D321B353C1255 /* BaseViewController.swift */, + C69A8F84966D9255A07CB9B1 /* DefaultNavigationBar.swift */, ); - path = Base; + path = Navigation; sourceTree = ""; }; - 959AFCD82E1CF73B006F9875 /* Assets */ = { + 88FA467F361B11350139B775 /* Base */ = { isa = PBXGroup; children = ( - 959AFCD92E1CF75A006F9875 /* Images.xcassets */, - 959AFCDB2E1D0271006F9875 /* Colors.xcassets */, + 09C3D5AB996D321B353C1255 /* BaseViewController.swift */, ); - path = Assets; + path = Base; sourceTree = ""; }; - 959AFCDD2E1D0600006F9875 /* Home */ = { + 951226D82E233E3E000FDE3D /* Assets */ = { isa = PBXGroup; children = ( - DD69BB6AD88A246EE5D437C3 /* HomeView.swift */, - 959AFCDE2E1D3EF7006F9875 /* HomeProgressView.swift */, + 951226D62E233E3E000FDE3D /* Colors.xcassets */, + 951226D72E233E3E000FDE3D /* Images.xcassets */, ); - path = Home; + path = Assets; sourceTree = ""; }; 9786E1056828B1E6D5EDAB7C /* View */ = { isa = PBXGroup; children = ( - 959AFCDD2E1D0600006F9875 /* Home */, + 7F5AEF3C3719E8689E7AF017 /* Navigation */, + DFA6DB2905DB98838A8AEA6F /* Home */, 3EBDD10D8389EBB23B42C54F /* ChatView.swift */, C28FE6392E1612667826E5C5 /* DiaryView.swift */, 9266801EFBA6178C5B70C641 /* MyPageView.swift */, @@ -142,7 +163,7 @@ BADD047B94176A526A5B7FB2 /* Sources */ = { isa = PBXGroup; children = ( - 959AFCD82E1CF73B006F9875 /* Assets */, + 951226D82E233E3E000FDE3D /* Assets */, 88FA467F361B11350139B775 /* Base */, 532B9EC7299244FE28190921 /* Coordinator */, 2DBBCE824C7AA1459F0CEA0F /* Enum */, @@ -151,10 +172,27 @@ path = Sources; sourceTree = ""; }; + DFA6DB2905DB98838A8AEA6F /* Home */ = { + isa = PBXGroup; + children = ( + 7CE59FBFD1AAA1B5E7B45FD5 /* HomeProgressView.swift */, + 39A77FC9A0E2D7F62CA16E90 /* HomeQuizView.swift */, + 47AA88AB7E000E21ED0BD7D8 /* HomeView.swift */, + E7A9CE581345578C7C0F1F1A /* QuizCollectionViewCell.swift */, + 951226D92E2340DC000FDE3D /* QuizView.swift */, + ); + path = Home; + sourceTree = ""; + }; E9599493962ACA9F628F96AD /* Products */ = { isa = PBXGroup; children = ( F0F7A08F911F04FE3F6FE36B /* CommonUI.framework */, + D7F071BE47C00467572D4D30 /* Domain.framework */, + F3DE048BEDCB92B48F401061 /* RxCocoa.framework */, + CA4151AAF9C1E241C733FF76 /* RxCocoaRuntime.framework */, + DDBA6D35FFEB10E15860DEAA /* RxRelay.framework */, + F1321D979BCBEAF892D8C0C8 /* RxSwift.framework */, 9CCDC15081A22BAED6318E3E /* SnapKit.framework */, ); name = Products; @@ -222,8 +260,6 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 959AFCDA2E1CF75A006F9875 /* Images.xcassets in Resources */, - 959AFCDC2E1D0271006F9875 /* Colors.xcassets in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -236,12 +272,16 @@ files = ( F3DA12FF4D18AE405F2F6B08 /* BaseViewController.swift in Sources */, E0865F2849CCB89CC83D3B77 /* Coordinator.swift in Sources */, - 959AFCDF2E1D3F01006F9875 /* HomeProgressView.swift in Sources */, E055AA66777B1D4CC8C884E4 /* CommonUIAssets.swift in Sources */, F7673E4248628D67F3542848 /* ChatView.swift in Sources */, FB3FE0AB8AE6868B6D5E241C /* DiaryView.swift in Sources */, - C9831384B25F6DE9A630F6FC /* HomeView.swift in Sources */, + 951226DA2E2340E3000FDE3D /* QuizView.swift in Sources */, + 416C58AEE5E4491991982CFF /* HomeProgressView.swift in Sources */, + 7D319882A302F75CCE46A48C /* HomeQuizView.swift in Sources */, + 537F80B2F39FD73F6F78F9B2 /* HomeView.swift in Sources */, + CEADBDD98AC9921C05AAC1DA /* QuizCollectionViewCell.swift in Sources */, 473C96577A92DD6F71241A76 /* MyPageView.swift in Sources */, + CFB380B298BD58E955349DB3 /* DefaultNavigationBar.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -257,6 +297,10 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/CommonUI-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = ( @@ -264,6 +308,11 @@ "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap"; PRODUCT_BUNDLE_IDENTIFIER = io.tuist.CommonUI; PRODUCT_NAME = CommonUI; SDKROOT = iphoneos; @@ -342,6 +391,10 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/CommonUI-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = ( @@ -349,6 +402,11 @@ "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap"; PRODUCT_BUNDLE_IDENTIFIER = io.tuist.CommonUI; PRODUCT_NAME = CommonUI; SDKROOT = iphoneos; diff --git a/Projects/CommonUI/Project.swift b/Projects/CommonUI/Project.swift index fdc122b..ed43a2f 100644 --- a/Projects/CommonUI/Project.swift +++ b/Projects/CommonUI/Project.swift @@ -11,7 +11,9 @@ let project = Project( sources: ["Sources/**"], dependencies: [ .project(target: "Domain", path: "../Domain"), - .external(name: "SnapKit") + .external(name: "SnapKit"), + .external(name: "RxSwift"), + .external(name: "RxCocoa") ] ) ] diff --git a/Projects/CommonUI/Sources/Assets/Colors.xcassets/LMGrayColor/LMGray03.colorset/Contents.json b/Projects/CommonUI/Sources/Assets/Colors.xcassets/LMGrayColor/LMGray03.colorset/Contents.json new file mode 100644 index 0000000..b9abd6d --- /dev/null +++ b/Projects/CommonUI/Sources/Assets/Colors.xcassets/LMGrayColor/LMGray03.colorset/Contents.json @@ -0,0 +1,38 @@ +{ + "colors" : [ + { + "color" : { + "color-space" : "srgb", + "components" : { + "alpha" : "1.000", + "blue" : "0x8C", + "green" : "0x78", + "red" : "0x71" + } + }, + "idiom" : "universal" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "color" : { + "color-space" : "srgb", + "components" : { + "alpha" : "1.000", + "blue" : "0x8C", + "green" : "0x78", + "red" : "0x71" + } + }, + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/Contents.json b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/Contents.json new file mode 100644 index 0000000..73c0059 --- /dev/null +++ b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/back.imageset/Contents.json b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/back.imageset/Contents.json new file mode 100644 index 0000000..79099b2 --- /dev/null +++ b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/back.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "back@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "back@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/back.imageset/back@2x.png b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/back.imageset/back@2x.png new file mode 100644 index 0000000..38abfa8 Binary files /dev/null and b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/back.imageset/back@2x.png differ diff --git a/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/back.imageset/back@3x.png b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/back.imageset/back@3x.png new file mode 100644 index 0000000..ad55e57 Binary files /dev/null and b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/back.imageset/back@3x.png differ diff --git a/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/play.imageset/Contents.json b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/play.imageset/Contents.json new file mode 100644 index 0000000..c9f3912 --- /dev/null +++ b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/play.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "play@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "play@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/play.imageset/play@2x.png b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/play.imageset/play@2x.png new file mode 100644 index 0000000..aa9ba33 Binary files /dev/null and b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/play.imageset/play@2x.png differ diff --git a/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/play.imageset/play@3x.png b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/play.imageset/play@3x.png new file mode 100644 index 0000000..c2aadeb Binary files /dev/null and b/Projects/CommonUI/Sources/Assets/Images.xcassets/Icon/play.imageset/play@3x.png differ diff --git a/Projects/CommonUI/Sources/Enum/CommonUIAssets.swift b/Projects/CommonUI/Sources/Enum/CommonUIAssets.swift index adada42..620ef0f 100644 --- a/Projects/CommonUI/Sources/Enum/CommonUIAssets.swift +++ b/Projects/CommonUI/Sources/Enum/CommonUIAssets.swift @@ -26,6 +26,10 @@ public enum CommonUIAssets { /// * logo public static let smallLogo = image(named: "small_logo") + /// * Icon + public static let IconPlay = image(named: "play") + public static let IconBack = image(named: "back") + /// color public static let LMOrange1 = color(named: "LMOrange01") public static let LMOrange3 = color(named: "LMOrange03") @@ -33,6 +37,7 @@ public enum CommonUIAssets { public static let LMWhite = color(named: "LMWhite") public static let LMBlack = color(named: "LMBlack") public static let LMGray1 = color(named: "LMGray01") + public static let LMGray3 = color(named: "LMGray03") public static let LMGray5 = color(named: "LMGray05") } diff --git a/Projects/CommonUI/Sources/View/Home/HomeProgressView.swift b/Projects/CommonUI/Sources/View/Home/HomeProgressView.swift index dfd44e7..cfc6377 100644 --- a/Projects/CommonUI/Sources/View/Home/HomeProgressView.swift +++ b/Projects/CommonUI/Sources/View/Home/HomeProgressView.swift @@ -15,7 +15,7 @@ open class HomeProgressView: UIView { var progressLabel = UILabel() let progressEntireView = UIView().then { $0.backgroundColor = CommonUIAssets.LMGray5 - $0.layer.cornerRadius = 5 + $0.layer.cornerRadius = 3 } var progressView = UIView() var buttonStackView = UIStackView() @@ -48,19 +48,49 @@ open class HomeProgressView: UIView { progressLabel = progressLabel.then { $0.text = "진행률: 60%" $0.textColor = CommonUIAssets.LMGray1 - $0.font = .systemFont(ofSize: 11, weight: .regular) + $0.font = .systemFont(ofSize: 12, weight: .regular) + } + + progressView = progressView.then { + $0.backgroundColor = CommonUIAssets.LMOrange1 + $0.layer.cornerRadius = 3 + $0.layer.maskedCorners = [.layerMinXMinYCorner, .layerMinXMaxYCorner] + // TODO: 100% 달성 시 모든 corner에 적용 + } + + buttonStackView = buttonStackView.then { + $0.distribution = .fillEqually + $0.spacing = 14 + } + + restartButton = restartButton.then { + $0.setTitle("다시 시작하기", for: .normal) + $0.setTitleColor(CommonUIAssets.LMGray1, for: .normal) + $0.titleLabel?.font = .systemFont(ofSize: 14, weight: .regular) + $0.backgroundColor = .clear + $0.layer.borderColor = CommonUIAssets.LMOrange1?.cgColor + $0.layer.borderWidth = 1 + $0.layer.cornerRadius = 10 + } + + continueButton = continueButton.then { + $0.setTitle("이어하기", for: .normal) + $0.setTitleColor(CommonUIAssets.LMGray1, for: .normal) + $0.titleLabel?.font = .systemFont(ofSize: 14, weight: .regular) + $0.backgroundColor = CommonUIAssets.LMOrange1 + $0.layer.cornerRadius = 10 } } func initUI() { [restartButton, continueButton] - .forEach { buttonStackView.addSubview($0) } + .forEach { buttonStackView.addArrangedSubview($0) } [courseLabel, progressLabel, progressEntireView, progressView, buttonStackView] .forEach { self.addSubview($0) } self.snp.makeConstraints { - $0.height.equalTo(151) + $0.height.equalTo(160) $0.width.equalTo(344) } @@ -69,15 +99,28 @@ open class HomeProgressView: UIView { } progressLabel.snp.makeConstraints { - $0.top.equalTo(courseLabel.snp.bottom).offset(14) + $0.top.equalTo(courseLabel.snp.bottom).offset(12) $0.leading.equalTo(courseLabel.snp.leading) } progressEntireView.snp.makeConstraints { - $0.top.equalTo(progressLabel.snp.bottom).offset(12) + $0.top.equalTo(progressLabel.snp.bottom).offset(10) $0.centerX.equalToSuperview() $0.height.equalTo(6) - $0.width.equalTo(300) + $0.width.equalToSuperview().inset(20) + } + + progressView.snp.makeConstraints { + $0.top.equalTo(progressLabel.snp.bottom).offset(10) + $0.height.equalTo(6) + $0.leading.equalToSuperview().inset(20) + $0.width.equalTo(100) + } + + buttonStackView.snp.makeConstraints { + $0.centerX.equalToSuperview() + $0.width.bottom.equalToSuperview().inset(20) + $0.height.equalTo(38) } } diff --git a/Projects/CommonUI/Sources/View/Home/HomeQuizView.swift b/Projects/CommonUI/Sources/View/Home/HomeQuizView.swift new file mode 100644 index 0000000..80406dc --- /dev/null +++ b/Projects/CommonUI/Sources/View/Home/HomeQuizView.swift @@ -0,0 +1,100 @@ +// +// HomeQuizView.swift +// CommonUI +// +// Created by 박지윤 on 7/12/25. +// + +import Domain +import UIKit +import SnapKit +import RxSwift +import Then + +open class HomeQuizView: UIView, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout { + + var courses: [CourseVO] = [] + var disposeBag = DisposeBag() + public var onStartButtonTapped: ((IndexPath) -> Void)? + + var courseLabel = UILabel() + private var quizCollectionView: UICollectionView + + public override init(frame: CGRect) { + let layout = UICollectionViewFlowLayout() + layout.minimumLineSpacing = 16 + quizCollectionView = UICollectionView(frame: .zero, collectionViewLayout: layout) + + super.init(frame: frame) + + setupCollectionView() + initAttribute() + initUI() + } + + public func bind(course: CourseVO) { + courseLabel.text = "\(course.courseLv ?? 1)단계 퀴즈" + } + + func initAttribute() { + self.backgroundColor = .clear + + courseLabel = courseLabel.then { + $0.text = "1단계 퀴즈" + $0.textColor = CommonUIAssets.LMBlack + $0.font = .systemFont(ofSize: 16, weight: .medium) + } + } + + func initUI() { + [courseLabel, quizCollectionView] + .forEach { self.addSubview($0) } + + courseLabel.snp.makeConstraints { + $0.top.equalToSuperview() + $0.leading.equalToSuperview().inset(14) + } + + quizCollectionView.snp.makeConstraints { + $0.top.equalTo(courseLabel.snp.bottom).offset(11) + $0.centerX.equalToSuperview() + $0.width.equalTo(344) + $0.height.equalTo(281) + } + } + + func setupCollectionView() { + quizCollectionView.backgroundColor = .clear + quizCollectionView.dataSource = self + quizCollectionView.delegate = self + quizCollectionView.register(HomeQuizCell.self, forCellWithReuseIdentifier: HomeQuizCell.identifier) + quizCollectionView.isScrollEnabled = false + } + + required public init?(coder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + public func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { + return 3 + } + + public func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { + guard let cell = collectionView.dequeueReusableCell(withReuseIdentifier: HomeQuizCell.identifier, for: indexPath) as? HomeQuizCell else { + return UICollectionViewCell() + } + // cell.configure(with: courses[indexPath.item]) + cell.onStartButtonTapped + .subscribe(onNext: { [weak self] in + // indexPath와 함께 이벤트 전달 + self?.onStartButtonTapped?(indexPath) + }) + .disposed(by: cell.disposeBag) + + return cell + } + + public func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize { + return CGSize(width: collectionView.bounds.width, height: 83) + } +} diff --git a/Projects/CommonUI/Sources/View/Home/HomeView.swift b/Projects/CommonUI/Sources/View/Home/HomeView.swift index 61834e1..0f2291c 100644 --- a/Projects/CommonUI/Sources/View/Home/HomeView.swift +++ b/Projects/CommonUI/Sources/View/Home/HomeView.swift @@ -8,13 +8,11 @@ import Domain import UIKit import SnapKit +import RxSwift import Then open class HomeView: UIView { - let logoImageView = UIImageView().then { - $0.image = CommonUIAssets.smallLogo - $0.contentMode = .scaleAspectFit - } + let logoImageView = UIImageView() var profileView = UIView() var titleLabelStackView = UIStackView() var titleLabel = UILabel() @@ -59,26 +57,19 @@ open class HomeView: UIView { func initUI() { self.snp.makeConstraints { - $0.height.equalTo(228) + $0.height.equalTo(113) } [titleLabel, subtitleLabel] - .forEach { titleLabelStackView.addSubview($0) } + .forEach { titleLabelStackView.addArrangedSubview($0) } - [logoImageView, profileView, titleLabelStackView] + [profileView, titleLabelStackView] .forEach { self.addSubview($0) } - logoImageView.snp.makeConstraints { - $0.height.equalTo(34) - $0.width.equalTo(65) - $0.leading.equalTo(self.safeAreaInsets).inset(20) - $0.top.equalTo(self.safeAreaInsets).inset(77) - } - profileView.snp.makeConstraints { $0.height.width.equalTo(56) $0.leading.equalTo(self.safeAreaInsets).inset(24) - $0.top.equalTo(logoImageView.snp.bottom).offset(34) + $0.top.equalToSuperview().inset(25) } titleLabelStackView.snp.makeConstraints { @@ -87,14 +78,6 @@ open class HomeView: UIView { $0.height.equalTo(49) $0.trailing.equalToSuperview().inset(20) } - - titleLabel.snp.makeConstraints { - $0.top.equalToSuperview().inset(2) - } - - subtitleLabel.snp.makeConstraints { - $0.bottom.equalToSuperview().inset(2) - } } required public init?(coder: NSCoder) { diff --git a/Projects/CommonUI/Sources/View/Home/QuizCollectionViewCell.swift b/Projects/CommonUI/Sources/View/Home/QuizCollectionViewCell.swift new file mode 100644 index 0000000..8f4a9ff --- /dev/null +++ b/Projects/CommonUI/Sources/View/Home/QuizCollectionViewCell.swift @@ -0,0 +1,108 @@ +// +// QuizCollectionViewCell.swift +// CommonUI +// +// Created by 박지윤 on 7/12/25. +// + +import UIKit +import RxSwift +import RxCocoa +import Domain + +final class HomeQuizCell: UICollectionViewCell { + static let identifier = "HomeQuizCell" + var quizTitleLabel = UILabel() + var quizSubtitleLabel = UILabel() + var startButton = UIButton() + + let disposeBag = DisposeBag() + let onStartButtonTapped = PublishSubject() + + override init(frame: CGRect) { + super.init(frame: frame) + initAttribute() + initUI() + bindActions() + quizTitleLabel.text = "처음 보는 사람과 인사하기" + quizSubtitleLabel.text = "인사와 대화의 첫걸음을 배워요" + } + + private func initAttribute() { + contentView.backgroundColor = .white + contentView.layer.cornerRadius = 12 + contentView.layer.borderWidth = 2 + contentView.layer.borderColor = CommonUIAssets.LMOrange1?.cgColor + + quizTitleLabel = quizTitleLabel.then { + $0.textColor = CommonUIAssets.LMBlack + $0.font = .systemFont(ofSize: 15, weight: .regular) + } + + quizSubtitleLabel = quizSubtitleLabel.then { + $0.textColor = CommonUIAssets.LMGray3 + $0.font = .systemFont(ofSize: 12, weight: .regular) + } + + startButton = startButton.then { + var config = UIButton.Configuration.plain() + config.image = CommonUIAssets.IconPlay + config.imagePlacement = .trailing + config.imagePadding = 8 + config.baseForegroundColor = CommonUIAssets.LMGray1 + config.contentInsets = NSDirectionalEdgeInsets(top: 6, leading: 10, bottom: 6, trailing: 10) + + let title = "시작하기" + let attributedTitle = AttributedString(title, attributes: AttributeContainer([ + .font: UIFont.systemFont(ofSize: 12, weight: .regular) + ])) + config.attributedTitle = attributedTitle + + $0.configuration = config + $0.layer.borderWidth = 1 + $0.layer.borderColor = CommonUIAssets.LMOrange1?.cgColor + $0.layer.cornerRadius = 10 + } + } + + private func initUI() { + [quizTitleLabel, quizSubtitleLabel, startButton] + .forEach { contentView.addSubview($0) } + + contentView.snp.makeConstraints { + $0.height.equalTo(83) + $0.width.horizontalEdges.equalToSuperview() + } + + quizTitleLabel.snp.makeConstraints { + $0.top.leading.equalToSuperview().inset(20) + } + + quizSubtitleLabel.snp.makeConstraints { + $0.top.equalTo(quizTitleLabel.snp.bottom).offset(10) + $0.leading.equalToSuperview().inset(20) + } + + startButton.snp.makeConstraints { + $0.height.equalTo(35) + $0.width.equalTo(90) + $0.trailing.equalToSuperview().inset(20) + $0.centerY.equalToSuperview() + } + } + + required init?(coder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + func configure(with course: CourseVO) { + quizTitleLabel.text = "처음 보는 사람과 인사하기" + quizSubtitleLabel.text = "인사와 대화의 첫걸음을 배워요" + } + + func bindActions() { + startButton.rx.tap + .bind(to: onStartButtonTapped) + .disposed(by: disposeBag) + } +} diff --git a/Projects/CommonUI/Sources/View/Home/QuizView.swift b/Projects/CommonUI/Sources/View/Home/QuizView.swift new file mode 100644 index 0000000..47057ae --- /dev/null +++ b/Projects/CommonUI/Sources/View/Home/QuizView.swift @@ -0,0 +1,7 @@ +// +// QuizView.swift +// CommonUI +// +// Created by 박지윤 on 7/13/25. +// + diff --git a/Projects/CommonUI/Sources/View/Navigation/DefaultNavigationBar.swift b/Projects/CommonUI/Sources/View/Navigation/DefaultNavigationBar.swift new file mode 100644 index 0000000..0bbe0fe --- /dev/null +++ b/Projects/CommonUI/Sources/View/Navigation/DefaultNavigationBar.swift @@ -0,0 +1,74 @@ +// +// DefaultNavigationBar.swift +// CommonUI +// +// Created by 박지윤 on 7/13/25. +// + +import UIKit +import SnapKit +import Then + +public final class DefaultNavigationBar: UIView { + public let leftButton = UIButton() + public let rightButton = UIButton() + public let titleLabel = UILabel() + + public init(leftImage: UIImage?, + rightImage: UIImage?, + isRightButtonHidden: Bool) { + super.init(frame: .zero) + setupUI() + setupLayout() + + leftButton.setImage(leftImage, for: .normal) + rightButton.setImage(leftImage, for: .normal) + rightButton.isHidden = isRightButtonHidden + } + + required init?(coder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + private func setupUI() { + backgroundColor = .white + + leftButton.setTitle(nil, for: .normal) + rightButton.setTitle(nil, for: .normal) + + titleLabel.font = .systemFont(ofSize: 18, weight: .semibold) + titleLabel.textColor = .black + titleLabel.textAlignment = .center + + addSubview(leftButton) + addSubview(rightButton) + addSubview(titleLabel) + } + + private func setupLayout() { + self.snp.makeConstraints { + $0.height.equalTo(45) + } + + leftButton.snp.makeConstraints { + $0.leading.equalToSuperview().inset(8) + $0.centerY.equalToSuperview() + $0.width.height.equalTo(44) + } + + rightButton.snp.makeConstraints { + $0.trailing.equalToSuperview().inset(8) + $0.centerY.equalToSuperview() + $0.width.height.equalTo(44) + } + + titleLabel.snp.makeConstraints { + $0.centerX.centerY.equalToSuperview() + } + } + + public func setupViewProperty(title: String) { + titleLabel.text = title + } +} + diff --git a/Projects/Diary/Diary.xcodeproj/project.pbxproj b/Projects/Diary/Diary.xcodeproj/project.pbxproj index aef4939..3eba568 100644 --- a/Projects/Diary/Diary.xcodeproj/project.pbxproj +++ b/Projects/Diary/Diary.xcodeproj/project.pbxproj @@ -312,12 +312,25 @@ isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/DiaryTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.DiaryTests; PRODUCT_NAME = DiaryTests; SDKROOT = iphoneos; @@ -340,6 +353,10 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/Diary-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = ( @@ -347,6 +364,15 @@ "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.Diary; PRODUCT_NAME = Diary; SDKROOT = iphoneos; @@ -371,12 +397,25 @@ isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/DiaryTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.DiaryTests; PRODUCT_NAME = DiaryTests; SDKROOT = iphoneos; @@ -403,6 +442,10 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/Diary-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = ( @@ -410,6 +453,15 @@ "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.Diary; PRODUCT_NAME = Diary; SDKROOT = iphoneos; diff --git a/Projects/Home/Home.xcodeproj/project.pbxproj b/Projects/Home/Home.xcodeproj/project.pbxproj index 7018cf6..375dc06 100644 --- a/Projects/Home/Home.xcodeproj/project.pbxproj +++ b/Projects/Home/Home.xcodeproj/project.pbxproj @@ -9,6 +9,7 @@ /* Begin PBXBuildFile section */ 17541D9BBB3EF49648EC9C0A /* SnapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 45853054D615EC22DCAE768B /* SnapKit.framework */; }; 269DAC6E999F4D87706612D6 /* Home.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9290645AFD421A6E8E0A3C77 /* Home.framework */; }; + 29A6A16A51EF2303ABFBFE1B /* QuizViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E0C685D2E3267AFAC6DB5A6F /* QuizViewController.swift */; }; 2B8F29F0ED90A533AB1AEC24 /* HomeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = CADBDBCE22FDE304B4127596 /* HomeTests.swift */; }; 4F716CDA321151AA81112601 /* HomeViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4D07A2CCAE96E1029807650 /* HomeViewModel.swift */; }; 5C60EADD2EE58CDE8C6FF2C1 /* Then.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B9FB11E9C0BBE6CD5E87883B /* Then.framework */; }; @@ -68,6 +69,7 @@ C466DCA2491CBF5CEFE41363 /* HomeCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeCoordinator.swift; sourceTree = ""; }; CADBDBCE22FDE304B4127596 /* HomeTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeTests.swift; sourceTree = ""; }; D4D07A2CCAE96E1029807650 /* HomeViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeViewModel.swift; sourceTree = ""; }; + E0C685D2E3267AFAC6DB5A6F /* QuizViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QuizViewController.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -183,6 +185,7 @@ isa = PBXGroup; children = ( 98031B28ABD96EE3BC4F0720 /* HomeViewController.swift */, + E0C685D2E3267AFAC6DB5A6F /* QuizViewController.swift */, ); path = View; sourceTree = ""; @@ -284,6 +287,7 @@ files = ( A006D63667B9C5F2F821181E /* HomeCoordinator.swift in Sources */, F0B8C6281C6499214422B948 /* HomeViewController.swift in Sources */, + 29A6A16A51EF2303ABFBFE1B /* QuizViewController.swift in Sources */, 4F716CDA321151AA81112601 /* HomeViewModel.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -317,6 +321,10 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/Home-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = ( @@ -324,6 +332,15 @@ "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.Home; PRODUCT_NAME = Home; SDKROOT = iphoneos; @@ -412,6 +429,10 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/Home-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = ( @@ -419,6 +440,15 @@ "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.Home; PRODUCT_NAME = Home; SDKROOT = iphoneos; @@ -439,12 +469,25 @@ isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/HomeTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.HomeTests; PRODUCT_NAME = HomeTests; SDKROOT = iphoneos; @@ -462,12 +505,25 @@ isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/HomeTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.HomeTests; PRODUCT_NAME = HomeTests; SDKROOT = iphoneos; diff --git a/Projects/Home/Sources/View/HomeViewController.swift b/Projects/Home/Sources/View/HomeViewController.swift index 84f59e8..166b087 100644 --- a/Projects/Home/Sources/View/HomeViewController.swift +++ b/Projects/Home/Sources/View/HomeViewController.swift @@ -12,9 +12,15 @@ import RxSwift public class HomeViewController: BaseViewController { let viewModel: HomeViewModel + let scrollView = UIScrollView() + let contentView = UIView() + let logoImageView = UIImageView().then { + $0.image = CommonUIAssets.smallLogo + $0.contentMode = .scaleAspectFit + } let homeView = HomeView() let homeProgressView = HomeProgressView() - var courseLabel = UILabel() + let homeQuizView = HomeQuizView() public init(homeViewModel: HomeViewModel) { self.viewModel = homeViewModel @@ -25,44 +31,80 @@ public class HomeViewController: BaseViewController { fatalError("init(coder:) has not been implemented") } + public override func viewWillAppear(_ animated: Bool) { + super.viewWillAppear(animated) + self.navigationController?.setNavigationBarHidden(true, animated: false) + } + public override func viewDidLoad() { super.viewDidLoad() + bindActions() + bindTransition() + } + + private func bindActions() { + + } + + private func bindTransition() { + homeQuizView.onStartButtonTapped = { [weak self] indexPath in + let quizViewController = QuizViewController() + quizViewController.hidesBottomBarWhenPushed = true + self?.navigationController?.pushViewController(quizViewController, animated: true) + } } public override func setupViewProperty() { view.backgroundColor = CommonUIAssets.LMOrange4 - courseLabel = courseLabel.then { - $0.text = "1단계 퀴즈" - $0.textColor = CommonUIAssets.LMBlack - $0.font = .systemFont(ofSize: 16, weight: .regular) + scrollView.do { + $0.showsVerticalScrollIndicator = false + $0.showsHorizontalScrollIndicator = false } } public override func setupHierarchy() { - [homeView, homeProgressView, courseLabel].forEach { view.addSubview($0) } + [logoImageView, scrollView].forEach { view.addSubview($0) } + scrollView.addSubview(contentView) + [homeView, homeProgressView, homeQuizView].forEach { contentView.addSubview($0) } } public override func setupDelegate() { } public override func setupLayout() { + logoImageView.snp.makeConstraints { + $0.height.equalTo(34) + $0.width.equalTo(65) + $0.top.equalTo(view.safeAreaLayoutGuide) + $0.leading.equalToSuperview().inset(20) + } + + scrollView.snp.makeConstraints { + $0.top.equalTo(logoImageView.snp.bottom).offset(10) + $0.horizontalEdges.bottom.equalToSuperview() + } + + contentView.snp.makeConstraints { + $0.edges.equalToSuperview() + $0.width.equalToSuperview() + } + homeView.snp.makeConstraints { $0.top.horizontalEdges.equalToSuperview() } homeProgressView.snp.makeConstraints { - $0.top.equalTo(homeView.snp.bottom).offset(4) + $0.top.equalTo(homeView.snp.bottom) $0.centerX.equalToSuperview() } - courseLabel.snp.makeConstraints { + homeQuizView.snp.makeConstraints { $0.top.equalTo(homeProgressView.snp.bottom).offset(30) - $0.leading.equalTo(30) + $0.centerX.equalToSuperview() + $0.height.equalTo(330) + $0.width.equalToSuperview().inset(20) + $0.bottom.equalToSuperview().inset(20) } } - - public override func setupBind() { -// courseLabel.text = "" + "단계 퀴즈" - } } diff --git a/Projects/Home/Sources/View/QuizViewController.swift b/Projects/Home/Sources/View/QuizViewController.swift new file mode 100644 index 0000000..baf59ed --- /dev/null +++ b/Projects/Home/Sources/View/QuizViewController.swift @@ -0,0 +1,91 @@ +// +// QuizViewController.swift +// Home +// +// Created by 박지윤 on 7/12/25. +// + +import CommonUI +import UIKit +import SnapKit +import RxSwift + +public class QuizViewController: UIViewController { + let navigationBar = DefaultNavigationBar(leftImage: CommonUIAssets.IconBack ?? nil, + rightImage: nil, + isRightButtonHidden: true) + let scrollView = UIScrollView() + let contentView = UIView() + let logoImageView = UIImageView().then { + $0.image = CommonUIAssets.smallLogo + $0.contentMode = .scaleAspectFit + } + let homeView = HomeView() + let homeProgressView = HomeProgressView() + let homeQuizView = HomeQuizView() + +// public init(homeViewModel: HomeViewModel) { +// self.viewModel = homeViewModel +// super.init() +// } + init() { + super.init(nibName: nil, bundle: nil) + } + + required init?(coder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + public override func viewWillAppear(_ animated: Bool) { + super.viewWillAppear(animated) + self.navigationController?.setNavigationBarHidden(true, animated: false) + } + + public override func viewDidLoad() { + super.viewDidLoad() + setupViewProperty() + setupHierarchy() + setupLayout() + bindDatas() + } + + public func setupViewProperty() { + view.backgroundColor = CommonUIAssets.LMOrange4 + scrollView.backgroundColor = .yellow + contentView.backgroundColor = .red + + scrollView.do { + $0.showsVerticalScrollIndicator = false + $0.showsHorizontalScrollIndicator = false + } + } + + public func setupHierarchy() { + [navigationBar, scrollView].forEach { view.addSubview($0) } + scrollView.addSubview(contentView) + } + + public func setupDelegate() { + } + + public func setupLayout() { + navigationBar.snp.makeConstraints { + $0.top.equalTo(view.safeAreaLayoutGuide) + $0.width.centerX.equalToSuperview() + } + + scrollView.snp.makeConstraints { + $0.top.equalTo(navigationBar.snp.bottom) + $0.horizontalEdges.bottom.equalToSuperview() + } + + contentView.snp.makeConstraints { + $0.edges.equalToSuperview() + $0.width.equalToSuperview() + } + } + + func bindDatas() { + navigationBar.setupViewProperty(title: "처음 보는 사람과 인사하기") + } +} diff --git a/Projects/LearnMate/LearnMate.xcodeproj/project.pbxproj b/Projects/LearnMate/LearnMate.xcodeproj/project.pbxproj index 42a5ccb..ca7181a 100644 --- a/Projects/LearnMate/LearnMate.xcodeproj/project.pbxproj +++ b/Projects/LearnMate/LearnMate.xcodeproj/project.pbxproj @@ -370,11 +370,24 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_IDENTITY = "iPhone Developer"; ENABLE_PREVIEWS = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Support/LearnMate-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.LearnMate; PRODUCT_NAME = LearnMate; SDKROOT = iphoneos; @@ -395,11 +408,24 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_IDENTITY = "iPhone Developer"; ENABLE_PREVIEWS = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Support/LearnMate-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.LearnMate; PRODUCT_NAME = LearnMate; SDKROOT = iphoneos; @@ -481,12 +507,25 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Support/LearnMateTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.LearnMateTests; PRODUCT_NAME = LearnMateTests; SDKROOT = iphoneos; @@ -511,12 +550,25 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Support/LearnMateTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.LearnMateTests; PRODUCT_NAME = LearnMateTests; SDKROOT = iphoneos; diff --git a/Projects/MyPage/MyPage.xcodeproj/project.pbxproj b/Projects/MyPage/MyPage.xcodeproj/project.pbxproj index e511f48..1a6d36b 100644 --- a/Projects/MyPage/MyPage.xcodeproj/project.pbxproj +++ b/Projects/MyPage/MyPage.xcodeproj/project.pbxproj @@ -317,6 +317,10 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/MyPage-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = ( @@ -324,6 +328,15 @@ "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.MyPage; PRODUCT_NAME = MyPage; SDKROOT = iphoneos; @@ -406,6 +419,10 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/MyPage-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = ( @@ -413,6 +430,15 @@ "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.MyPage; PRODUCT_NAME = MyPage; SDKROOT = iphoneos; @@ -433,12 +459,25 @@ isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/MyPageTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.MyPageTests; PRODUCT_NAME = MyPageTests; SDKROOT = iphoneos; @@ -515,12 +554,25 @@ isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/MyPageTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.MyPageTests; PRODUCT_NAME = MyPageTests; SDKROOT = iphoneos; diff --git a/Projects/Stats/Stats.xcodeproj/project.pbxproj b/Projects/Stats/Stats.xcodeproj/project.pbxproj index 749c48c..7726919 100644 --- a/Projects/Stats/Stats.xcodeproj/project.pbxproj +++ b/Projects/Stats/Stats.xcodeproj/project.pbxproj @@ -285,6 +285,10 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/Stats-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = ( @@ -292,6 +296,15 @@ "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.Chat; PRODUCT_NAME = Stats; SDKROOT = iphoneos; @@ -316,12 +329,25 @@ isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/StatsTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.StatsTests; PRODUCT_NAME = StatsTests; SDKROOT = iphoneos; @@ -451,12 +477,25 @@ isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/StatsTests-Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.StatsTests; PRODUCT_NAME = StatsTests; SDKROOT = iphoneos; @@ -483,6 +522,10 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/../../Tuist/.build/checkouts/RxSwift/Sources/RxCocoaRuntime/include", + ); INFOPLIST_FILE = "Derived/InfoPlists/Stats-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = ( @@ -490,6 +533,15 @@ "@executable_path/Frameworks", "@loader_path/Frameworks", ); + OTHER_CFLAGS = ( + "$(inherited)", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); + OTHER_SWIFT_FLAGS = ( + "$(inherited)", + "-Xcc", + "-fmodule-map-file=$(SRCROOT)/../../Tuist/.build/tuist-derived/RxCocoaRuntime/RxCocoaRuntime.modulemap", + ); PRODUCT_BUNDLE_IDENTIFIER = io.tuist.Chat; PRODUCT_NAME = Stats; SDKROOT = iphoneos;