-
Notifications
You must be signed in to change notification settings - Fork 0
[Feature] Tuist 각 레이어 모듈화 #136
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
a6013be
b04b212
209671a
0da6ab0
0ea6f9e
3e8a8fa
36fefe8
5f45c79
81cc57f
566b86a
8d18aeb
44cf0ba
512c851
df48c89
5824a43
1237010
5841acf
5b09ca7
d1428c3
4289b20
95dc4bb
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
This file was deleted.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,16 @@ | ||
| import ProjectDescription | ||
| import ProjectDescriptionHelpers | ||
|
|
||
| let project = Project.app( | ||
| name: Module.app.name, | ||
| organizationName: Module.organizationName, | ||
| infoPlist: .file(path: "InfoPlists/info.plist"), | ||
| dependencies: [ | ||
| Module.inject, | ||
| Module.domain, | ||
| Module.data, | ||
| Module.presentation, | ||
| Module.util, | ||
| ].map(\.project), | ||
| resources: .default | ||
| ) | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -4,6 +4,9 @@ | |
| // | ||
| // Created by 김도연 on 3/13/25. | ||
| // | ||
| import RLDomain | ||
| import RLData | ||
| import RLInject | ||
|
Comment on lines
+7
to
+9
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
import RLDomain
import RLData
import RLInject
+import RLDesignSystemAlso applies to: 19-20 🤖 Prompt for AI Agents |
||
|
|
||
| import UIKit | ||
|
|
||
|
|
@@ -13,7 +16,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate { | |
| func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { | ||
| // Override point for customization after application launch. | ||
| registerDependencies() | ||
|
|
||
| UIFont.registerFonts() | ||
| return true | ||
| } | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -4,6 +4,8 @@ | |
| // | ||
| // Created by 김도연 on 3/13/25. | ||
| // | ||
| import RLPresentation | ||
| import RLUtil | ||
|
|
||
| import UIKit | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,18 @@ | ||
| import ProjectDescription | ||
| import ProjectDescriptionHelpers | ||
|
|
||
| let project = Project.framework( | ||
| name: Module.data.name, | ||
| organizationName: Module.organizationName, | ||
| infoPlist: .default, | ||
| dependencies: [ | ||
| Module.inject.project, | ||
| Module.domain.project, | ||
| Module.util.project, | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. P0) domain이 util을 가지고 있으면 해당 모듈을 data 모듈에서 사용할 수 있는 걸로 알고 있습니다만 요거 한번 체크해서 graph 한번 다시 구조화해야할 것 같네용 |
||
| .external(name: "Moya"), | ||
| .external(name: "CombineMoya"), | ||
| ], | ||
| coreDataModels: [ | ||
| .coreDataModel("Sources/DTOs/DTOs.xcdatamodeld") | ||
| ] | ||
| ) | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -4,6 +4,7 @@ | |
| // | ||
| // Created by 신승재 on 3/18/25. | ||
| // | ||
| import RLDomain | ||
|
|
||
| import Foundation | ||
| import CoreData | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,33 @@ | ||
| // | ||
| // CoreDataContainer.swift | ||
| // RunLog | ||
| // | ||
| // Created by 신승재 on 3/20/25. | ||
| // | ||
|
|
||
| import CoreData | ||
|
|
||
| public final class CoreDataContainer { | ||
|
|
||
| public init() {} | ||
|
|
||
| lazy var persistentContainer: NSPersistentContainer = { | ||
| guard let modelURL = Bundle.module.url(forResource: "DTOs", withExtension: "momd"), | ||
| let model = NSManagedObjectModel(contentsOf: modelURL) else { | ||
| fatalError("Failed to load Core Data model named DTOs") | ||
| } | ||
|
|
||
| let container = NSPersistentContainer(name: "DTOs", managedObjectModel: model) | ||
| container.loadPersistentStores { _, error in | ||
| if let error = error as NSError? { | ||
| fatalError("Unresolved Core Data error: \(error), \(error.userInfo)") | ||
| } | ||
| } | ||
| return container | ||
| }() | ||
|
|
||
| public var context: NSManagedObjectContext { | ||
| return persistentContainer.viewContext | ||
| } | ||
|
|
||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
P2) 추후에 config파일 등 넣게 되면, SupportingFile끼리 폴더링하고 그 안에서 infoplist 위치시키는 방향으로 가면 될 것 같습니다