├── .gitignore ├── .gitmodules ├── APP1_voiceRecorder ├── beginning │ └── voiceMemo │ │ ├── voiceMemo.xcodeproj │ │ ├── project.pbxproj │ │ ├── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ ├── xcshareddata │ │ │ │ └── IDEWorkspaceChecks.plist │ │ │ └── xcuserdata │ │ │ │ └── jyg.xcuserdatad │ │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ │ └── jyg.xcuserdatad │ │ │ ├── xcdebugger │ │ │ └── Breakpoints_v2.xcbkptlist │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── voiceMemo │ │ ├── App │ │ ├── AppDelegate.swift │ │ ├── LaunchScreen.storyboard │ │ └── voiceMemoApp.swift │ │ ├── Assets.xcassets │ │ ├── AccentColor.colorset │ │ │ └── Contents.json │ │ ├── AppIcon.appiconset │ │ │ ├── AppIcon.png │ │ │ └── Contents.json │ │ ├── Color │ │ │ ├── Contents.json │ │ │ ├── customBackgroundGreen.colorset │ │ │ │ └── Contents.json │ │ │ ├── customBlack.colorset │ │ │ │ └── Contents.json │ │ │ ├── customCoolGray.colorset │ │ │ │ └── Contents.json │ │ │ ├── customGray0.colorset │ │ │ │ └── Contents.json │ │ │ ├── customGray1.colorset │ │ │ │ └── Contents.json │ │ │ ├── customGray2.colorset │ │ │ │ └── Contents.json │ │ │ ├── customGreen.colorset │ │ │ │ └── Contents.json │ │ │ ├── customIconGray.colorset │ │ │ │ └── Contents.json │ │ │ ├── customOrange.colorset │ │ │ │ └── Contents.json │ │ │ ├── customSky.colorset │ │ │ │ └── Contents.json │ │ │ └── customWhite.colorset │ │ │ │ └── Contents.json │ │ ├── Common │ │ │ ├── Contents.json │ │ │ ├── background.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── background.png │ │ │ ├── close.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── close.svg │ │ │ ├── leftArrow.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── leftArrow.svg │ │ │ └── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── logo.png │ │ ├── Contents.json │ │ ├── MemoList │ │ │ ├── Contents.json │ │ │ ├── memoIcon.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── memoIcon.svg │ │ │ ├── memoIcon_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── memoIcon_selected.svg │ │ │ └── trash.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── trash.svg │ │ ├── Onboarding │ │ │ ├── Contents.json │ │ │ ├── onboarding_1.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── onboarding_1.pdf │ │ │ ├── onboarding_2.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── onboarding_2.pdf │ │ │ ├── onboarding_3.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── onboarding_3.pdf │ │ │ ├── onboarding_4.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── onboarding_4.pdf │ │ │ └── startHome.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── startHome.png │ │ ├── Setting │ │ │ ├── Contents.json │ │ │ ├── arrowRight.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── arrowRight.svg │ │ │ ├── settingIcon.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── settingIcon.svg │ │ │ └── settingIcon_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── settingIcon_selected.svg │ │ ├── Timer │ │ │ ├── Contents.json │ │ │ ├── timerIcon.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── timerIcon.svg │ │ │ └── timerIcon_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── timerIcon_selected.svg │ │ ├── TodoList │ │ │ ├── Contents.json │ │ │ ├── pencil.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── pencil.svg │ │ │ ├── selectedBox.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── selectedBox.svg │ │ │ ├── todoIcon.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── todoIcon.svg │ │ │ ├── todoIcon_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── todoIcon_selected.svg │ │ │ ├── unSelectedBox.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── unSelectedBox.svg │ │ │ └── writeBtn.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── writeBtn.svg │ │ └── VoiceRecorder │ │ │ ├── Contents.json │ │ │ ├── mic.imageset │ │ │ ├── Contents.json │ │ │ └── mic.pdf │ │ │ ├── mic_recording.imageset │ │ │ ├── Contents.json │ │ │ └── mic_recording.png │ │ │ ├── pause.imageset │ │ │ ├── Contents.json │ │ │ └── pause.svg │ │ │ ├── play.imageset │ │ │ ├── Contents.json │ │ │ └── play.svg │ │ │ ├── recordIcon.imageset │ │ │ ├── Contents.json │ │ │ └── recordIcon.png │ │ │ └── recordIcon_selected.imageset │ │ │ ├── Contents.json │ │ │ └── recordIcon_selected.png │ │ ├── Component │ │ ├── CustomView │ │ │ └── WriteBtn.swift │ │ └── NavigationBar │ │ │ ├── CustomNavigationBar.swift │ │ │ └── NavigationBtnType.swift │ │ ├── Core │ │ ├── Extension │ │ │ ├── Color+extensions.swift │ │ │ ├── Date+Extensions.swift │ │ │ ├── Double+Extensions.swift │ │ │ └── Int+Extensions.swift │ │ └── Service │ │ │ └── NotificationService.swift │ │ ├── Feature │ │ ├── Home │ │ │ ├── HomeView.swift │ │ │ ├── HomeViewModel.swift │ │ │ ├── MemoList │ │ │ │ ├── Memo │ │ │ │ │ ├── MemoView.swift │ │ │ │ │ └── MemoViewModel.swift │ │ │ │ ├── MemoListView.swift │ │ │ │ └── MemoListViewModel.swift │ │ │ ├── Setting │ │ │ │ └── SettingView.swift │ │ │ ├── Timer │ │ │ │ ├── TimerView.swift │ │ │ │ └── TimerViewModel.swift │ │ │ ├── TodoList │ │ │ │ ├── Todo │ │ │ │ │ ├── TodoView.swift │ │ │ │ │ └── TodoViewModel.swift │ │ │ │ ├── TodoListViewModel.swift │ │ │ │ └── ToodoListView.swift │ │ │ └── VoiceRecorder │ │ │ │ ├── VoiceRecorderView.swift │ │ │ │ └── VoiceRecorderViewModel.swift │ │ └── Onboarding │ │ │ ├── OnboardingView.swift │ │ │ └── OnboardingViewModel.swift │ │ ├── Model │ │ ├── Home │ │ │ └── Tab.swift │ │ ├── Memo │ │ │ └── Memo.swift │ │ ├── Onboarding │ │ │ └── OnboardingContent.swift │ │ ├── Path │ │ │ ├── Path.swift │ │ │ └── PathType.swift │ │ ├── Timer │ │ │ └── Time.swift │ │ └── Todo │ │ │ └── Todo.swift │ │ └── Preview Content │ │ └── Preview Assets.xcassets │ │ └── Contents.json └── completion │ └── voiceMemo │ ├── voiceMemo.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── jyg.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── jyg.xcuserdatad │ │ ├── xcdebugger │ │ └── Breakpoints_v2.xcbkptlist │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── voiceMemo │ ├── App │ ├── AppDelegate.swift │ ├── LaunchScreen.storyboard │ └── voiceMemoApp.swift │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ ├── AppIcon.png │ │ └── Contents.json │ ├── Color │ │ ├── Contents.json │ │ ├── customBackgroundGreen.colorset │ │ │ └── Contents.json │ │ ├── customBlack.colorset │ │ │ └── Contents.json │ │ ├── customCoolGray.colorset │ │ │ └── Contents.json │ │ ├── customGray0.colorset │ │ │ └── Contents.json │ │ ├── customGray1.colorset │ │ │ └── Contents.json │ │ ├── customGray2.colorset │ │ │ └── Contents.json │ │ ├── customGreen.colorset │ │ │ └── Contents.json │ │ ├── customIconGray.colorset │ │ │ └── Contents.json │ │ ├── customOrange.colorset │ │ │ └── Contents.json │ │ ├── customSky.colorset │ │ │ └── Contents.json │ │ └── customWhite.colorset │ │ │ └── Contents.json │ ├── Common │ │ ├── Contents.json │ │ ├── background.imageset │ │ │ ├── Contents.json │ │ │ └── background.png │ │ ├── close.imageset │ │ │ ├── Contents.json │ │ │ └── close.svg │ │ ├── leftArrow.imageset │ │ │ ├── Contents.json │ │ │ └── leftArrow.svg │ │ └── logo.imageset │ │ │ ├── Contents.json │ │ │ └── logo.png │ ├── Contents.json │ ├── MemoList │ │ ├── Contents.json │ │ ├── memoIcon.imageset │ │ │ ├── Contents.json │ │ │ └── memoIcon.svg │ │ ├── memoIcon_selected.imageset │ │ │ ├── Contents.json │ │ │ └── memoIcon_selected.svg │ │ └── trash.imageset │ │ │ ├── Contents.json │ │ │ └── trash.svg │ ├── Onboarding │ │ ├── Contents.json │ │ ├── onboarding_1.imageset │ │ │ ├── Contents.json │ │ │ └── onboarding_1.pdf │ │ ├── onboarding_2.imageset │ │ │ ├── Contents.json │ │ │ └── onboarding_2.pdf │ │ ├── onboarding_3.imageset │ │ │ ├── Contents.json │ │ │ └── onboarding_3.pdf │ │ ├── onboarding_4.imageset │ │ │ ├── Contents.json │ │ │ └── onboarding_4.pdf │ │ └── startHome.imageset │ │ │ ├── Contents.json │ │ │ └── startHome.png │ ├── Setting │ │ ├── Contents.json │ │ ├── arrowRight.imageset │ │ │ ├── Contents.json │ │ │ └── arrowRight.svg │ │ ├── settingIcon.imageset │ │ │ ├── Contents.json │ │ │ └── settingIcon.svg │ │ └── settingIcon_selected.imageset │ │ │ ├── Contents.json │ │ │ └── settingIcon_selected.svg │ ├── Timer │ │ ├── Contents.json │ │ ├── timerIcon.imageset │ │ │ ├── Contents.json │ │ │ └── timerIcon.svg │ │ └── timerIcon_selected.imageset │ │ │ ├── Contents.json │ │ │ └── timerIcon_selected.svg │ ├── TodoList │ │ ├── Contents.json │ │ ├── pencil.imageset │ │ │ ├── Contents.json │ │ │ └── pencil.svg │ │ ├── selectedBox.imageset │ │ │ ├── Contents.json │ │ │ └── selectedBox.svg │ │ ├── todoIcon.imageset │ │ │ ├── Contents.json │ │ │ └── todoIcon.svg │ │ ├── todoIcon_selected.imageset │ │ │ ├── Contents.json │ │ │ └── todoIcon_selected.svg │ │ ├── unSelectedBox.imageset │ │ │ ├── Contents.json │ │ │ └── unSelectedBox.svg │ │ └── writeBtn.imageset │ │ │ ├── Contents.json │ │ │ └── writeBtn.svg │ └── VoiceRecorder │ │ ├── Contents.json │ │ ├── mic.imageset │ │ ├── Contents.json │ │ └── mic.pdf │ │ ├── mic_recording.imageset │ │ ├── Contents.json │ │ └── mic_recording.png │ │ ├── pause.imageset │ │ ├── Contents.json │ │ └── pause.svg │ │ ├── play.imageset │ │ ├── Contents.json │ │ └── play.svg │ │ ├── recordIcon.imageset │ │ ├── Contents.json │ │ └── recordIcon.png │ │ └── recordIcon_selected.imageset │ │ ├── Contents.json │ │ └── recordIcon_selected.png │ ├── Component │ ├── CustomView │ │ └── WriteBtn.swift │ └── NavigationBar │ │ ├── CustomNavigationBar.swift │ │ └── NavigationBtnType.swift │ ├── Core │ ├── Extension │ │ ├── Color+Extensions.swift │ │ ├── Date+Extensions.swift │ │ ├── Double+Extensions.swift │ │ └── Int+Extensions.swift │ └── Service │ │ └── NotificationService.swift │ ├── Feature │ ├── Home │ │ ├── HomeView.swift │ │ ├── HomeViewModel.swift │ │ ├── MemoList │ │ │ ├── Memo │ │ │ │ ├── MemoView.swift │ │ │ │ └── MemoViewModel.swift │ │ │ ├── MemoListView.swift │ │ │ └── MemoListViewModel.swift │ │ ├── Setting │ │ │ └── SettingView.swift │ │ ├── Timer │ │ │ ├── TimerView.swift │ │ │ └── TimerViewModel.swift │ │ ├── TodoList │ │ │ ├── Todo │ │ │ │ ├── TodoView.swift │ │ │ │ └── TodoViewModel.swift │ │ │ ├── TodoListViewModel.swift │ │ │ └── ToodoListView.swift │ │ └── VoiceRecorder │ │ │ ├── VoiceRecorderView.swift │ │ │ └── VoiceRecorderViewModel.swift │ └── Onboarding │ │ ├── OnboardingView.swift │ │ └── OnboardingViewModel.swift │ ├── Model │ ├── Home │ │ └── Tab.swift │ ├── Memo │ │ └── Memo.swift │ ├── Onboarding │ │ └── OnboardingContent.swift │ ├── Path │ │ ├── Path.swift │ │ └── PathType.swift │ ├── Timer │ │ └── Time.swift │ └── Todo │ │ └── Todo.swift │ └── Preview Content │ └── Preview Assets.xcassets │ └── Contents.json ├── APP2_KTV ├── CH01.03 로그인화면 구현 및 Storyboard 소개 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Info.plist │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ └── SceneDelegate.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH02_01. UITableView 소개 및 홈화면 디자인 적용 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterCell.swift │ │ │ │ ├── HomeFooterCell.xib │ │ │ │ ├── HomeHeaderCell.swift │ │ │ │ ├── HomeHeaderCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeRecommendItemCell.swift │ │ │ │ ├── HomeRecommendItemCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ └── HomeVideoCell.xib │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── SceneDelegate.swift │ │ └── TabBarController.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH02_02 UICollectionView 소개 및 홈화면 가로형 컴포넌트 추가. │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterCell.swift │ │ │ │ ├── HomeFooterCell.xib │ │ │ │ ├── HomeHeaderCell.swift │ │ │ │ ├── HomeHeaderCell.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeRecommendItemCell.swift │ │ │ │ ├── HomeRecommendItemCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ └── HomeVideoCell.xib │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── SceneDelegate.swift │ │ └── TabBarController.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterCell.swift │ │ │ │ ├── HomeFooterCell.xib │ │ │ │ ├── HomeHeaderCell.swift │ │ │ │ ├── HomeHeaderCell.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeRecommendItemCell.swift │ │ │ │ ├── HomeRecommendItemCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ └── HomeVideoCell.xib │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── JSON │ │ │ ├── bookmark.json │ │ │ ├── favorite.json │ │ │ ├── home.json │ │ │ ├── live.json │ │ │ └── video.json │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── Model │ │ │ └── Home.swift │ │ ├── SceneDelegate.swift │ │ ├── TabBarController.swift │ │ ├── URLDefines │ │ │ └── URLDefines.swift │ │ └── Util │ │ │ ├── DataLoader.swift │ │ │ └── UIImageView+Task.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH02_05 상태에 따른 리스트 UI 갱신(1) - UITableView를 통한 접힘:펼침 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterCell.swift │ │ │ │ ├── HomeFooterCell.xib │ │ │ │ ├── HomeHeaderCell.swift │ │ │ │ ├── HomeHeaderCell.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeRecommendItemCell.swift │ │ │ │ ├── HomeRecommendItemCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ └── HomeVideoCell.xib │ │ │ ├── HomeRecommendViewModel.swift │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── JSON │ │ │ ├── bookmark.json │ │ │ ├── favorite.json │ │ │ ├── home.json │ │ │ ├── live.json │ │ │ └── video.json │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── Model │ │ │ └── Home.swift │ │ ├── SceneDelegate.swift │ │ ├── TabBarController.swift │ │ ├── URLDefines │ │ │ └── URLDefines.swift │ │ └── Util │ │ │ ├── DataLoader.swift │ │ │ └── UIImageView+Task.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH02_06 상태에 따른 리스트 UI 갱신(2) - UICollectionView를 활용한 접힘:펼침 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterView.swift │ │ │ │ ├── HomeFooterView.xib │ │ │ │ ├── HomeHeaderView.swift │ │ │ │ ├── HomeHeaderView.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingHeaderView.swift │ │ │ │ ├── HomeRankingHeaderView.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeRecommendItemCell.swift │ │ │ │ ├── HomeRecommendItemCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ └── HomeVideoCell.xib │ │ │ ├── HomeRecommendViewModel.swift │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── JSON │ │ │ ├── bookmark.json │ │ │ ├── favorite.json │ │ │ ├── home.json │ │ │ ├── live.json │ │ │ └── video.json │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── Model │ │ │ └── Home.swift │ │ ├── SceneDelegate.swift │ │ ├── TabBarController.swift │ │ ├── URLDefines │ │ │ └── URLDefines.swift │ │ └── Util │ │ │ ├── DataLoader.swift │ │ │ └── UIImageView+Task.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH02_07 간단한 리스트 화면 구현 - My화면 구현 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterView.swift │ │ │ │ ├── HomeFooterView.xib │ │ │ │ ├── HomeHeaderView.swift │ │ │ │ ├── HomeHeaderView.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingHeaderView.swift │ │ │ │ ├── HomeRankingHeaderView.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ ├── HomeVideoCell.xib │ │ │ │ ├── VideoListItemCell.swift │ │ │ │ └── VideoListItemCell.xib │ │ │ ├── HomeRecommendViewModel.swift │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── JSON │ │ │ ├── bookmark.json │ │ │ ├── favorite.json │ │ │ ├── home.json │ │ │ ├── live.json │ │ │ └── video.json │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── Model │ │ │ ├── Bookmark.swift │ │ │ ├── Favorite.swift │ │ │ ├── Home.swift │ │ │ └── VideoListItem.swift │ │ ├── My │ │ │ ├── Bookmark │ │ │ │ ├── BookmarkCell.swift │ │ │ │ ├── BookmarkCell.xib │ │ │ │ ├── BookmarkViewController.swift │ │ │ │ └── BookmarkViewModel.swift │ │ │ ├── Favorite │ │ │ │ ├── FavoriteViewController.swift │ │ │ │ └── FavoriteViewModel.swift │ │ │ └── MyViewController.swift │ │ ├── NavigationController.swift │ │ ├── SceneDelegate.swift │ │ ├── TabBarController.swift │ │ ├── URLDefines │ │ │ └── URLDefines.swift │ │ └── Util │ │ │ ├── DataLoader.swift │ │ │ └── UIImageView+Task.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH03_01 시청 화면 UI 구현 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterView.swift │ │ │ │ ├── HomeFooterView.xib │ │ │ │ ├── HomeHeaderView.swift │ │ │ │ ├── HomeHeaderView.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingHeaderView.swift │ │ │ │ ├── HomeRankingHeaderView.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ ├── HomeVideoCell.xib │ │ │ │ ├── VideoListItemCell.swift │ │ │ │ └── VideoListItemCell.xib │ │ │ ├── HomeRecommendViewModel.swift │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── JSON │ │ │ ├── bookmark.json │ │ │ ├── favorite.json │ │ │ ├── home.json │ │ │ ├── live.json │ │ │ └── video.json │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── Model │ │ │ ├── Bookmark.swift │ │ │ ├── Favorite.swift │ │ │ ├── Home.swift │ │ │ ├── Video.swift │ │ │ └── VideoListItem.swift │ │ ├── More │ │ │ ├── MoreTableViewCell.swift │ │ │ ├── MoreTableViewCell.xib │ │ │ ├── MoreViewController.swift │ │ │ ├── MoreViewController.xib │ │ │ └── MoreViewModel.swift │ │ ├── My │ │ │ ├── Bookmark │ │ │ │ ├── BookmarkCell.swift │ │ │ │ ├── BookmarkCell.xib │ │ │ │ ├── BookmarkViewController.swift │ │ │ │ └── BookmarkViewModel.swift │ │ │ ├── Favorite │ │ │ │ ├── FavoriteViewController.swift │ │ │ │ └── FavoriteViewModel.swift │ │ │ └── MyViewController.swift │ │ ├── NavigationController.swift │ │ ├── SceneDelegate.swift │ │ ├── TabBarController.swift │ │ ├── URLDefines │ │ │ └── URLDefines.swift │ │ ├── Util │ │ │ ├── DataLoader.swift │ │ │ └── UIImageView+Task.swift │ │ └── Video │ │ │ ├── VideoViewController.swift │ │ │ ├── VideoViewController.xib │ │ │ └── VideoViewModel.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH03_02 PlayerView 구현 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterView.swift │ │ │ │ ├── HomeFooterView.xib │ │ │ │ ├── HomeHeaderView.swift │ │ │ │ ├── HomeHeaderView.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingHeaderView.swift │ │ │ │ ├── HomeRankingHeaderView.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ ├── HomeVideoCell.xib │ │ │ │ ├── VideoListItemCell.swift │ │ │ │ └── VideoListItemCell.xib │ │ │ ├── HomeRecommendViewModel.swift │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── JSON │ │ │ ├── bookmark.json │ │ │ ├── favorite.json │ │ │ ├── home.json │ │ │ ├── live.json │ │ │ └── video.json │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── Model │ │ │ ├── Bookmark.swift │ │ │ ├── Favorite.swift │ │ │ ├── Home.swift │ │ │ ├── Video.swift │ │ │ └── VideoListItem.swift │ │ ├── More │ │ │ ├── MoreTableViewCell.swift │ │ │ ├── MoreTableViewCell.xib │ │ │ ├── MoreViewController.swift │ │ │ ├── MoreViewController.xib │ │ │ └── MoreViewModel.swift │ │ ├── My │ │ │ ├── Bookmark │ │ │ │ ├── BookmarkCell.swift │ │ │ │ ├── BookmarkCell.xib │ │ │ │ ├── BookmarkViewController.swift │ │ │ │ └── BookmarkViewModel.swift │ │ │ ├── Favorite │ │ │ │ ├── FavoriteViewController.swift │ │ │ │ └── FavoriteViewModel.swift │ │ │ └── MyViewController.swift │ │ ├── NavigationController.swift │ │ ├── SceneDelegate.swift │ │ ├── TabBarController.swift │ │ ├── URLDefines │ │ │ └── URLDefines.swift │ │ ├── Util │ │ │ ├── DataLoader.swift │ │ │ └── UIImageView+Task.swift │ │ └── Video │ │ │ ├── PlayerView.swift │ │ │ ├── VideoViewController.swift │ │ │ ├── VideoViewController.xib │ │ │ └── VideoViewModel.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH03_03 기기 Orientation에 따른 회전 처리 및 영상 전체보기 버튼을 통한 Player 화면 크기 제어 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Extensions │ │ │ └── DateComponentsFormatterExtension.swift │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterView.swift │ │ │ │ ├── HomeFooterView.xib │ │ │ │ ├── HomeHeaderView.swift │ │ │ │ ├── HomeHeaderView.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingHeaderView.swift │ │ │ │ ├── HomeRankingHeaderView.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ ├── HomeVideoCell.xib │ │ │ │ ├── VideoListItemCell.swift │ │ │ │ └── VideoListItemCell.xib │ │ │ ├── HomeRecommendViewModel.swift │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── JSON │ │ │ ├── bookmark.json │ │ │ ├── favorite.json │ │ │ ├── home.json │ │ │ ├── live.json │ │ │ └── video.json │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── Model │ │ │ ├── Bookmark.swift │ │ │ ├── Favorite.swift │ │ │ ├── Home.swift │ │ │ ├── Video.swift │ │ │ └── VideoListItem.swift │ │ ├── More │ │ │ ├── MoreTableViewCell.swift │ │ │ ├── MoreTableViewCell.xib │ │ │ ├── MoreViewController.swift │ │ │ ├── MoreViewController.xib │ │ │ └── MoreViewModel.swift │ │ ├── My │ │ │ ├── Bookmark │ │ │ │ ├── BookmarkCell.swift │ │ │ │ ├── BookmarkCell.xib │ │ │ │ ├── BookmarkViewController.swift │ │ │ │ └── BookmarkViewModel.swift │ │ │ ├── Favorite │ │ │ │ ├── FavoriteViewController.swift │ │ │ │ └── FavoriteViewModel.swift │ │ │ └── MyViewController.swift │ │ ├── NavigationController.swift │ │ ├── SceneDelegate.swift │ │ ├── TabBarController.swift │ │ ├── URLDefines │ │ │ └── URLDefines.swift │ │ ├── Util │ │ │ ├── DataLoader.swift │ │ │ └── UIImageView+Task.swift │ │ └── Video │ │ │ ├── PlayerView.swift │ │ │ ├── SeekbarView.swift │ │ │ ├── VideoViewController.swift │ │ │ ├── VideoViewController.xib │ │ │ └── VideoViewModel.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Extensions │ │ │ └── DateComponentsFormatterExtension.swift │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterView.swift │ │ │ │ ├── HomeFooterView.xib │ │ │ │ ├── HomeHeaderView.swift │ │ │ │ ├── HomeHeaderView.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingHeaderView.swift │ │ │ │ ├── HomeRankingHeaderView.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ ├── HomeVideoCell.xib │ │ │ │ ├── VideoListItemCell.swift │ │ │ │ └── VideoListItemCell.xib │ │ │ ├── HomeRecommendViewModel.swift │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── JSON │ │ │ ├── bookmark.json │ │ │ ├── favorite.json │ │ │ ├── home.json │ │ │ ├── live.json │ │ │ └── video.json │ │ ├── Live │ │ │ ├── LiveCell.swift │ │ │ ├── LiveCell.xib │ │ │ ├── LiveViewController.swift │ │ │ └── LiveViewModel.swift │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── Model │ │ │ ├── Bookmark.swift │ │ │ ├── Favorite.swift │ │ │ ├── Home.swift │ │ │ ├── Live.swift │ │ │ ├── Video.swift │ │ │ └── VideoListItem.swift │ │ ├── More │ │ │ ├── MoreTableViewCell.swift │ │ │ ├── MoreTableViewCell.xib │ │ │ ├── MoreViewController.swift │ │ │ ├── MoreViewController.xib │ │ │ └── MoreViewModel.swift │ │ ├── My │ │ │ ├── Bookmark │ │ │ │ ├── BookmarkCell.swift │ │ │ │ ├── BookmarkCell.xib │ │ │ │ ├── BookmarkViewController.swift │ │ │ │ └── BookmarkViewModel.swift │ │ │ ├── Favorite │ │ │ │ ├── FavoriteViewController.swift │ │ │ │ └── FavoriteViewModel.swift │ │ │ └── MyViewController.swift │ │ ├── NavigationController.swift │ │ ├── SceneDelegate.swift │ │ ├── TabBarController.swift │ │ ├── URLDefines │ │ │ └── URLDefines.swift │ │ ├── Util │ │ │ ├── DataLoader.swift │ │ │ └── UIImageView+Task.swift │ │ └── Video │ │ │ ├── PlayerView.swift │ │ │ ├── SeekbarView.swift │ │ │ ├── VideoViewController.swift │ │ │ ├── VideoViewController.xib │ │ │ └── VideoViewModel.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Extensions │ │ │ └── DateComponentsFormatterExtension.swift │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterView.swift │ │ │ │ ├── HomeFooterView.xib │ │ │ │ ├── HomeHeaderView.swift │ │ │ │ ├── HomeHeaderView.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingHeaderView.swift │ │ │ │ ├── HomeRankingHeaderView.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ ├── HomeVideoCell.xib │ │ │ │ ├── VideoListItemCell.swift │ │ │ │ └── VideoListItemCell.xib │ │ │ ├── HomeRecommendViewModel.swift │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── JSON │ │ │ ├── bookmark.json │ │ │ ├── favorite.json │ │ │ ├── home.json │ │ │ ├── live.json │ │ │ └── video.json │ │ ├── Live │ │ │ ├── LiveCell.swift │ │ │ ├── LiveCell.xib │ │ │ ├── LiveViewController.swift │ │ │ └── LiveViewModel.swift │ │ ├── LiveChatting │ │ │ ├── ChatSimulator.swift │ │ │ ├── ChattingView.swift │ │ │ ├── ChattingViewModel.swift │ │ │ ├── LiveChattingMessageCollectionViewCell.swift │ │ │ ├── LiveChattingMessageCollectionViewCell.xib │ │ │ ├── LiveChattingMyMessageCollectionViewCell.swift │ │ │ └── LiveChattingMyMessageCollectionViewCell.xib │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── Model │ │ │ ├── Bookmark.swift │ │ │ ├── Favorite.swift │ │ │ ├── Home.swift │ │ │ ├── Live.swift │ │ │ ├── Video.swift │ │ │ └── VideoListItem.swift │ │ ├── More │ │ │ ├── MoreTableViewCell.swift │ │ │ ├── MoreTableViewCell.xib │ │ │ ├── MoreViewController.swift │ │ │ ├── MoreViewController.xib │ │ │ └── MoreViewModel.swift │ │ ├── My │ │ │ ├── Bookmark │ │ │ │ ├── BookmarkCell.swift │ │ │ │ ├── BookmarkCell.xib │ │ │ │ ├── BookmarkViewController.swift │ │ │ │ └── BookmarkViewModel.swift │ │ │ ├── Favorite │ │ │ │ ├── FavoriteViewController.swift │ │ │ │ └── FavoriteViewModel.swift │ │ │ └── MyViewController.swift │ │ ├── NavigationController.swift │ │ ├── SceneDelegate.swift │ │ ├── TabBarController.swift │ │ ├── URLDefines │ │ │ └── URLDefines.swift │ │ ├── Util │ │ │ ├── DataLoader.swift │ │ │ └── UIImageView+Task.swift │ │ └── Video │ │ │ ├── PlayerView.swift │ │ │ ├── SeekbarView.swift │ │ │ ├── VideoViewController.swift │ │ │ ├── VideoViewController.xib │ │ │ └── VideoViewModel.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH05_01 UICollectionViewCompositionalLayout 활용하기 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Extensions │ │ │ └── DateComponentsFormatterExtension.swift │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterView.swift │ │ │ │ ├── HomeFooterView.xib │ │ │ │ ├── HomeHeaderView.swift │ │ │ │ ├── HomeHeaderView.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingHeaderView.swift │ │ │ │ ├── HomeRankingHeaderView.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ ├── HomeVideoCell.xib │ │ │ │ ├── VideoListItemCell.swift │ │ │ │ └── VideoListItemCell.xib │ │ │ ├── HomeRecommendViewModel.swift │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── JSON │ │ │ ├── bookmark.json │ │ │ ├── favorite.json │ │ │ ├── home.json │ │ │ ├── live.json │ │ │ └── video.json │ │ ├── Live │ │ │ ├── LiveCell.swift │ │ │ ├── LiveCell.xib │ │ │ ├── LiveViewController.swift │ │ │ └── LiveViewModel.swift │ │ ├── LiveChatting │ │ │ ├── ChatSimulator.swift │ │ │ ├── ChattingView.swift │ │ │ ├── ChattingViewModel.swift │ │ │ ├── LiveChattingMessageCollectionViewCell.swift │ │ │ ├── LiveChattingMessageCollectionViewCell.xib │ │ │ ├── LiveChattingMyMessageCollectionViewCell.swift │ │ │ └── LiveChattingMyMessageCollectionViewCell.xib │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── Model │ │ │ ├── Bookmark.swift │ │ │ ├── Favorite.swift │ │ │ ├── Home.swift │ │ │ ├── Live.swift │ │ │ ├── Video.swift │ │ │ └── VideoListItem.swift │ │ ├── More │ │ │ ├── MoreTableViewCell.swift │ │ │ ├── MoreTableViewCell.xib │ │ │ ├── MoreViewController.swift │ │ │ ├── MoreViewController.xib │ │ │ └── MoreViewModel.swift │ │ ├── My │ │ │ ├── Bookmark │ │ │ │ ├── BookmarkCell.swift │ │ │ │ ├── BookmarkCell.xib │ │ │ │ ├── BookmarkViewController.swift │ │ │ │ └── BookmarkViewModel.swift │ │ │ ├── Favorite │ │ │ │ ├── FavoriteViewController.swift │ │ │ │ └── FavoriteViewModel.swift │ │ │ └── MyViewController.swift │ │ ├── NavigationController.swift │ │ ├── SceneDelegate.swift │ │ ├── TabBarController.swift │ │ ├── URLDefines │ │ │ └── URLDefines.swift │ │ ├── Util │ │ │ ├── DataLoader.swift │ │ │ └── UIImageView+Task.swift │ │ └── Video │ │ │ ├── PlayerView.swift │ │ │ ├── SeekbarView.swift │ │ │ ├── VideoViewController.swift │ │ │ ├── VideoViewController.xib │ │ │ └── VideoViewModel.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH06_01 시청화면에 PIP 적용 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Extensions │ │ │ └── DateComponentsFormatterExtension.swift │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterView.swift │ │ │ │ ├── HomeFooterView.xib │ │ │ │ ├── HomeHeaderView.swift │ │ │ │ ├── HomeHeaderView.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingHeaderView.swift │ │ │ │ ├── HomeRankingHeaderView.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ ├── HomeVideoCell.xib │ │ │ │ ├── VideoListItemCell.swift │ │ │ │ └── VideoListItemCell.xib │ │ │ ├── HomeRecommendViewModel.swift │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── JSON │ │ │ ├── bookmark.json │ │ │ ├── favorite.json │ │ │ ├── home.json │ │ │ ├── live.json │ │ │ └── video.json │ │ ├── Live │ │ │ ├── LiveCell.swift │ │ │ ├── LiveCell.xib │ │ │ ├── LiveViewController.swift │ │ │ └── LiveViewModel.swift │ │ ├── LiveChatting │ │ │ ├── ChatSimulator.swift │ │ │ ├── ChattingView.swift │ │ │ ├── ChattingViewModel.swift │ │ │ ├── LiveChattingMessageCollectionViewCell.swift │ │ │ ├── LiveChattingMessageCollectionViewCell.xib │ │ │ ├── LiveChattingMyMessageCollectionViewCell.swift │ │ │ └── LiveChattingMyMessageCollectionViewCell.xib │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── Model │ │ │ ├── Bookmark.swift │ │ │ ├── Favorite.swift │ │ │ ├── Home.swift │ │ │ ├── Live.swift │ │ │ ├── Video.swift │ │ │ └── VideoListItem.swift │ │ ├── More │ │ │ ├── MoreTableViewCell.swift │ │ │ ├── MoreTableViewCell.xib │ │ │ ├── MoreViewController.swift │ │ │ ├── MoreViewController.xib │ │ │ └── MoreViewModel.swift │ │ ├── My │ │ │ ├── Bookmark │ │ │ │ ├── BookmarkCell.swift │ │ │ │ ├── BookmarkCell.xib │ │ │ │ ├── BookmarkViewController.swift │ │ │ │ └── BookmarkViewModel.swift │ │ │ ├── Favorite │ │ │ │ ├── FavoriteViewController.swift │ │ │ │ └── FavoriteViewModel.swift │ │ │ └── MyViewController.swift │ │ ├── NavigationController.swift │ │ ├── SceneDelegate.swift │ │ ├── TabBarController.swift │ │ ├── URLDefines │ │ │ └── URLDefines.swift │ │ ├── Util │ │ │ ├── DataLoader.swift │ │ │ └── UIImageView+Task.swift │ │ └── Video │ │ │ ├── PlayerView.swift │ │ │ ├── SeekbarView.swift │ │ │ ├── VideoViewController.swift │ │ │ ├── VideoViewController.xib │ │ │ └── VideoViewModel.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH07_01 UIViewController Transition에 대한 소개 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Extensions │ │ │ └── DateComponentsFormatterExtension.swift │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterView.swift │ │ │ │ ├── HomeFooterView.xib │ │ │ │ ├── HomeHeaderView.swift │ │ │ │ ├── HomeHeaderView.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingHeaderView.swift │ │ │ │ ├── HomeRankingHeaderView.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ ├── HomeVideoCell.xib │ │ │ │ ├── VideoListItemCell.swift │ │ │ │ └── VideoListItemCell.xib │ │ │ ├── HomeRecommendViewModel.swift │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── JSON │ │ │ ├── bookmark.json │ │ │ ├── favorite.json │ │ │ ├── home.json │ │ │ ├── live.json │ │ │ └── video.json │ │ ├── Live │ │ │ ├── LiveCell.swift │ │ │ ├── LiveCell.xib │ │ │ ├── LiveViewController.swift │ │ │ └── LiveViewModel.swift │ │ ├── LiveChatting │ │ │ ├── ChatSimulator.swift │ │ │ ├── ChattingView.swift │ │ │ ├── ChattingViewModel.swift │ │ │ ├── LiveChattingMessageCollectionViewCell.swift │ │ │ ├── LiveChattingMessageCollectionViewCell.xib │ │ │ ├── LiveChattingMyMessageCollectionViewCell.swift │ │ │ └── LiveChattingMyMessageCollectionViewCell.xib │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── Model │ │ │ ├── Bookmark.swift │ │ │ ├── Favorite.swift │ │ │ ├── Home.swift │ │ │ ├── Live.swift │ │ │ ├── Video.swift │ │ │ └── VideoListItem.swift │ │ ├── More │ │ │ ├── MoreTableViewCell.swift │ │ │ ├── MoreTableViewCell.xib │ │ │ ├── MoreViewController.swift │ │ │ ├── MoreViewController.xib │ │ │ └── MoreViewModel.swift │ │ ├── My │ │ │ ├── Bookmark │ │ │ │ ├── BookmarkCell.swift │ │ │ │ ├── BookmarkCell.xib │ │ │ │ ├── BookmarkViewController.swift │ │ │ │ └── BookmarkViewModel.swift │ │ │ ├── Favorite │ │ │ │ ├── FavoriteViewController.swift │ │ │ │ └── FavoriteViewModel.swift │ │ │ └── MyViewController.swift │ │ ├── NavigationController.swift │ │ ├── SceneDelegate.swift │ │ ├── TabBarController.swift │ │ ├── URLDefines │ │ │ └── URLDefines.swift │ │ ├── Util │ │ │ ├── DataLoader.swift │ │ │ └── UIImageView+Task.swift │ │ └── Video │ │ │ ├── PlayerView.swift │ │ │ ├── SeekbarView.swift │ │ │ ├── VideoViewController.swift │ │ │ ├── VideoViewController.xib │ │ │ └── VideoViewModel.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── CH07_02 시청화면 최소화 구현 │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Extensions │ │ │ └── DateComponentsFormatterExtension.swift │ │ ├── Home │ │ │ ├── Cell │ │ │ │ ├── HomeFooterView.swift │ │ │ │ ├── HomeFooterView.xib │ │ │ │ ├── HomeHeaderView.swift │ │ │ │ ├── HomeHeaderView.xib │ │ │ │ ├── HomeRankingContainerCell.swift │ │ │ │ ├── HomeRankingContainerCell.xib │ │ │ │ ├── HomeRankingHeaderView.swift │ │ │ │ ├── HomeRankingHeaderView.xib │ │ │ │ ├── HomeRankingItemCell.swift │ │ │ │ ├── HomeRankingItemCell.xib │ │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ │ ├── HomeVideoCell.swift │ │ │ │ ├── HomeVideoCell.xib │ │ │ │ ├── VideoListItemCell.swift │ │ │ │ └── VideoListItemCell.xib │ │ │ ├── HomeRecommendViewModel.swift │ │ │ ├── HomeSection.swift │ │ │ ├── HomeViewController.swift │ │ │ └── HomeViewModel.swift │ │ ├── Info.plist │ │ ├── JSON │ │ │ ├── bookmark.json │ │ │ ├── favorite.json │ │ │ ├── home.json │ │ │ ├── live.json │ │ │ └── video.json │ │ ├── Live │ │ │ ├── LiveCell.swift │ │ │ ├── LiveCell.xib │ │ │ ├── LiveViewController.swift │ │ │ └── LiveViewModel.swift │ │ ├── LiveChatting │ │ │ ├── ChatSimulator.swift │ │ │ ├── ChattingView.swift │ │ │ ├── ChattingViewModel.swift │ │ │ ├── LiveChattingMessageCollectionViewCell.swift │ │ │ ├── LiveChattingMessageCollectionViewCell.xib │ │ │ ├── LiveChattingMyMessageCollectionViewCell.swift │ │ │ └── LiveChattingMyMessageCollectionViewCell.xib │ │ ├── Login │ │ │ └── LoginViewController.swift │ │ ├── Model │ │ │ ├── Bookmark.swift │ │ │ ├── Favorite.swift │ │ │ ├── Home.swift │ │ │ ├── Live.swift │ │ │ ├── Video.swift │ │ │ └── VideoListItem.swift │ │ ├── More │ │ │ ├── MoreTableViewCell.swift │ │ │ ├── MoreTableViewCell.xib │ │ │ ├── MoreViewController.swift │ │ │ ├── MoreViewController.xib │ │ │ └── MoreViewModel.swift │ │ ├── My │ │ │ ├── Bookmark │ │ │ │ ├── BookmarkCell.swift │ │ │ │ ├── BookmarkCell.xib │ │ │ │ ├── BookmarkViewController.swift │ │ │ │ └── BookmarkViewModel.swift │ │ │ ├── Favorite │ │ │ │ ├── FavoriteViewController.swift │ │ │ │ └── FavoriteViewModel.swift │ │ │ └── MyViewController.swift │ │ ├── NavigationController.swift │ │ ├── SceneDelegate.swift │ │ ├── TabBarController.swift │ │ ├── URLDefines │ │ │ └── URLDefines.swift │ │ ├── Util │ │ │ ├── DataLoader.swift │ │ │ └── UIImageView+Task.swift │ │ ├── Video │ │ │ ├── PlayerView.swift │ │ │ ├── SeekbarView.swift │ │ │ ├── VideoViewController.swift │ │ │ ├── VideoViewController.xib │ │ │ └── VideoViewModel.swift │ │ └── VideoViewControllerContainer.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift ├── ServerSimulator │ ├── ServerSimulator.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ ├── IDEWorkspaceChecks.plist │ │ │ └── swiftpm │ │ │ └── Package.resolved │ └── ServerSimulator │ │ ├── Images │ │ ├── listthumb.png │ │ ├── livethumb.png │ │ ├── rankingthumbnail.png │ │ ├── user.png │ │ ├── v_thumbnail1.png │ │ ├── v_thumbnail2.png │ │ └── v_thumbnail3.png │ │ ├── JSON │ │ ├── Home.swift │ │ ├── ListItem.swift │ │ ├── Live.swift │ │ ├── My.swift │ │ ├── URLDefinition.swift │ │ └── Video.swift │ │ ├── JSONUtil.swift │ │ ├── bookmark.json │ │ ├── favorite.json │ │ ├── home.json │ │ ├── live.json │ │ ├── main.swift │ │ └── video.json ├── Study project │ ├── CompositionalLayout │ │ ├── CompositionalLayout.xcodeproj │ │ │ ├── project.pbxproj │ │ │ └── project.xcworkspace │ │ │ │ ├── contents.xcworkspacedata │ │ │ │ └── xcshareddata │ │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── CompositionalLayout │ │ │ ├── AppDelegate.swift │ │ │ ├── Assets.xcassets │ │ │ │ ├── AccentColor.colorset │ │ │ │ │ └── Contents.json │ │ │ │ ├── AppIcon.appiconset │ │ │ │ │ └── Contents.json │ │ │ │ └── Contents.json │ │ │ ├── Base.lproj │ │ │ │ ├── LaunchScreen.storyboard │ │ │ │ └── Main.storyboard │ │ │ ├── ComposeCollectionViewCell.swift │ │ │ ├── ComposeCollectionViewCell.xib │ │ │ ├── Info.plist │ │ │ ├── SceneDelegate.swift │ │ │ └── ViewController.swift │ │ ├── CompositionalLayoutTests │ │ │ └── CompositionalLayoutTests.swift │ │ └── CompositionalLayoutUITests │ │ │ ├── CompositionalLayoutUITests.swift │ │ │ └── CompositionalLayoutUITestsLaunchTests.swift │ ├── KVO │ │ ├── KVO.xcodeproj │ │ │ ├── project.pbxproj │ │ │ └── project.xcworkspace │ │ │ │ ├── contents.xcworkspacedata │ │ │ │ └── xcshareddata │ │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KVO │ │ │ ├── AppDelegate.swift │ │ │ ├── Assets.xcassets │ │ │ │ ├── AccentColor.colorset │ │ │ │ │ └── Contents.json │ │ │ │ ├── AppIcon.appiconset │ │ │ │ │ └── Contents.json │ │ │ │ └── Contents.json │ │ │ ├── Base.lproj │ │ │ │ ├── LaunchScreen.storyboard │ │ │ │ └── Main.storyboard │ │ │ ├── Info.plist │ │ │ ├── KVOObject.swift │ │ │ ├── SceneDelegate.swift │ │ │ └── ViewController.swift │ │ ├── KVOTests │ │ │ └── KVOTests.swift │ │ └── KVOUITests │ │ │ ├── KVOUITests.swift │ │ │ └── KVOUITestsLaunchTests.swift │ ├── ModalPresentation │ │ ├── ModalPresentation.xcodeproj │ │ │ ├── project.pbxproj │ │ │ └── project.xcworkspace │ │ │ │ ├── contents.xcworkspacedata │ │ │ │ └── xcshareddata │ │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── ModalPresentation │ │ │ ├── AppDelegate.swift │ │ │ ├── Assets.xcassets │ │ │ │ ├── AccentColor.colorset │ │ │ │ │ └── Contents.json │ │ │ │ ├── AppIcon.appiconset │ │ │ │ │ └── Contents.json │ │ │ │ └── Contents.json │ │ │ ├── Base.lproj │ │ │ │ ├── LaunchScreen.storyboard │ │ │ │ └── Main.storyboard │ │ │ ├── Info.plist │ │ │ ├── ModalViewController.swift │ │ │ ├── ModalViewController.xib │ │ │ ├── PresentFromSegueViewController.swift │ │ │ ├── SceneDelegate.swift │ │ │ └── ViewController.swift │ │ ├── ModalPresentationTests │ │ │ └── ModalPresentationTests.swift │ │ └── ModalPresentationUITests │ │ │ ├── ModalPresentationUITests.swift │ │ │ └── ModalPresentationUITestsLaunchTests.swift │ ├── ModalTransitionStyle │ │ ├── ModalTransitionStyle.xcodeproj │ │ │ ├── project.pbxproj │ │ │ └── project.xcworkspace │ │ │ │ ├── contents.xcworkspacedata │ │ │ │ └── xcshareddata │ │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── ModalTransitionStyle │ │ │ ├── AppDelegate.swift │ │ │ ├── Assets.xcassets │ │ │ │ ├── AccentColor.colorset │ │ │ │ │ └── Contents.json │ │ │ │ ├── AppIcon.appiconset │ │ │ │ │ └── Contents.json │ │ │ │ └── Contents.json │ │ │ ├── Base.lproj │ │ │ │ ├── LaunchScreen.storyboard │ │ │ │ └── Main.storyboard │ │ │ ├── Info.plist │ │ │ ├── SceneDelegate.swift │ │ │ ├── TransitionViewController.swift │ │ │ ├── TransitionViewController.xib │ │ │ └── ViewController.swift │ │ ├── ModalTransitionStyleTests │ │ │ └── ModalTransitionStyleTests.swift │ │ └── ModalTransitionStyleUITests │ │ │ ├── ModalTransitionStyleUITests.swift │ │ │ └── ModalTransitionStyleUITestsLaunchTests.swift │ ├── Notification │ │ ├── Notification.xcodeproj │ │ │ ├── project.pbxproj │ │ │ └── project.xcworkspace │ │ │ │ ├── contents.xcworkspacedata │ │ │ │ └── xcshareddata │ │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── Notification │ │ │ ├── AppDelegate.swift │ │ │ ├── Assets.xcassets │ │ │ │ ├── AccentColor.colorset │ │ │ │ │ └── Contents.json │ │ │ │ ├── AppIcon.appiconset │ │ │ │ │ └── Contents.json │ │ │ │ └── Contents.json │ │ │ ├── Base.lproj │ │ │ │ ├── LaunchScreen.storyboard │ │ │ │ └── Main.storyboard │ │ │ ├── Info.plist │ │ │ ├── NotificationName.swift │ │ │ ├── SceneDelegate.swift │ │ │ ├── SecondViewController.swift │ │ │ └── ViewController.swift │ │ ├── NotificationTests │ │ │ └── NotificationTests.swift │ │ └── NotificationUITests │ │ │ ├── NotificationUITests.swift │ │ │ └── NotificationUITestsLaunchTests.swift │ └── Task │ │ ├── Task.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── Task │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── DataSetter.swift │ │ ├── Info.plist │ │ ├── SceneDelegate.swift │ │ └── ViewController.swift │ │ ├── TaskTests │ │ └── TaskTests.swift │ │ └── TaskUITests │ │ ├── TaskUITests.swift │ │ └── TaskUITestsLaunchTests.swift ├── beginning │ └── KTV │ │ ├── KTV.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── KTV │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ └── appicon.png │ │ │ ├── Contents.json │ │ │ ├── big_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause.png │ │ │ │ ├── pause@2x.png │ │ │ │ └── pause@3x.png │ │ │ ├── big_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play.png │ │ │ │ ├── play@2x.png │ │ │ │ └── play@3x.png │ │ │ ├── expand.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── open.png │ │ │ │ ├── open@2x.png │ │ │ │ └── open@3x.png │ │ │ ├── fastfoward.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_forward.png │ │ │ │ ├── fast_forward@2x.png │ │ │ │ └── fast_forward@3x.png │ │ │ ├── favorite.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── favorite.png │ │ │ │ ├── favorite@2x.png │ │ │ │ └── favorite@3x.png │ │ │ ├── fold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(접힙).png │ │ │ │ ├── dropdown(접힙)@2x.png │ │ │ │ └── dropdown(접힙)@3x.png │ │ │ ├── hot.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HOT@2x.png │ │ │ │ └── HOT@3x.png │ │ │ ├── launchImage.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── app-icon.png │ │ │ │ ├── app-icon@2x.png │ │ │ │ └── app-icon@3x.png │ │ │ ├── logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── Union.svg │ │ │ ├── minimize.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Frame 45.png │ │ │ │ ├── Frame 45@2x.png │ │ │ │ └── Frame 45@3x.png │ │ │ ├── more.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── more.png │ │ │ │ ├── more@2x.png │ │ │ │ └── more@3x.png │ │ │ ├── more_right.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chevron_right.png │ │ │ │ ├── chevron_right@2x.png │ │ │ │ └── chevron_right@3x.png │ │ │ ├── my_bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.png │ │ │ │ ├── bookmark@2x.png │ │ │ │ └── bookmark@3x.png │ │ │ ├── my_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── heart.png │ │ │ │ ├── heart@2x.png │ │ │ │ └── heart@3x.png │ │ │ ├── rewind.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fast_rewind.png │ │ │ │ ├── fast_rewind@2x.png │ │ │ │ └── fast_rewind@3x.png │ │ │ ├── shrink.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── fullscreen_exit.png │ │ │ │ ├── fullscreen_exit@2x.png │ │ │ │ └── fullscreen_exit@3x.png │ │ │ ├── small_close.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── close.png │ │ │ │ ├── close@2x.png │ │ │ │ └── close@3x.png │ │ │ ├── small_pause.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── pause_small.png │ │ │ │ ├── pause_small@2x.png │ │ │ │ └── pause_small@3x.png │ │ │ ├── small_play.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── play_.png │ │ │ │ ├── play_@2x.png │ │ │ │ └── play_@3x.png │ │ │ ├── tabIcon_home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_home_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=on.png │ │ │ │ ├── Property 1=on@2x.png │ │ │ │ └── Property 1=on@3x.png │ │ │ ├── tabIcon_live.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_live_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── tabIcon_my.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Default.png │ │ │ │ ├── Property 1=Default@2x.png │ │ │ │ └── Property 1=Default@3x.png │ │ │ ├── tabIcon_my_selected.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Property 1=Variant2.png │ │ │ │ ├── Property 1=Variant2@2x.png │ │ │ │ └── Property 1=Variant2@3x.png │ │ │ ├── unfold.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── dropdown(펼침) 1.png │ │ │ │ ├── dropdown(펼침).png │ │ │ │ └── dropdown(펼침)@3x 1.png │ │ │ ├── user.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── user@2x.png │ │ │ ├── video_comment.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── sms-video-screen.png │ │ │ │ ├── sms-video-screen@2x.png │ │ │ │ └── sms-video-screen@3x.png │ │ │ ├── video_like.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── like-video-screen.png │ │ │ │ ├── like-video-screen@2x.png │ │ │ │ └── like-video-screen@3x.png │ │ │ └── video_share.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── down-video-screen.png │ │ │ │ ├── down-video-screen@2x.png │ │ │ │ └── down-video-screen@3x.png │ │ ├── Base.lproj │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── Color.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-controlpannel.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ │ └── Contents.json │ │ │ ├── bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-origin.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── d-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-1.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-2.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-3.colorset │ │ │ │ └── Contents.json │ │ │ ├── gray-4.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-default.colorset │ │ │ │ └── Contents.json │ │ │ ├── icon-on.colorset │ │ │ │ └── Contents.json │ │ │ ├── live-red.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-brown.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── main-yellow.colorset │ │ │ │ └── Contents.json │ │ │ ├── more-bk.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-background.colorset │ │ │ │ └── Contents.json │ │ │ ├── seekbar-playable.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── stroke-light.colorset │ │ │ │ └── Contents.json │ │ │ └── text-gray.colorset │ │ │ │ └── Contents.json │ │ ├── Info.plist │ │ ├── SceneDelegate.swift │ │ └── ViewController.swift │ │ ├── KTVTests │ │ └── KTVTests.swift │ │ └── KTVUITests │ │ ├── KTVUITests.swift │ │ └── KTVUITestsLaunchTests.swift └── completion │ └── KTV │ ├── KTV.xcodeproj │ ├── project.pbxproj │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata │ │ └── IDEWorkspaceChecks.plist │ ├── KTV │ ├── AppDelegate.swift │ ├── Assets.xcassets │ │ ├── AccentColor.colorset │ │ │ └── Contents.json │ │ ├── AppIcon.appiconset │ │ │ ├── Contents.json │ │ │ └── appicon.png │ │ ├── Contents.json │ │ ├── big_pause.imageset │ │ │ ├── Contents.json │ │ │ ├── pause.png │ │ │ ├── pause@2x.png │ │ │ └── pause@3x.png │ │ ├── big_play.imageset │ │ │ ├── Contents.json │ │ │ ├── play.png │ │ │ ├── play@2x.png │ │ │ └── play@3x.png │ │ ├── expand.imageset │ │ │ ├── Contents.json │ │ │ ├── open.png │ │ │ ├── open@2x.png │ │ │ └── open@3x.png │ │ ├── fastfoward.imageset │ │ │ ├── Contents.json │ │ │ ├── fast_forward.png │ │ │ ├── fast_forward@2x.png │ │ │ └── fast_forward@3x.png │ │ ├── favorite.imageset │ │ │ ├── Contents.json │ │ │ ├── favorite.png │ │ │ ├── favorite@2x.png │ │ │ └── favorite@3x.png │ │ ├── fold.imageset │ │ │ ├── Contents.json │ │ │ ├── dropdown(접힙).png │ │ │ ├── dropdown(접힙)@2x.png │ │ │ └── dropdown(접힙)@3x.png │ │ ├── hot.imageset │ │ │ ├── Contents.json │ │ │ ├── HOT@2x.png │ │ │ └── HOT@3x.png │ │ ├── launchImage.imageset │ │ │ ├── Contents.json │ │ │ ├── app-icon.png │ │ │ ├── app-icon@2x.png │ │ │ └── app-icon@3x.png │ │ ├── logo.imageset │ │ │ ├── Contents.json │ │ │ └── Union.svg │ │ ├── minimize.imageset │ │ │ ├── Contents.json │ │ │ ├── Frame 45.png │ │ │ ├── Frame 45@2x.png │ │ │ └── Frame 45@3x.png │ │ ├── more.imageset │ │ │ ├── Contents.json │ │ │ ├── more.png │ │ │ ├── more@2x.png │ │ │ └── more@3x.png │ │ ├── more_right.imageset │ │ │ ├── Contents.json │ │ │ ├── chevron_right.png │ │ │ ├── chevron_right@2x.png │ │ │ └── chevron_right@3x.png │ │ ├── my_bookmark.imageset │ │ │ ├── Contents.json │ │ │ ├── bookmark.png │ │ │ ├── bookmark@2x.png │ │ │ └── bookmark@3x.png │ │ ├── my_like.imageset │ │ │ ├── Contents.json │ │ │ ├── heart.png │ │ │ ├── heart@2x.png │ │ │ └── heart@3x.png │ │ ├── rewind.imageset │ │ │ ├── Contents.json │ │ │ ├── fast_rewind.png │ │ │ ├── fast_rewind@2x.png │ │ │ └── fast_rewind@3x.png │ │ ├── shrink.imageset │ │ │ ├── Contents.json │ │ │ ├── fullscreen_exit.png │ │ │ ├── fullscreen_exit@2x.png │ │ │ └── fullscreen_exit@3x.png │ │ ├── small_close.imageset │ │ │ ├── Contents.json │ │ │ ├── close.png │ │ │ ├── close@2x.png │ │ │ └── close@3x.png │ │ ├── small_pause.imageset │ │ │ ├── Contents.json │ │ │ ├── pause_small.png │ │ │ ├── pause_small@2x.png │ │ │ └── pause_small@3x.png │ │ ├── small_play.imageset │ │ │ ├── Contents.json │ │ │ ├── play_.png │ │ │ ├── play_@2x.png │ │ │ └── play_@3x.png │ │ ├── tabIcon_home.imageset │ │ │ ├── Contents.json │ │ │ ├── Property 1=Default.png │ │ │ ├── Property 1=Default@2x.png │ │ │ └── Property 1=Default@3x.png │ │ ├── tabIcon_home_selected.imageset │ │ │ ├── Contents.json │ │ │ ├── Property 1=on.png │ │ │ ├── Property 1=on@2x.png │ │ │ └── Property 1=on@3x.png │ │ ├── tabIcon_live.imageset │ │ │ ├── Contents.json │ │ │ ├── Property 1=Default.png │ │ │ ├── Property 1=Default@2x.png │ │ │ └── Property 1=Default@3x.png │ │ ├── tabIcon_live_selected.imageset │ │ │ ├── Contents.json │ │ │ ├── Property 1=Variant2.png │ │ │ ├── Property 1=Variant2@2x.png │ │ │ └── Property 1=Variant2@3x.png │ │ ├── tabIcon_my.imageset │ │ │ ├── Contents.json │ │ │ ├── Property 1=Default.png │ │ │ ├── Property 1=Default@2x.png │ │ │ └── Property 1=Default@3x.png │ │ ├── tabIcon_my_selected.imageset │ │ │ ├── Contents.json │ │ │ ├── Property 1=Variant2.png │ │ │ ├── Property 1=Variant2@2x.png │ │ │ └── Property 1=Variant2@3x.png │ │ ├── unfold.imageset │ │ │ ├── Contents.json │ │ │ ├── dropdown(펼침) 1.png │ │ │ ├── dropdown(펼침).png │ │ │ └── dropdown(펼침)@3x 1.png │ │ ├── user.imageset │ │ │ ├── Contents.json │ │ │ └── user@2x.png │ │ ├── video_comment.imageset │ │ │ ├── Contents.json │ │ │ ├── sms-video-screen.png │ │ │ ├── sms-video-screen@2x.png │ │ │ └── sms-video-screen@3x.png │ │ ├── video_like.imageset │ │ │ ├── Contents.json │ │ │ ├── like-video-screen.png │ │ │ ├── like-video-screen@2x.png │ │ │ └── like-video-screen@3x.png │ │ └── video_share.imageset │ │ │ ├── Contents.json │ │ │ ├── down-video-screen.png │ │ │ ├── down-video-screen@2x.png │ │ │ └── down-video-screen@3x.png │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ ├── Color.xcassets │ │ ├── Contents.json │ │ ├── bg-controlpannel.colorset │ │ │ └── Contents.json │ │ ├── bg-landscape-controlpannel-title.colorset │ │ │ └── Contents.json │ │ ├── bg.colorset │ │ │ └── Contents.json │ │ ├── bk-origin.colorset │ │ │ └── Contents.json │ │ ├── chat-bg.colorset │ │ │ └── Contents.json │ │ ├── chat-text.colorset │ │ │ └── Contents.json │ │ ├── d-text-deep.colorset │ │ │ └── Contents.json │ │ ├── d-text.colorset │ │ │ └── Contents.json │ │ ├── gray-1.colorset │ │ │ └── Contents.json │ │ ├── gray-2.colorset │ │ │ └── Contents.json │ │ ├── gray-3.colorset │ │ │ └── Contents.json │ │ ├── gray-4.colorset │ │ │ └── Contents.json │ │ ├── icon-default.colorset │ │ │ └── Contents.json │ │ ├── icon-on.colorset │ │ │ └── Contents.json │ │ ├── live-red.colorset │ │ │ └── Contents.json │ │ ├── main-brown.colorset │ │ │ └── Contents.json │ │ ├── main-wh.colorset │ │ │ └── Contents.json │ │ ├── main-yellow.colorset │ │ │ └── Contents.json │ │ ├── more-bk.colorset │ │ │ └── Contents.json │ │ ├── seekbar-background.colorset │ │ │ └── Contents.json │ │ ├── seekbar-playable.colorset │ │ │ └── Contents.json │ │ ├── stroke-deep.colorset │ │ │ └── Contents.json │ │ ├── stroke-light.colorset │ │ │ └── Contents.json │ │ └── text-gray.colorset │ │ │ └── Contents.json │ ├── Extensions │ │ └── DateComponentsFormatterExtension.swift │ ├── Home │ │ ├── Cell │ │ │ ├── HomeFooterView.swift │ │ │ ├── HomeFooterView.xib │ │ │ ├── HomeHeaderView.swift │ │ │ ├── HomeHeaderView.xib │ │ │ ├── HomeRankingContainerCell.swift │ │ │ ├── HomeRankingContainerCell.xib │ │ │ ├── HomeRankingHeaderView.swift │ │ │ ├── HomeRankingHeaderView.xib │ │ │ ├── HomeRankingItemCell.swift │ │ │ ├── HomeRankingItemCell.xib │ │ │ ├── HomeRecentWatchContainerCell.swift │ │ │ ├── HomeRecentWatchContainerCell.xib │ │ │ ├── HomeRecentWatchItemCell.swift │ │ │ ├── HomeRecentWatchItemCell.xib │ │ │ ├── HomeRecommendContainerCell.swift │ │ │ ├── HomeRecommendContainerCell.xib │ │ │ ├── HomeVideoCell.swift │ │ │ ├── HomeVideoCell.xib │ │ │ ├── VideoListItemCell.swift │ │ │ └── VideoListItemCell.xib │ │ ├── HomeRecommendViewModel.swift │ │ ├── HomeSection.swift │ │ ├── HomeViewController.swift │ │ └── HomeViewModel.swift │ ├── Info.plist │ ├── JSON │ │ ├── bookmark.json │ │ ├── favorite.json │ │ ├── home.json │ │ ├── live.json │ │ └── video.json │ ├── Live │ │ ├── LiveCell.swift │ │ ├── LiveCell.xib │ │ ├── LiveViewController.swift │ │ └── LiveViewModel.swift │ ├── LiveChatting │ │ ├── ChatSimulator.swift │ │ ├── ChattingView.swift │ │ ├── ChattingViewModel.swift │ │ ├── LiveChattingMessageCollectionViewCell.swift │ │ ├── LiveChattingMessageCollectionViewCell.xib │ │ ├── LiveChattingMyMessageCollectionViewCell.swift │ │ └── LiveChattingMyMessageCollectionViewCell.xib │ ├── Login │ │ └── LoginViewController.swift │ ├── Model │ │ ├── Bookmark.swift │ │ ├── Favorite.swift │ │ ├── Home.swift │ │ ├── Live.swift │ │ ├── Video.swift │ │ └── VideoListItem.swift │ ├── More │ │ ├── MoreTableViewCell.swift │ │ ├── MoreTableViewCell.xib │ │ ├── MoreViewController.swift │ │ ├── MoreViewController.xib │ │ └── MoreViewModel.swift │ ├── My │ │ ├── Bookmark │ │ │ ├── BookmarkCell.swift │ │ │ ├── BookmarkCell.xib │ │ │ ├── BookmarkViewController.swift │ │ │ └── BookmarkViewModel.swift │ │ ├── Favorite │ │ │ ├── FavoriteViewController.swift │ │ │ └── FavoriteViewModel.swift │ │ └── MyViewController.swift │ ├── NavigationController.swift │ ├── SceneDelegate.swift │ ├── TabBarController.swift │ ├── URLDefines │ │ └── URLDefines.swift │ ├── Util │ │ ├── DataLoader.swift │ │ └── UIImageView+Task.swift │ ├── Video │ │ ├── PlayerView.swift │ │ ├── SeekbarView.swift │ │ ├── VideoViewController.swift │ │ ├── VideoViewController.xib │ │ └── VideoViewModel.swift │ └── VideoViewControllerContainer.swift │ ├── KTVTests │ └── KTVTests.swift │ └── KTVUITests │ ├── KTVUITests.swift │ └── KTVUITestsLaunchTests.swift ├── APP3_LMessenger ├── beginning │ └── LMessenger │ │ ├── LMessenger.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ ├── LMessenger │ │ ├── ContentView.swift │ │ ├── Extension │ │ │ └── Color+Extension.swift │ │ ├── LMessengerApp.swift │ │ ├── Preview Content │ │ │ └── Preview Assets.xcassets │ │ │ │ └── Contents.json │ │ └── Resource │ │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── Contents.json │ │ │ ├── back.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── _ (1).svg │ │ │ │ └── back_dark.svg │ │ │ ├── back_search.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── back_search.svg │ │ │ ├── bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.svg │ │ │ │ └── bookmark_dark.svg │ │ │ ├── bookmark_profile.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── bookmark_profile.svg │ │ │ ├── bubble_tail-left.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── bubble_tail-left.svg │ │ │ ├── bubble_tail-right.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── bubble_tail-right.svg │ │ │ ├── chat.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chat.svg │ │ │ │ └── chat_dark.svg │ │ │ ├── chat_fill.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── chat_fill.svg │ │ │ ├── close.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── close.svg │ │ │ ├── close_search.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── close_search.svg │ │ │ ├── home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── home.svg │ │ │ │ └── home_dark.svg │ │ │ ├── home_fill.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── home_fill.svg │ │ │ │ └── home_fill_dark.svg │ │ │ ├── icon.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── icon.svg │ │ │ ├── image_add.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── image_add.svg │ │ │ │ └── image_add_dark.svg │ │ │ ├── mood.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── mood.svg │ │ │ ├── notifications.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── notifications.svg │ │ │ │ └── notifications_dark.svg │ │ │ ├── other_add.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── other_add.svg │ │ │ │ └── other_add_dark.svg │ │ │ ├── palette.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── palette.svg │ │ │ ├── person.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── person.svg │ │ │ ├── person_add.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── person_add.svg │ │ │ │ └── person_add_dark.svg │ │ │ ├── phone.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── phone.svg │ │ │ │ └── phone_dark.svg │ │ │ ├── phone_fill.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── phone_fill.svg │ │ │ │ └── phone_fill_dark.svg │ │ │ ├── phone_profile.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── phone.svg │ │ │ ├── photo_camera.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── photo_camera.svg │ │ │ │ └── photo_camera_dark.svg │ │ │ ├── placeholder.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── placeholder.svg │ │ │ ├── play_circle.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── play_circle.svg │ │ │ ├── profile_bg.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── profile_bg.svg │ │ │ ├── profile_test.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── profile_test.svg │ │ │ ├── search_chat.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── search_chat.svg │ │ │ │ └── search_chat_dark.svg │ │ │ ├── send.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── send.svg │ │ │ │ └── send_dark.svg │ │ │ ├── settings.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── settings.svg │ │ │ │ └── settings_dark.svg │ │ │ ├── sms.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── sms.svg │ │ │ └── videocam.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── videocam.svg │ │ │ └── Colors.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-wh.colorset │ │ │ └── Contents.json │ │ │ ├── bk-2-fix.colorset │ │ │ └── Contents.json │ │ │ ├── bk-text.colorset │ │ │ └── Contents.json │ │ │ ├── black-fix.colorset │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ └── Contents.json │ │ │ ├── chat-color-me.colorset │ │ │ └── Contents.json │ │ │ ├── chat-color-ohter.colorset │ │ │ └── Contents.json │ │ │ ├── chat-notice.colorset │ │ │ └── Contents.json │ │ │ ├── coral_bg.colorset │ │ │ └── Contents.json │ │ │ ├── grey-cool.colorset │ │ │ └── Contents.json │ │ │ ├── grey-deep.colorset │ │ │ └── Contents.json │ │ │ ├── grey-fix.colorset │ │ │ └── Contents.json │ │ │ ├── grey-light-ver2.colorset │ │ │ └── Contents.json │ │ │ ├── grey-light.colorset │ │ │ └── Contents.json │ │ │ ├── line-app-color.colorset │ │ │ └── Contents.json │ │ │ ├── mint_bg.colorset │ │ │ └── Contents.json │ │ │ ├── sky_bg.colorset │ │ │ └── Contents.json │ │ │ └── white-fix.colorset │ │ │ └── Contents.json │ │ ├── LMessengerTests │ │ └── LMessengerTests.swift │ │ └── LMessengerUITests │ │ ├── LMessengerUITests.swift │ │ └── LMessengerUITestsLaunchTests.swift └── completion │ └── LMessenger │ ├── LMessenger.xcodeproj │ ├── project.pbxproj │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata │ │ ├── IDEWorkspaceChecks.plist │ │ └── swiftpm │ │ └── Package.resolved │ ├── LMessenger │ ├── AppDelegate.swift │ ├── DTO │ │ ├── ChatObject.swift │ │ ├── ChatRoomObject.swift │ │ ├── PushObject.swift │ │ └── UserObject.swift │ ├── Dependency │ │ ├── Appearance │ │ │ ├── AppearanceController.swift │ │ │ └── AppearanceType.swift │ │ ├── DIContainer.swift │ │ ├── Navigation │ │ │ ├── NavigationDestination.swift │ │ │ └── NavigationRouter.swift │ │ ├── Protocol │ │ │ └── ObservableObjectSettable.swift │ │ └── Search │ │ │ └── SearchDataController.swift │ ├── Extension │ │ ├── Color+Extension.swift │ │ └── Date+Extension.swift │ ├── General │ │ ├── Constant.swift │ │ ├── Phase.swift │ │ └── View │ │ │ ├── ErrorView.swift │ │ │ ├── LoadingView.swift │ │ │ ├── NavigationRoutingView.swift │ │ │ ├── PlaceholderView.swift │ │ │ ├── SearchButton.swift │ │ │ └── URLImage │ │ │ ├── URLImageView.swift │ │ │ └── URLImageViewModel.swift │ ├── Info.plist │ ├── LMessenger.entitlements │ ├── LMessengerApp.swift │ ├── Model │ │ ├── Chat.swift │ │ ├── ChatData.swift │ │ ├── ChatRoom.swift │ │ └── User.swift │ ├── Preview Content │ │ └── Preview Assets.xcassets │ │ │ └── Contents.json │ ├── Provider │ │ ├── PushNotificationProvider.swift │ │ └── UploadProvider.swift │ ├── Repository │ │ ├── ChatDBRepository.swift │ │ ├── ChatRoomDBRepository.swift │ │ ├── DBReference.swift │ │ ├── Error │ │ │ └── DBError.swift │ │ └── UserDBRepository.swift │ ├── Resource │ │ ├── Assets.xcassets │ │ │ ├── AccentColor.colorset │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── Contents.json │ │ │ ├── back.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── _ (1).svg │ │ │ │ └── back_dark.svg │ │ │ ├── back_search.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── back_search.svg │ │ │ ├── bookmark.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── bookmark.svg │ │ │ │ └── bookmark_dark.svg │ │ │ ├── bookmark_profile.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── bookmark_profile.svg │ │ │ ├── bubble_tail-left.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── bubble_tail-left.svg │ │ │ ├── bubble_tail-right.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── bubble_tail-right.svg │ │ │ ├── chat.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── chat.svg │ │ │ │ └── chat_dark.svg │ │ │ ├── chat_fill.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── chat_fill.svg │ │ │ ├── close.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── close.svg │ │ │ ├── close_search.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── close_search.svg │ │ │ ├── home.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── home.svg │ │ │ │ └── home_dark.svg │ │ │ ├── home_fill.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── home_fill.svg │ │ │ │ └── home_fill_dark.svg │ │ │ ├── icon.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── icon.svg │ │ │ ├── image_add.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── image_add.svg │ │ │ │ └── image_add_dark.svg │ │ │ ├── mood.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── mood.svg │ │ │ ├── notifications.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── notifications.svg │ │ │ │ └── notifications_dark.svg │ │ │ ├── other_add.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── other_add.svg │ │ │ │ └── other_add_dark.svg │ │ │ ├── palette.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── palette.svg │ │ │ ├── person.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── person.svg │ │ │ ├── person_add.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── person_add.svg │ │ │ │ └── person_add_dark.svg │ │ │ ├── phone.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── phone.svg │ │ │ │ └── phone_dark.svg │ │ │ ├── phone_fill.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── phone_fill.svg │ │ │ │ └── phone_fill_dark.svg │ │ │ ├── phone_profile.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── phone.svg │ │ │ ├── photo_camera.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── photo_camera.svg │ │ │ │ └── photo_camera_dark.svg │ │ │ ├── placeholder.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── placeholder.svg │ │ │ ├── play_circle.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── play_circle.svg │ │ │ ├── profile_bg.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── profile_bg.svg │ │ │ ├── profile_test.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── profile_test.svg │ │ │ ├── search_chat.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── search_chat.svg │ │ │ │ └── search_chat_dark.svg │ │ │ ├── send.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── send.svg │ │ │ │ └── send_dark.svg │ │ │ ├── settings.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── settings.svg │ │ │ │ └── settings_dark.svg │ │ │ ├── sms.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── sms.svg │ │ │ └── videocam.imageset │ │ │ │ ├── Contents.json │ │ │ │ └── videocam.svg │ │ ├── Colors.xcassets │ │ │ ├── Contents.json │ │ │ ├── bg-wh.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-2-fix.colorset │ │ │ │ └── Contents.json │ │ │ ├── bk-text.colorset │ │ │ │ └── Contents.json │ │ │ ├── black-fix.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-color-me.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-color-ohter.colorset │ │ │ │ └── Contents.json │ │ │ ├── chat-notice.colorset │ │ │ │ └── Contents.json │ │ │ ├── coral_bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── grey-cool.colorset │ │ │ │ └── Contents.json │ │ │ ├── grey-deep.colorset │ │ │ │ └── Contents.json │ │ │ ├── grey-fix.colorset │ │ │ │ └── Contents.json │ │ │ ├── grey-light-ver2.colorset │ │ │ │ └── Contents.json │ │ │ ├── grey-light.colorset │ │ │ │ └── Contents.json │ │ │ ├── line-app-color.colorset │ │ │ │ └── Contents.json │ │ │ ├── mint_bg.colorset │ │ │ │ └── Contents.json │ │ │ ├── sky_bg.colorset │ │ │ │ └── Contents.json │ │ │ └── white-fix.colorset │ │ │ │ └── Contents.json │ │ ├── LaunchScreen.storyboard │ │ └── Search.xcdatamodeld │ │ │ └── Search.xcdatamodel │ │ │ └── contents │ ├── Service │ │ ├── AuthenticationService.swift │ │ ├── ChatRoomService.swift │ │ ├── ChatService.swift │ │ ├── ContactService.swift │ │ ├── Error │ │ │ └── ServiceError.swift │ │ ├── ImageCache │ │ │ ├── DiskStorage.swift │ │ │ ├── ImageCacheService.swift │ │ │ └── MemoryStorage.swift │ │ ├── PhotoPicker │ │ │ ├── PhotoImage.swift │ │ │ └── PhotoPickerService.swift │ │ ├── PushNotificationService.swift │ │ ├── Services.swift │ │ ├── Upload │ │ │ ├── UploadService.swift │ │ │ └── UploadSourceType.swift │ │ └── UserService.swift │ ├── Util │ │ ├── RandomNonceString.swift │ │ └── SHA256.swift │ └── View │ │ ├── Authentication │ │ ├── AuthenticatedView.swift │ │ └── AuthenticationViewModel.swift │ │ ├── Chat │ │ ├── ChatView.swift │ │ ├── ChatViewModel.swift │ │ └── Subview │ │ │ ├── ChatImageItemView.swift │ │ │ ├── ChatItemDirection.swift │ │ │ ├── ChatItemView.swift │ │ │ └── KeyboardToolbar.swift │ │ ├── ChatList │ │ ├── ChatListView.swift │ │ └── ChatListViewModel.swift │ │ ├── Home │ │ ├── HomeModalDestination.swift │ │ ├── HomeView.swift │ │ └── HomeViewModel.swift │ │ ├── Login │ │ ├── LoginButtonStyle.swift │ │ ├── LoginIntroView.swift │ │ └── LoginView.swift │ │ ├── MainTab │ │ ├── MainTabType.swift │ │ └── MainTabView.swift │ │ ├── Profile │ │ ├── MyProfile │ │ │ ├── MyProfileDescEditView.swift │ │ │ ├── MyProfileMenuType.swift │ │ │ ├── MyProfileView.swift │ │ │ └── MyProfileViewModel.swift │ │ └── OtherProfile │ │ │ ├── OtherProfileMenuType.swift │ │ │ ├── OtherProfileView.swift │ │ │ └── OtherProfileViewModel.swift │ │ ├── Search │ │ ├── RecentSearchView.swift │ │ ├── SearchBar.swift │ │ ├── SearchView.swift │ │ └── SearchViewModel.swift │ │ └── Setting │ │ ├── SettingItem.swift │ │ ├── SettingView.swift │ │ └── SettingViewModel.swift │ └── LMessengerTests │ ├── Repository │ └── UserDBRepositoryTests.swift │ ├── Service │ └── ChatRoomServiceTests.swift │ └── ViewModel │ └── ChatViewModelTests.swift └── 부록1_02MemoryDebug ├── MemoryDebug.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ └── IDEWorkspaceChecks.plist └── xcshareddata │ └── xcschemes │ └── MemoryDebug.xcscheme ├── MemoryDebug ├── AppDelegate.swift ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json ├── Base.lproj │ ├── LaunchScreen.storyboard │ └── Main.storyboard ├── Home │ ├── ListCell.swift │ └── ViewController.swift ├── Info.plist ├── MemoryWarning │ ├── DummyGenerator.swift │ ├── MemoryWarningType2ViewController.swift │ ├── MemoryWarningType3ViewController.swift │ ├── ReferenceCycleModule.swift │ └── SampleCache.swift ├── SceneDelegate.swift ├── Task │ └── TaskSample.swift └── Unowned │ ├── UnownedSample.swift │ └── WeakSample.swift ├── MemoryDebugTests └── MemoryDebugTests.swift └── MemoryDebugUITests ├── MemoryDebugUITests.swift └── MemoryDebugUITestsLaunchTests.swift /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/.gitmodules -------------------------------------------------------------------------------- /APP1_voiceRecorder/beginning/voiceMemo/voiceMemo.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/beginning/voiceMemo/voiceMemo.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/App/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/App/AppDelegate.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/App/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/App/LaunchScreen.storyboard -------------------------------------------------------------------------------- /APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/App/voiceMemoApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/App/voiceMemoApp.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Feature/Home/HomeView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Feature/Home/HomeView.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Model/Home/Tab.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Model/Home/Tab.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Model/Memo/Memo.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Model/Memo/Memo.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Model/Path/Path.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Model/Path/Path.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Model/Path/PathType.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Model/Path/PathType.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Model/Timer/Time.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Model/Timer/Time.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Model/Todo/Todo.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/beginning/voiceMemo/voiceMemo/Model/Todo/Todo.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/completion/voiceMemo/voiceMemo.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/completion/voiceMemo/voiceMemo.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP1_voiceRecorder/completion/voiceMemo/voiceMemo/App/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/completion/voiceMemo/voiceMemo/App/AppDelegate.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/completion/voiceMemo/voiceMemo/App/voiceMemoApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/completion/voiceMemo/voiceMemo/App/voiceMemoApp.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/completion/voiceMemo/voiceMemo/Model/Home/Tab.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/completion/voiceMemo/voiceMemo/Model/Home/Tab.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/completion/voiceMemo/voiceMemo/Model/Memo/Memo.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/completion/voiceMemo/voiceMemo/Model/Memo/Memo.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/completion/voiceMemo/voiceMemo/Model/Path/Path.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/completion/voiceMemo/voiceMemo/Model/Path/Path.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/completion/voiceMemo/voiceMemo/Model/Path/PathType.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/completion/voiceMemo/voiceMemo/Model/Path/PathType.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/completion/voiceMemo/voiceMemo/Model/Timer/Time.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/completion/voiceMemo/voiceMemo/Model/Timer/Time.swift -------------------------------------------------------------------------------- /APP1_voiceRecorder/completion/voiceMemo/voiceMemo/Model/Todo/Todo.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP1_voiceRecorder/completion/voiceMemo/voiceMemo/Model/Todo/Todo.swift -------------------------------------------------------------------------------- /APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTV.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTV.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTV/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTV/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTV/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTV/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTV/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTV/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTVTests/KTVTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTVTests/KTVTests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTVUITests/KTVUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH01.03 로그인화면 구현 및 Storyboard 소개/KTV/KTVUITests/KTVUITests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_01. UITableView 소개 및 홈화면 디자인 적용/KTV/KTV/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_01. UITableView 소개 및 홈화면 디자인 적용/KTV/KTV/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_01. UITableView 소개 및 홈화면 디자인 적용/KTV/KTV/Home/HomeSection.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_01. UITableView 소개 및 홈화면 디자인 적용/KTV/KTV/Home/HomeSection.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_01. UITableView 소개 및 홈화면 디자인 적용/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_01. UITableView 소개 및 홈화면 디자인 적용/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/CH02_01. UITableView 소개 및 홈화면 디자인 적용/KTV/KTV/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_01. UITableView 소개 및 홈화면 디자인 적용/KTV/KTV/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_01. UITableView 소개 및 홈화면 디자인 적용/KTV/KTV/TabBarController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_01. UITableView 소개 및 홈화면 디자인 적용/KTV/KTV/TabBarController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_01. UITableView 소개 및 홈화면 디자인 적용/KTV/KTVTests/KTVTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_01. UITableView 소개 및 홈화면 디자인 적용/KTV/KTVTests/KTVTests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_02 UICollectionView 소개 및 홈화면 가로형 컴포넌트 추가./KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_02 UICollectionView 소개 및 홈화면 가로형 컴포넌트 추가./KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/Home/HomeSection.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/Home/HomeSection.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/Home/HomeViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/Home/HomeViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/JSON/bookmark.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/JSON/bookmark.json -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/JSON/favorite.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/JSON/favorite.json -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/JSON/home.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/JSON/home.json -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/JSON/live.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/JSON/live.json -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/JSON/video.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/JSON/video.json -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/Model/Home.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/Model/Home.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/TabBarController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/TabBarController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/Util/DataLoader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTV/Util/DataLoader.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTVTests/KTVTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTVTests/KTVTests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTVUITests/KTVUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_03 데이터 요청 및 데이터를 통한 홈 UI 구현/KTV/KTVUITests/KTVUITests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Home/Cell/HomeVideoCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Home/Cell/HomeVideoCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Home/HomeSection.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Home/HomeSection.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Home/HomeViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Home/HomeViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/JSON/bookmark.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/JSON/bookmark.json -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/JSON/favorite.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/JSON/favorite.json -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/JSON/home.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/JSON/home.json -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/JSON/live.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/JSON/live.json -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/JSON/video.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/JSON/video.json -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Model/Bookmark.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Model/Bookmark.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Model/Favorite.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Model/Favorite.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Model/Home.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Model/Home.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Model/VideoListItem.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Model/VideoListItem.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/My/MyViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/My/MyViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/NavigationController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/NavigationController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/TabBarController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/TabBarController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/URLDefines/URLDefines.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/URLDefines/URLDefines.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Util/DataLoader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Util/DataLoader.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Util/UIImageView+Task.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTV/Util/UIImageView+Task.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTVTests/KTVTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTVTests/KTVTests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTVUITests/KTVUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH02_07 간단한 리스트 화면 구현 - My화면 구현/KTV/KTVUITests/KTVUITests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Assets.xcassets/hot.imageset/HOT@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Assets.xcassets/hot.imageset/HOT@2x.png -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Assets.xcassets/hot.imageset/HOT@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Assets.xcassets/hot.imageset/HOT@3x.png -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Assets.xcassets/logo.imageset/Union.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Assets.xcassets/logo.imageset/Union.svg -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Assets.xcassets/more.imageset/more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Assets.xcassets/more.imageset/more.png -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Color.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Color.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeFooterView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeFooterView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeFooterView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeFooterView.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeHeaderView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeHeaderView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeHeaderView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeHeaderView.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRankingContainerCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRankingContainerCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRankingHeaderView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRankingHeaderView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRankingHeaderView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRankingHeaderView.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRankingItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRankingItemCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRankingItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRankingItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeVideoCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeVideoCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeVideoCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/HomeVideoCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/VideoListItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/VideoListItemCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/VideoListItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/Cell/VideoListItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/HomeRecommendViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/HomeRecommendViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/HomeSection.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/HomeSection.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/HomeViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/HomeViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/HomeViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Home/HomeViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/JSON/bookmark.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/JSON/bookmark.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/JSON/favorite.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/JSON/favorite.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/JSON/home.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/JSON/home.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/JSON/live.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/JSON/live.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/JSON/video.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/JSON/video.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Login/LoginViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Login/LoginViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Model/Bookmark.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Model/Bookmark.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Model/Favorite.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Model/Favorite.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Model/Home.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Model/Home.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Model/Video.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Model/Video.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Model/VideoListItem.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Model/VideoListItem.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/More/MoreTableViewCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/More/MoreTableViewCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/More/MoreTableViewCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/More/MoreTableViewCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/More/MoreViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/More/MoreViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/More/MoreViewController.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/More/MoreViewController.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/More/MoreViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/More/MoreViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/My/Bookmark/BookmarkCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/My/Bookmark/BookmarkCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/My/Bookmark/BookmarkCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/My/Bookmark/BookmarkCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/My/Bookmark/BookmarkViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/My/Bookmark/BookmarkViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/My/Favorite/FavoriteViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/My/Favorite/FavoriteViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/My/MyViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/My/MyViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/NavigationController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/NavigationController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/TabBarController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/TabBarController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/URLDefines/URLDefines.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/URLDefines/URLDefines.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Util/DataLoader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Util/DataLoader.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Util/UIImageView+Task.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Util/UIImageView+Task.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Video/VideoViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Video/VideoViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Video/VideoViewController.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Video/VideoViewController.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Video/VideoViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTV/Video/VideoViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTVTests/KTVTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTVTests/KTVTests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTVUITests/KTVUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTVUITests/KTVUITests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTVUITests/KTVUITestsLaunchTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_01 시청 화면 UI 구현/KTV/KTVUITests/KTVUITestsLaunchTests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Color.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Color.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeFooterView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeFooterView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeFooterView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeFooterView.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeHeaderView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeHeaderView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeHeaderView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeHeaderView.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeRankingHeaderView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeRankingHeaderView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeRankingHeaderView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeRankingHeaderView.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeRankingItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeRankingItemCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeRankingItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeRankingItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeVideoCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeVideoCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeVideoCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/HomeVideoCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/VideoListItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/VideoListItemCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/VideoListItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/Cell/VideoListItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/HomeRecommendViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/HomeRecommendViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/HomeSection.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/HomeSection.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/HomeViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/HomeViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/HomeViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Home/HomeViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/JSON/bookmark.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/JSON/bookmark.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/JSON/favorite.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/JSON/favorite.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/JSON/home.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/JSON/home.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/JSON/live.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/JSON/live.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/JSON/video.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/JSON/video.json -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Login/LoginViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Login/LoginViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Model/Bookmark.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Model/Bookmark.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Model/Favorite.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Model/Favorite.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Model/Home.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Model/Home.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Model/Video.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Model/Video.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Model/VideoListItem.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Model/VideoListItem.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/More/MoreTableViewCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/More/MoreTableViewCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/More/MoreTableViewCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/More/MoreTableViewCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/More/MoreViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/More/MoreViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/More/MoreViewController.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/More/MoreViewController.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/More/MoreViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/More/MoreViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/My/Bookmark/BookmarkCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/My/Bookmark/BookmarkCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/My/Bookmark/BookmarkCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/My/Bookmark/BookmarkCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/My/Bookmark/BookmarkViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/My/Bookmark/BookmarkViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/My/Favorite/FavoriteViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/My/Favorite/FavoriteViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/My/MyViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/My/MyViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/NavigationController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/NavigationController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/TabBarController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/TabBarController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/URLDefines/URLDefines.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/URLDefines/URLDefines.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Util/DataLoader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Util/DataLoader.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Util/UIImageView+Task.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Util/UIImageView+Task.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Video/PlayerView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Video/PlayerView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Video/VideoViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Video/VideoViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Video/VideoViewController.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Video/VideoViewController.xib -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Video/VideoViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTV/Video/VideoViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTVTests/KTVTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTVTests/KTVTests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTVUITests/KTVUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTVUITests/KTVUITests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH03_02 PlayerView 구현/KTV/KTVUITests/KTVUITestsLaunchTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH03_02 PlayerView 구현/KTV/KTVUITests/KTVUITestsLaunchTests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Home/HomeSection.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Home/HomeSection.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Home/HomeViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Home/HomeViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/JSON/bookmark.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/JSON/bookmark.json -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/JSON/favorite.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/JSON/favorite.json -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/JSON/home.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/JSON/home.json -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/JSON/live.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/JSON/live.json -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/JSON/video.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/JSON/video.json -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Live/LiveCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Live/LiveCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Live/LiveCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Live/LiveCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Live/LiveViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Live/LiveViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Model/Bookmark.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Model/Bookmark.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Model/Favorite.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Model/Favorite.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Model/Home.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Model/Home.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Model/Live.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Model/Live.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Model/Video.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Model/Video.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Model/VideoListItem.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Model/VideoListItem.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/More/MoreTableViewCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/More/MoreTableViewCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/More/MoreViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/More/MoreViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/My/MyViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/My/MyViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/NavigationController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/NavigationController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/TabBarController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/TabBarController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Util/DataLoader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Util/DataLoader.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Video/PlayerView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Video/PlayerView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Video/SeekbarView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Video/SeekbarView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Video/VideoViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTV/Video/VideoViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTVTests/KTVTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTVTests/KTVTests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTVUITests/KTVUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_01 라이브스트리밍 탭 구현(1) - 디자인 적용/KTV/KTVUITests/KTVUITests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Home/HomeSection.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Home/HomeSection.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Home/HomeViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Home/HomeViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/JSON/bookmark.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/JSON/bookmark.json -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/JSON/favorite.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/JSON/favorite.json -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/JSON/home.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/JSON/home.json -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/JSON/live.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/JSON/live.json -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/JSON/video.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/JSON/video.json -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Live/LiveCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Live/LiveCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Live/LiveCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Live/LiveCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Live/LiveViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Live/LiveViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Model/Bookmark.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Model/Bookmark.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Model/Favorite.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Model/Favorite.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Model/Home.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Model/Home.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Model/Live.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Model/Live.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Model/Video.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Model/Video.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/More/MoreViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/More/MoreViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/TabBarController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/TabBarController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Util/DataLoader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Util/DataLoader.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Video/PlayerView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Video/PlayerView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Video/SeekbarView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTV/Video/SeekbarView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTVTests/KTVTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTVTests/KTVTests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTVUITests/KTVUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH04_02 라이브스트리밍 탭 구현(2) - 채팅 UI 연동/KTV/KTVUITests/KTVUITests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH05_01 UICollectionViewCompositionalLayout 활용하기/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH05_01 UICollectionViewCompositionalLayout 활용하기/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Assets.xcassets/more.imageset/more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Assets.xcassets/more.imageset/more.png -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Color.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Color.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeFooterView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeFooterView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeFooterView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeFooterView.xib -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeHeaderView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeHeaderView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeHeaderView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeHeaderView.xib -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeRankingContainerCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeRankingContainerCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeRankingHeaderView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeRankingHeaderView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeRankingHeaderView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeRankingHeaderView.xib -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeRankingItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeRankingItemCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeRankingItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeRankingItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeVideoCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeVideoCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeVideoCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/HomeVideoCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/VideoListItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/VideoListItemCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/VideoListItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/Cell/VideoListItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/HomeRecommendViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/HomeRecommendViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/HomeSection.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/HomeSection.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/HomeViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/HomeViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/HomeViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Home/HomeViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/JSON/bookmark.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/JSON/bookmark.json -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/JSON/favorite.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/JSON/favorite.json -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/JSON/home.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/JSON/home.json -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/JSON/live.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/JSON/live.json -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/JSON/video.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/JSON/video.json -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Live/LiveCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Live/LiveCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Live/LiveCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Live/LiveCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Live/LiveViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Live/LiveViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Live/LiveViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Live/LiveViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/LiveChatting/ChatSimulator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/LiveChatting/ChatSimulator.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/LiveChatting/ChattingView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/LiveChatting/ChattingView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/LiveChatting/ChattingViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/LiveChatting/ChattingViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Login/LoginViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Login/LoginViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Model/Bookmark.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Model/Bookmark.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Model/Favorite.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Model/Favorite.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Model/Home.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Model/Home.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Model/Live.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Model/Live.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Model/Video.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Model/Video.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Model/VideoListItem.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Model/VideoListItem.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/More/MoreTableViewCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/More/MoreTableViewCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/More/MoreTableViewCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/More/MoreTableViewCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/More/MoreViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/More/MoreViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/More/MoreViewController.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/More/MoreViewController.xib -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/More/MoreViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/More/MoreViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/My/Bookmark/BookmarkCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/My/Bookmark/BookmarkCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/My/Bookmark/BookmarkCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/My/Bookmark/BookmarkCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/My/Bookmark/BookmarkViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/My/Bookmark/BookmarkViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/My/Favorite/FavoriteViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/My/Favorite/FavoriteViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/My/MyViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/My/MyViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/NavigationController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/NavigationController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/TabBarController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/TabBarController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/URLDefines/URLDefines.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/URLDefines/URLDefines.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Util/DataLoader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Util/DataLoader.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Util/UIImageView+Task.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Util/UIImageView+Task.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Video/PlayerView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Video/PlayerView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Video/SeekbarView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Video/SeekbarView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Video/VideoViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Video/VideoViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Video/VideoViewController.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Video/VideoViewController.xib -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Video/VideoViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTV/Video/VideoViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTVTests/KTVTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTVTests/KTVTests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTVUITests/KTVUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTVUITests/KTVUITests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTVUITests/KTVUITestsLaunchTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH06_01 시청화면에 PIP 적용/KTV/KTVUITests/KTVUITestsLaunchTests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_01 UIViewController Transition에 대한 소개/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_01 UIViewController Transition에 대한 소개/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/CH07_01 UIViewController Transition에 대한 소개/KTV/KTV/JSON/home.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_01 UIViewController Transition에 대한 소개/KTV/KTV/JSON/home.json -------------------------------------------------------------------------------- /APP2_KTV/CH07_01 UIViewController Transition에 대한 소개/KTV/KTV/JSON/live.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_01 UIViewController Transition에 대한 소개/KTV/KTV/JSON/live.json -------------------------------------------------------------------------------- /APP2_KTV/CH07_01 UIViewController Transition에 대한 소개/KTV/KTV/JSON/video.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_01 UIViewController Transition에 대한 소개/KTV/KTV/JSON/video.json -------------------------------------------------------------------------------- /APP2_KTV/CH07_01 UIViewController Transition에 대한 소개/KTV/KTV/Model/Home.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_01 UIViewController Transition에 대한 소개/KTV/KTV/Model/Home.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_01 UIViewController Transition에 대한 소개/KTV/KTV/Model/Live.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_01 UIViewController Transition에 대한 소개/KTV/KTV/Model/Live.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Assets.xcassets/hot.imageset/HOT@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Assets.xcassets/hot.imageset/HOT@2x.png -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Assets.xcassets/hot.imageset/HOT@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Assets.xcassets/hot.imageset/HOT@3x.png -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Assets.xcassets/logo.imageset/Union.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Assets.xcassets/logo.imageset/Union.svg -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Assets.xcassets/more.imageset/more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Assets.xcassets/more.imageset/more.png -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Color.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Color.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeFooterView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeFooterView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeFooterView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeFooterView.xib -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeHeaderView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeHeaderView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeHeaderView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeHeaderView.xib -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRankingContainerCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRankingContainerCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRankingHeaderView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRankingHeaderView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRankingHeaderView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRankingHeaderView.xib -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRankingItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRankingItemCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRankingItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRankingItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeVideoCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeVideoCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeVideoCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/HomeVideoCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/VideoListItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/VideoListItemCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/VideoListItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/Cell/VideoListItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/HomeRecommendViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/HomeRecommendViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/HomeSection.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/HomeSection.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/HomeViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/HomeViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/HomeViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Home/HomeViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/JSON/bookmark.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/JSON/bookmark.json -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/JSON/favorite.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/JSON/favorite.json -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/JSON/home.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/JSON/home.json -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/JSON/live.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/JSON/live.json -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/JSON/video.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/JSON/video.json -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Live/LiveCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Live/LiveCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Live/LiveCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Live/LiveCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Live/LiveViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Live/LiveViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Live/LiveViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Live/LiveViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/LiveChatting/ChatSimulator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/LiveChatting/ChatSimulator.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/LiveChatting/ChattingView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/LiveChatting/ChattingView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/LiveChatting/ChattingViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/LiveChatting/ChattingViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Login/LoginViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Login/LoginViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Model/Bookmark.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Model/Bookmark.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Model/Favorite.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Model/Favorite.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Model/Home.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Model/Home.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Model/Live.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Model/Live.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Model/Video.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Model/Video.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Model/VideoListItem.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Model/VideoListItem.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/More/MoreTableViewCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/More/MoreTableViewCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/More/MoreTableViewCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/More/MoreTableViewCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/More/MoreViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/More/MoreViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/More/MoreViewController.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/More/MoreViewController.xib -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/More/MoreViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/More/MoreViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/My/Bookmark/BookmarkCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/My/Bookmark/BookmarkCell.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/My/Bookmark/BookmarkCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/My/Bookmark/BookmarkCell.xib -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/My/Bookmark/BookmarkViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/My/Bookmark/BookmarkViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/My/Favorite/FavoriteViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/My/Favorite/FavoriteViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/My/MyViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/My/MyViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/NavigationController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/NavigationController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/TabBarController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/TabBarController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/URLDefines/URLDefines.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/URLDefines/URLDefines.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Util/DataLoader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Util/DataLoader.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Util/UIImageView+Task.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Util/UIImageView+Task.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Video/PlayerView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Video/PlayerView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Video/SeekbarView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Video/SeekbarView.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Video/VideoViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Video/VideoViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Video/VideoViewController.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Video/VideoViewController.xib -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Video/VideoViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/Video/VideoViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/VideoViewControllerContainer.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTV/VideoViewControllerContainer.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTVTests/KTVTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTVTests/KTVTests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTVUITests/KTVUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTVUITests/KTVUITests.swift -------------------------------------------------------------------------------- /APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTVUITests/KTVUITestsLaunchTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/CH07_02 시청화면 최소화 구현/KTV/KTVUITests/KTVUITestsLaunchTests.swift -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/Images/listthumb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/Images/listthumb.png -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/Images/livethumb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/Images/livethumb.png -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/Images/rankingthumbnail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/Images/rankingthumbnail.png -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/Images/user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/Images/user.png -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/Images/v_thumbnail1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/Images/v_thumbnail1.png -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/Images/v_thumbnail2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/Images/v_thumbnail2.png -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/Images/v_thumbnail3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/Images/v_thumbnail3.png -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/JSON/Home.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/JSON/Home.swift -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/JSON/ListItem.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/JSON/ListItem.swift -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/JSON/Live.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/JSON/Live.swift -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/JSON/My.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/JSON/My.swift -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/JSON/URLDefinition.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/JSON/URLDefinition.swift -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/JSON/Video.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/JSON/Video.swift -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/JSONUtil.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/JSONUtil.swift -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/bookmark.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/bookmark.json -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/favorite.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/favorite.json -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/home.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/home.json -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/live.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/live.json -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/main.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/main.swift -------------------------------------------------------------------------------- /APP2_KTV/ServerSimulator/ServerSimulator/video.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/ServerSimulator/ServerSimulator/video.json -------------------------------------------------------------------------------- /APP2_KTV/Study project/CompositionalLayout/CompositionalLayout/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/CompositionalLayout/CompositionalLayout/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/Study project/KVO/KVO.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/KVO/KVO.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/Study project/KVO/KVO/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/KVO/KVO/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/KVO/KVO/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/KVO/KVO/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/Study project/KVO/KVO/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/KVO/KVO/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /APP2_KTV/Study project/KVO/KVO/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/KVO/KVO/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /APP2_KTV/Study project/KVO/KVO/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/KVO/KVO/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/Study project/KVO/KVO/KVOObject.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/KVO/KVO/KVOObject.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/KVO/KVO/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/KVO/KVO/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/KVO/KVO/ViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/KVO/KVO/ViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/KVO/KVOTests/KVOTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/KVO/KVOTests/KVOTests.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/KVO/KVOUITests/KVOUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/KVO/KVOUITests/KVOUITests.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/KVO/KVOUITests/KVOUITestsLaunchTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/KVO/KVOUITests/KVOUITestsLaunchTests.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/ModalPresentation/ModalPresentation/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/ModalPresentation/ModalPresentation/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/ModalPresentation/ModalPresentation/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/ModalPresentation/ModalPresentation/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/Study project/ModalTransitionStyle/ModalTransitionStyle/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/ModalTransitionStyle/ModalTransitionStyle/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/Study project/Notification/Notification.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Notification/Notification.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/Study project/Notification/Notification/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Notification/Notification/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/Notification/Notification/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Notification/Notification/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /APP2_KTV/Study project/Notification/Notification/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Notification/Notification/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/Study project/Notification/Notification/NotificationName.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Notification/Notification/NotificationName.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/Notification/Notification/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Notification/Notification/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/Notification/Notification/SecondViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Notification/Notification/SecondViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/Notification/Notification/ViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Notification/Notification/ViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/Task/Task.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Task/Task.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/Study project/Task/Task/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Task/Task/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/Task/Task/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Task/Task/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/Study project/Task/Task/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Task/Task/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /APP2_KTV/Study project/Task/Task/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Task/Task/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /APP2_KTV/Study project/Task/Task/DataSetter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Task/Task/DataSetter.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/Task/Task/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Task/Task/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/Study project/Task/Task/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Task/Task/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/Task/Task/ViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Task/Task/ViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/Task/TaskTests/TaskTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Task/TaskTests/TaskTests.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/Task/TaskUITests/TaskUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Task/TaskUITests/TaskUITests.swift -------------------------------------------------------------------------------- /APP2_KTV/Study project/Task/TaskUITests/TaskUITestsLaunchTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/Study project/Task/TaskUITests/TaskUITestsLaunchTests.swift -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/AppIcon.appiconset/appicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/AppIcon.appiconset/appicon.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_pause.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_pause.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_pause.imageset/pause.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_pause.imageset/pause.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_pause.imageset/pause@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_pause.imageset/pause@2x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_pause.imageset/pause@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_pause.imageset/pause@3x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_play.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_play.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_play.imageset/play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_play.imageset/play.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_play.imageset/play@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_play.imageset/play@2x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_play.imageset/play@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/big_play.imageset/play@3x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/expand.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/expand.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/expand.imageset/open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/expand.imageset/open.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/expand.imageset/open@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/expand.imageset/open@2x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/expand.imageset/open@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/expand.imageset/open@3x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/fastfoward.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/fastfoward.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/favorite.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/favorite.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/favorite.imageset/favorite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/favorite.imageset/favorite.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/favorite.imageset/favorite@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/favorite.imageset/favorite@2x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/favorite.imageset/favorite@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/favorite.imageset/favorite@3x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/fold.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/fold.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/fold.imageset/dropdown(접힙).png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/fold.imageset/dropdown(접힙).png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/fold.imageset/dropdown(접힙)@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/fold.imageset/dropdown(접힙)@2x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/fold.imageset/dropdown(접힙)@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/fold.imageset/dropdown(접힙)@3x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/hot.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/hot.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/hot.imageset/HOT@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/hot.imageset/HOT@2x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/hot.imageset/HOT@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/hot.imageset/HOT@3x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/launchImage.imageset/app-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/launchImage.imageset/app-icon.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/logo.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/logo.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/logo.imageset/Union.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/logo.imageset/Union.svg -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/minimize.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/minimize.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/minimize.imageset/Frame 45.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/minimize.imageset/Frame 45.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/minimize.imageset/Frame 45@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/minimize.imageset/Frame 45@2x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/minimize.imageset/Frame 45@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/minimize.imageset/Frame 45@3x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/more.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/more.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/more.imageset/more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/more.imageset/more.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/more.imageset/more@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/more.imageset/more@2x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/more.imageset/more@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/more.imageset/more@3x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/more_right.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/more_right.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/my_bookmark.imageset/bookmark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/my_bookmark.imageset/bookmark.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/my_like.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/my_like.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/my_like.imageset/heart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/my_like.imageset/heart.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/my_like.imageset/heart@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/my_like.imageset/heart@2x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/my_like.imageset/heart@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/my_like.imageset/heart@3x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/rewind.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/rewind.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/rewind.imageset/fast_rewind.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/rewind.imageset/fast_rewind.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/shrink.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/shrink.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/small_close.imageset/close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/small_close.imageset/close.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/small_close.imageset/close@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/small_close.imageset/close@2x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/small_close.imageset/close@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/small_close.imageset/close@3x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/small_play.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/small_play.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/small_play.imageset/play_.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/small_play.imageset/play_.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/small_play.imageset/play_@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/small_play.imageset/play_@2x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/unfold.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/unfold.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/user.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/user.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Assets.xcassets/user.imageset/user@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Assets.xcassets/user.imageset/user@2x.png -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Color.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Color.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Color.xcassets/bg.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Color.xcassets/bg.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Color.xcassets/chat-bg.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Color.xcassets/chat-bg.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Color.xcassets/d-text.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Color.xcassets/d-text.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Color.xcassets/gray-1.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Color.xcassets/gray-1.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Color.xcassets/gray-2.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Color.xcassets/gray-2.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Color.xcassets/gray-3.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Color.xcassets/gray-3.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Color.xcassets/gray-4.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Color.xcassets/gray-4.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Color.xcassets/icon-on.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Color.xcassets/icon-on.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Color.xcassets/live-red.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Color.xcassets/live-red.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Color.xcassets/main-wh.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Color.xcassets/main-wh.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Color.xcassets/more-bk.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Color.xcassets/more-bk.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTV/ViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTV/ViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTVTests/KTVTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTVTests/KTVTests.swift -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTVUITests/KTVUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTVUITests/KTVUITests.swift -------------------------------------------------------------------------------- /APP2_KTV/beginning/KTV/KTVUITests/KTVUITestsLaunchTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/beginning/KTV/KTVUITests/KTVUITestsLaunchTests.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/AppDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/big_pause.imageset/pause.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/big_pause.imageset/pause.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/big_play.imageset/play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/big_play.imageset/play.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/big_play.imageset/play@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/big_play.imageset/play@2x.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/big_play.imageset/play@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/big_play.imageset/play@3x.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/expand.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/expand.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/expand.imageset/open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/expand.imageset/open.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/expand.imageset/open@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/expand.imageset/open@2x.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/expand.imageset/open@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/expand.imageset/open@3x.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/fold.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/fold.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/hot.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/hot.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/hot.imageset/HOT@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/hot.imageset/HOT@2x.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/hot.imageset/HOT@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/hot.imageset/HOT@3x.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/logo.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/logo.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/logo.imageset/Union.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/logo.imageset/Union.svg -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/more.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/more.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/more.imageset/more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/more.imageset/more.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/more.imageset/more@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/more.imageset/more@2x.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/more.imageset/more@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/more.imageset/more@3x.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/my_like.imageset/heart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/my_like.imageset/heart.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/my_like.imageset/heart@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/my_like.imageset/heart@2x.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/my_like.imageset/heart@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/my_like.imageset/heart@3x.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/rewind.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/rewind.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/shrink.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/shrink.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/small_play.imageset/play_.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/small_play.imageset/play_.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/unfold.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/unfold.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/user.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/user.imageset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Assets.xcassets/user.imageset/user@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Assets.xcassets/user.imageset/user@2x.png -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Color.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Color.xcassets/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Color.xcassets/bg.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Color.xcassets/bg.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Color.xcassets/chat-bg.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Color.xcassets/chat-bg.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Color.xcassets/d-text.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Color.xcassets/d-text.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Color.xcassets/gray-1.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Color.xcassets/gray-1.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Color.xcassets/gray-2.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Color.xcassets/gray-2.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Color.xcassets/gray-3.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Color.xcassets/gray-3.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Color.xcassets/gray-4.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Color.xcassets/gray-4.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Color.xcassets/icon-on.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Color.xcassets/icon-on.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Color.xcassets/main-wh.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Color.xcassets/main-wh.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Color.xcassets/more-bk.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Color.xcassets/more-bk.colorset/Contents.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeFooterView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeFooterView.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeFooterView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeFooterView.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeHeaderView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeHeaderView.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeHeaderView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeHeaderView.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRankingContainerCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRankingContainerCell.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRankingContainerCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRankingContainerCell.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRankingHeaderView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRankingHeaderView.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRankingHeaderView.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRankingHeaderView.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRankingItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRankingItemCell.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRankingItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRankingItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRecentWatchContainerCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRecentWatchContainerCell.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRecentWatchContainerCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRecentWatchContainerCell.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRecentWatchItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRecommendContainerCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRecommendContainerCell.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRecommendContainerCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeRecommendContainerCell.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeVideoCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeVideoCell.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/HomeVideoCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/HomeVideoCell.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/VideoListItemCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/VideoListItemCell.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/Cell/VideoListItemCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/Cell/VideoListItemCell.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/HomeRecommendViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/HomeRecommendViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/HomeSection.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/HomeSection.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/HomeViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/HomeViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Home/HomeViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Home/HomeViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Info.plist -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/JSON/bookmark.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/JSON/bookmark.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/JSON/favorite.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/JSON/favorite.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/JSON/home.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/JSON/home.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/JSON/live.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/JSON/live.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/JSON/video.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/JSON/video.json -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Live/LiveCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Live/LiveCell.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Live/LiveCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Live/LiveCell.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Live/LiveViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Live/LiveViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Live/LiveViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Live/LiveViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/LiveChatting/ChatSimulator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/LiveChatting/ChatSimulator.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/LiveChatting/ChattingView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/LiveChatting/ChattingView.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/LiveChatting/ChattingViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/LiveChatting/ChattingViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Login/LoginViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Login/LoginViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Model/Bookmark.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Model/Bookmark.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Model/Favorite.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Model/Favorite.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Model/Home.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Model/Home.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Model/Live.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Model/Live.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Model/Video.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Model/Video.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Model/VideoListItem.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Model/VideoListItem.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/More/MoreTableViewCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/More/MoreTableViewCell.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/More/MoreTableViewCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/More/MoreTableViewCell.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/More/MoreViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/More/MoreViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/More/MoreViewController.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/More/MoreViewController.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/More/MoreViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/More/MoreViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/My/Bookmark/BookmarkCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/My/Bookmark/BookmarkCell.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/My/Bookmark/BookmarkCell.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/My/Bookmark/BookmarkCell.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/My/Bookmark/BookmarkViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/My/Bookmark/BookmarkViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/My/Bookmark/BookmarkViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/My/Bookmark/BookmarkViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/My/Favorite/FavoriteViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/My/Favorite/FavoriteViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/My/Favorite/FavoriteViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/My/Favorite/FavoriteViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/My/MyViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/My/MyViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/NavigationController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/NavigationController.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/SceneDelegate.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/TabBarController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/TabBarController.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/URLDefines/URLDefines.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/URLDefines/URLDefines.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Util/DataLoader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Util/DataLoader.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Util/UIImageView+Task.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Util/UIImageView+Task.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Video/PlayerView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Video/PlayerView.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Video/SeekbarView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Video/SeekbarView.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Video/VideoViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Video/VideoViewController.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Video/VideoViewController.xib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Video/VideoViewController.xib -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/Video/VideoViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/Video/VideoViewModel.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTV/VideoViewControllerContainer.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTV/VideoViewControllerContainer.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTVTests/KTVTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTVTests/KTVTests.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTVUITests/KTVUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTVUITests/KTVUITests.swift -------------------------------------------------------------------------------- /APP2_KTV/completion/KTV/KTVUITests/KTVUITestsLaunchTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP2_KTV/completion/KTV/KTVUITests/KTVUITestsLaunchTests.swift -------------------------------------------------------------------------------- /APP3_LMessenger/beginning/LMessenger/LMessenger.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/beginning/LMessenger/LMessenger.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /APP3_LMessenger/beginning/LMessenger/LMessenger/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/beginning/LMessenger/LMessenger/ContentView.swift -------------------------------------------------------------------------------- /APP3_LMessenger/beginning/LMessenger/LMessenger/LMessengerApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/beginning/LMessenger/LMessenger/LMessengerApp.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/AppDelegate.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/DTO/ChatObject.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/DTO/ChatObject.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/DTO/ChatRoomObject.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/DTO/ChatRoomObject.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/DTO/PushObject.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/DTO/PushObject.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/DTO/UserObject.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/DTO/UserObject.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/General/Constant.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/General/Constant.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/General/Phase.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/General/Phase.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/Info.plist -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/LMessenger.entitlements: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/LMessenger.entitlements -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/LMessengerApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/LMessengerApp.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/Model/Chat.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/Model/Chat.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/Model/ChatData.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/Model/ChatData.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/Model/ChatRoom.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/Model/ChatRoom.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/Model/User.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/Model/User.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/Service/Services.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/Service/Services.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/Util/SHA256.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/Util/SHA256.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/View/Chat/ChatView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/View/Chat/ChatView.swift -------------------------------------------------------------------------------- /APP3_LMessenger/completion/LMessenger/LMessenger/View/Home/HomeView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/APP3_LMessenger/completion/LMessenger/LMessenger/View/Home/HomeView.swift -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/AppDelegate.swift -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/Home/ListCell.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/Home/ListCell.swift -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/Home/ViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/Home/ViewController.swift -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/Info.plist -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/MemoryWarning/DummyGenerator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/MemoryWarning/DummyGenerator.swift -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/MemoryWarning/ReferenceCycleModule.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/MemoryWarning/ReferenceCycleModule.swift -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/MemoryWarning/SampleCache.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/MemoryWarning/SampleCache.swift -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/SceneDelegate.swift -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/Task/TaskSample.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/Task/TaskSample.swift -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/Unowned/UnownedSample.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/Unowned/UnownedSample.swift -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebug/Unowned/WeakSample.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebug/Unowned/WeakSample.swift -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebugTests/MemoryDebugTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebugTests/MemoryDebugTests.swift -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebugUITests/MemoryDebugUITests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebugUITests/MemoryDebugUITests.swift -------------------------------------------------------------------------------- /부록1_02MemoryDebug/MemoryDebugUITests/MemoryDebugUITestsLaunchTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fastcampus-plan1/IOS/HEAD/부록1_02MemoryDebug/MemoryDebugUITests/MemoryDebugUITestsLaunchTests.swift --------------------------------------------------------------------------------