feat: 하단 탭 아이콘 변경
							
								
								
									
										21
									
								
								SodaLive/Resources/Assets.xcassets/ic_chat.imageset/Contents.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,21 @@
 | 
			
		||||
{
 | 
			
		||||
  "images" : [
 | 
			
		||||
    {
 | 
			
		||||
      "filename" : "ic_chat.png",
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "1x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "2x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "3x"
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "info" : {
 | 
			
		||||
    "author" : "xcode",
 | 
			
		||||
    "version" : 1
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								SodaLive/Resources/Assets.xcassets/ic_chat.imageset/ic_chat.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 401 B  | 
							
								
								
									
										21
									
								
								SodaLive/Resources/Assets.xcassets/ic_chat_selected.imageset/Contents.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,21 @@
 | 
			
		||||
{
 | 
			
		||||
  "images" : [
 | 
			
		||||
    {
 | 
			
		||||
      "filename" : "ic_chat_selected.png",
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "1x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "2x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "3x"
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "info" : {
 | 
			
		||||
    "author" : "xcode",
 | 
			
		||||
    "version" : 1
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								SodaLive/Resources/Assets.xcassets/ic_chat_selected.imageset/ic_chat_selected.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 519 B  | 
							
								
								
									
										21
									
								
								SodaLive/Resources/Assets.xcassets/ic_home.imageset/Contents.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,21 @@
 | 
			
		||||
{
 | 
			
		||||
  "images" : [
 | 
			
		||||
    {
 | 
			
		||||
      "filename" : "ic_home.png",
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "1x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "2x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "3x"
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "info" : {
 | 
			
		||||
    "author" : "xcode",
 | 
			
		||||
    "version" : 1
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								SodaLive/Resources/Assets.xcassets/ic_home.imageset/ic_home.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 394 B  | 
							
								
								
									
										21
									
								
								SodaLive/Resources/Assets.xcassets/ic_home_selected.imageset/Contents.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,21 @@
 | 
			
		||||
{
 | 
			
		||||
  "images" : [
 | 
			
		||||
    {
 | 
			
		||||
      "filename" : "ic_home_selected.png",
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "1x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "2x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "3x"
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "info" : {
 | 
			
		||||
    "author" : "xcode",
 | 
			
		||||
    "version" : 1
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								SodaLive/Resources/Assets.xcassets/ic_home_selected.imageset/ic_home_selected.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 431 B  | 
							
								
								
									
										21
									
								
								SodaLive/Resources/Assets.xcassets/ic_live.imageset/Contents.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,21 @@
 | 
			
		||||
{
 | 
			
		||||
  "images" : [
 | 
			
		||||
    {
 | 
			
		||||
      "filename" : "ic_live.png",
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "1x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "2x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "3x"
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "info" : {
 | 
			
		||||
    "author" : "xcode",
 | 
			
		||||
    "version" : 1
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								SodaLive/Resources/Assets.xcassets/ic_live.imageset/ic_live.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 426 B  | 
							
								
								
									
										21
									
								
								SodaLive/Resources/Assets.xcassets/ic_live_selected.imageset/Contents.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,21 @@
 | 
			
		||||
{
 | 
			
		||||
  "images" : [
 | 
			
		||||
    {
 | 
			
		||||
      "filename" : "ic_live_selected.png",
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "1x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "2x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "3x"
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "info" : {
 | 
			
		||||
    "author" : "xcode",
 | 
			
		||||
    "version" : 1
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								SodaLive/Resources/Assets.xcassets/ic_live_selected.imageset/ic_live_selected.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 764 B  | 
							
								
								
									
										21
									
								
								SodaLive/Resources/Assets.xcassets/ic_my.imageset/Contents.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,21 @@
 | 
			
		||||
{
 | 
			
		||||
  "images" : [
 | 
			
		||||
    {
 | 
			
		||||
      "filename" : "ic_my.png",
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "1x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "2x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "3x"
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "info" : {
 | 
			
		||||
    "author" : "xcode",
 | 
			
		||||
    "version" : 1
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								SodaLive/Resources/Assets.xcassets/ic_my.imageset/ic_my.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 320 B  | 
							
								
								
									
										21
									
								
								SodaLive/Resources/Assets.xcassets/ic_my_selected.imageset/Contents.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,21 @@
 | 
			
		||||
{
 | 
			
		||||
  "images" : [
 | 
			
		||||
    {
 | 
			
		||||
      "filename" : "ic_my_selected.png",
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "1x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "2x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "3x"
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "info" : {
 | 
			
		||||
    "author" : "xcode",
 | 
			
		||||
    "version" : 1
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								SodaLive/Resources/Assets.xcassets/ic_my_selected.imageset/ic_my_selected.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 431 B  | 
							
								
								
									
										21
									
								
								SodaLive/Resources/Assets.xcassets/ic_subscribe.imageset/Contents.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,21 @@
 | 
			
		||||
{
 | 
			
		||||
  "images" : [
 | 
			
		||||
    {
 | 
			
		||||
      "filename" : "ic_subscribe.png",
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "1x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "2x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "3x"
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "info" : {
 | 
			
		||||
    "author" : "xcode",
 | 
			
		||||
    "version" : 1
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								SodaLive/Resources/Assets.xcassets/ic_subscribe.imageset/ic_subscribe.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 439 B  | 
							
								
								
									
										21
									
								
								SodaLive/Resources/Assets.xcassets/ic_subscribe_selected.imageset/Contents.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,21 @@
 | 
			
		||||
{
 | 
			
		||||
  "images" : [
 | 
			
		||||
    {
 | 
			
		||||
      "filename" : "ic_subscribe_selected.png",
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "1x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "2x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "3x"
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "info" : {
 | 
			
		||||
    "author" : "xcode",
 | 
			
		||||
    "version" : 1
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								SodaLive/Resources/Assets.xcassets/ic_subscribe_selected.imageset/ic_subscribe_selected.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 631 B  | 
							
								
								
									
										21
									
								
								SodaLive/Resources/Assets.xcassets/img_text_logo.imageset/Contents.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,21 @@
 | 
			
		||||
{
 | 
			
		||||
  "images" : [
 | 
			
		||||
    {
 | 
			
		||||
      "filename" : "img_text_logo.png",
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "1x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "2x"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "idiom" : "universal",
 | 
			
		||||
      "scale" : "3x"
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "info" : {
 | 
			
		||||
    "author" : "xcode",
 | 
			
		||||
    "version" : 1
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								SodaLive/Resources/Assets.xcassets/img_text_logo.imageset/img_text_logo.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 1.9 KiB  | 
@@ -285,16 +285,10 @@ extension AppDelegate : UNUserNotificationCenterDelegate {
 | 
			
		||||
            AppState.shared.pushMessageId = messageId
 | 
			
		||||
        }
 | 
			
		||||
        
 | 
			
		||||
        if let auditionIdString = auditionIdString, let auditionId = Int(auditionIdString), auditionId > 0 {
 | 
			
		||||
            AppState.shared.startTab = .audition
 | 
			
		||||
            NotificationCenter.default.post(name: .didReceiveHomeTab, object: HomeViewModel.CurrentTab.audition)
 | 
			
		||||
        }
 | 
			
		||||
        
 | 
			
		||||
        completionHandler()
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
extension Notification.Name {
 | 
			
		||||
    static let pointGranted = Notification.Name("POINT_GRANTED")
 | 
			
		||||
    static let didReceiveHomeTab = Notification.Name("didReceiveHomeTab")
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -44,7 +44,7 @@ class AppState: ObservableObject {
 | 
			
		||||
    @Published var purchasedContentOrderType = OrderType.KEEP
 | 
			
		||||
    
 | 
			
		||||
    @Published var isChangeAdultContentVisible = false
 | 
			
		||||
    @Published var startTab: HomeViewModel.CurrentTab = .content
 | 
			
		||||
    @Published var startTab: HomeViewModel.CurrentTab = .home
 | 
			
		||||
    
 | 
			
		||||
    @Published var marketingUtmSource = ""
 | 
			
		||||
    @Published var marketingUtmMedium = ""
 | 
			
		||||
 
 | 
			
		||||
@@ -13,27 +13,27 @@ struct BottomTabView: View {
 | 
			
		||||
    
 | 
			
		||||
    var body: some View {
 | 
			
		||||
        HStack(spacing: 0) {
 | 
			
		||||
            let tabWidth = width / 4
 | 
			
		||||
            let tabWidth = width / 3
 | 
			
		||||
            
 | 
			
		||||
            TabButton(
 | 
			
		||||
                title: "콘텐츠",
 | 
			
		||||
                title: "홈",
 | 
			
		||||
                action: {
 | 
			
		||||
                    if currentTab != .content {
 | 
			
		||||
                        currentTab = .content
 | 
			
		||||
                    if currentTab != .home {
 | 
			
		||||
                        currentTab = .home
 | 
			
		||||
                    }
 | 
			
		||||
                },
 | 
			
		||||
                image: {
 | 
			
		||||
                    currentTab == .content ?
 | 
			
		||||
                    "ic_tabbar_content_selected" :
 | 
			
		||||
                    "ic_tabbar_content_normal"
 | 
			
		||||
                    currentTab == .home ?
 | 
			
		||||
                    "ic_home_selected" :
 | 
			
		||||
                    "ic_home"
 | 
			
		||||
                },
 | 
			
		||||
                fontName: {
 | 
			
		||||
                    currentTab == .content ?
 | 
			
		||||
                    currentTab == .home ?
 | 
			
		||||
                    Font.bold.rawValue :
 | 
			
		||||
                    Font.medium.rawValue
 | 
			
		||||
                },
 | 
			
		||||
                color: {
 | 
			
		||||
                    currentTab == .content ?
 | 
			
		||||
                    currentTab == .home ?
 | 
			
		||||
                    Color.button :
 | 
			
		||||
                    Color.graybb
 | 
			
		||||
                },
 | 
			
		||||
@@ -49,8 +49,8 @@ struct BottomTabView: View {
 | 
			
		||||
                },
 | 
			
		||||
                image: {
 | 
			
		||||
                    currentTab == .live ?
 | 
			
		||||
                    "ic_tabbar_live_selected" :
 | 
			
		||||
                    "ic_tabbar_live_normal"
 | 
			
		||||
                    "ic_live_selected" :
 | 
			
		||||
                    "ic_live"
 | 
			
		||||
                },
 | 
			
		||||
                fontName: {
 | 
			
		||||
                    currentTab == .live ?
 | 
			
		||||
@@ -65,31 +65,6 @@ struct BottomTabView: View {
 | 
			
		||||
                width: tabWidth
 | 
			
		||||
            )
 | 
			
		||||
            
 | 
			
		||||
            TabButton(
 | 
			
		||||
                title: "오디션",
 | 
			
		||||
                action: {
 | 
			
		||||
                    if currentTab != .audition {
 | 
			
		||||
                        currentTab = .audition
 | 
			
		||||
                    }
 | 
			
		||||
                },
 | 
			
		||||
                image: {
 | 
			
		||||
                    currentTab == .audition ?
 | 
			
		||||
                    "ic_tabbar_audition_selected" :
 | 
			
		||||
                    "ic_tabbar_audition_normal"
 | 
			
		||||
                },
 | 
			
		||||
                fontName: {
 | 
			
		||||
                    currentTab == .audition ?
 | 
			
		||||
                    Font.bold.rawValue :
 | 
			
		||||
                    Font.medium.rawValue
 | 
			
		||||
                },
 | 
			
		||||
                color: {
 | 
			
		||||
                    currentTab == .audition ?
 | 
			
		||||
                    Color.button :
 | 
			
		||||
                    Color.graybb
 | 
			
		||||
                },
 | 
			
		||||
                width: tabWidth
 | 
			
		||||
            )
 | 
			
		||||
            
 | 
			
		||||
            TabButton(
 | 
			
		||||
                title: "마이",
 | 
			
		||||
                action: {
 | 
			
		||||
@@ -99,8 +74,8 @@ struct BottomTabView: View {
 | 
			
		||||
                },
 | 
			
		||||
                image: {
 | 
			
		||||
                    currentTab == .mypage ?
 | 
			
		||||
                    "ic_tabbar_my_selected" :
 | 
			
		||||
                    "ic_tabbar_my_normal"
 | 
			
		||||
                    "ic_my_selected" :
 | 
			
		||||
                    "ic_my"
 | 
			
		||||
                },
 | 
			
		||||
                fontName: {
 | 
			
		||||
                    currentTab == .mypage ?
 | 
			
		||||
 
 | 
			
		||||
@@ -18,7 +18,6 @@ struct HomeView: View {
 | 
			
		||||
    @StateObject var contentPlayerPlayManager = ContentPlayerPlayManager.shared
 | 
			
		||||
    
 | 
			
		||||
    private let liveView = LiveView()
 | 
			
		||||
    private let audition = AuditionView()
 | 
			
		||||
    private let contentView = ContentMainTabHomeView()
 | 
			
		||||
    
 | 
			
		||||
    @State private var isShowPlayer = false
 | 
			
		||||
@@ -30,17 +29,13 @@ struct HomeView: View {
 | 
			
		||||
                VStack(spacing: 0) {
 | 
			
		||||
                    ZStack {
 | 
			
		||||
                        contentView
 | 
			
		||||
                            .frame(width: viewModel.currentTab == .content ? proxy.size.width : 0)
 | 
			
		||||
                            .opacity(viewModel.currentTab == .content ? 1.0 : 0.01)
 | 
			
		||||
                            .frame(width: viewModel.currentTab == .home ? proxy.size.width : 0)
 | 
			
		||||
                            .opacity(viewModel.currentTab == .home ? 1.0 : 0.01)
 | 
			
		||||
                        
 | 
			
		||||
                        liveView
 | 
			
		||||
                            .frame(width: viewModel.currentTab == .live ? proxy.size.width : 0)
 | 
			
		||||
                            .opacity(viewModel.currentTab == .live ? 1.0 : 0.01)
 | 
			
		||||
                        
 | 
			
		||||
                        audition
 | 
			
		||||
                            .frame(width: viewModel.currentTab == .audition ? proxy.size.width : 0)
 | 
			
		||||
                            .opacity(viewModel.currentTab == .audition ? 1.0 : 0.01)
 | 
			
		||||
                        
 | 
			
		||||
                        if viewModel.currentTab == .mypage {
 | 
			
		||||
                            MyPageView()
 | 
			
		||||
                        }
 | 
			
		||||
 
 | 
			
		||||
@@ -18,24 +18,11 @@ final class HomeViewModel: ObservableObject {
 | 
			
		||||
    private let playbackTrackingRepository = PlaybackTrackingRepository()
 | 
			
		||||
    
 | 
			
		||||
    enum CurrentTab: String {
 | 
			
		||||
        case content, live, audition, mypage
 | 
			
		||||
        case home, live, mypage
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Published var currentTab: CurrentTab = AppState.shared.startTab
 | 
			
		||||
    
 | 
			
		||||
    init() {
 | 
			
		||||
        NotificationCenter.default
 | 
			
		||||
            .publisher(for: .didReceiveHomeTab)
 | 
			
		||||
            .compactMap {
 | 
			
		||||
                $0.object as? CurrentTab
 | 
			
		||||
            }
 | 
			
		||||
            .sink { [weak self] currentTab in
 | 
			
		||||
                AppState.shared.setAppStep(step: .main)
 | 
			
		||||
                self?.currentTab = currentTab
 | 
			
		||||
            }
 | 
			
		||||
            .store(in: &subscription)
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    func pushTokenUpdate(pushToken: String) {
 | 
			
		||||
        userRepository.updatePushToken(pushToken: pushToken)
 | 
			
		||||
            .sink { result in
 | 
			
		||||
 
 | 
			
		||||