-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1,219 changed files
with
27,739 additions
and
88 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
--- | ||
name: Feature request Template | ||
about: "\b기능, UI, 문서 개선 및 추가 요청을 위한 템플릿." | ||
title: '' | ||
labels: feature | ||
assignees: leeari95 | ||
|
||
--- | ||
|
||
## 🗣 설명 | ||
- 이슈 내용 작성 | ||
|
||
|
||
## 📋 체크리스트 | ||
|
||
> 구현해야하는 이슈 체크리스트 | ||
- [ ] 완료하지 못한 체크리스트 | ||
- [x] 완료한 체크리스트 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
--- | ||
name: Feature request | ||
about: "\b기능, UI, 문서 개선 및 추가 요청을 위한 템플릿." | ||
title: '' | ||
labels: '' | ||
assignees: '' | ||
|
||
--- | ||
|
||
## 🗣 설명 | ||
- 이슈 내용 작성 | ||
|
||
|
||
## 📋 체크리스트 | ||
|
||
> 구현해야하는 이슈 체크리스트 | ||
- [ ] 완료하지 못한 체크리스트 | ||
- [x] 완료한 체크리스트 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
--- | ||
name: Feature request | ||
about: Suggest an idea for this project | ||
title: '' | ||
labels: '' | ||
assignees: '' | ||
|
||
--- | ||
|
||
**Is your feature request related to a problem? Please describe.** | ||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] | ||
|
||
**Describe the solution you'd like** | ||
A clear and concise description of what you want to happen. | ||
|
||
**Describe alternatives you've considered** | ||
A clear and concise description of any alternative solutions or features you've considered. | ||
|
||
**Additional context** | ||
Add any other context or screenshots about the feature request here. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# This is a basic workflow to help you get started with Actions | ||
|
||
name: Run build and Test | ||
|
||
# Controls when the workflow will run | ||
on: | ||
# Triggers the workflow on push or pull request events but only for the "develop" branch | ||
push: | ||
branches: [ "develop" ] | ||
pull_request: | ||
branches: [ "develop" ] | ||
|
||
# Allows you to run this workflow manually from the Actions tab | ||
workflow_dispatch: | ||
|
||
# A workflow run is made up of one or more jobs that can run sequentially or in parallel | ||
jobs: | ||
# This workflow contains a single job called "build" | ||
build: | ||
# The type of runner that the job will run on | ||
runs-on: macos-latest | ||
|
||
# Steps represent a sequence of tasks that will be executed as part of the job | ||
steps: | ||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it | ||
- uses: actions/checkout@v3 | ||
|
||
# Runs a single command using the runners shell | ||
- name: Start xcode build 🛠 | ||
run: | | ||
xcodebuild clean test -project Animal-Crossing-Wiki/Animal-Crossing-Wiki.xcodeproj -scheme Animal-Crossing-Wiki -destination 'platform=iOS Simulator,name=iPhone 13 Pro,OS=15.2' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1,283 changes: 1,262 additions & 21 deletions
1,283
Animal-Crossing-Wiki/Animal-Crossing-Wiki.xcodeproj/project.pbxproj
Large diffs are not rendered by default.
Oops, something went wrong.
22 changes: 22 additions & 0 deletions
22
Animal-Crossing-Wiki/Animal-Crossing-Wiki/AppAppearance.swift
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
// | ||
// AppAppearance.swift | ||
// Animal-Crossing-Wiki | ||
// | ||
// Created by Ari on 2022/06/14. | ||
// | ||
|
||
import UIKit | ||
|
||
final class AppAppearance { | ||
static func setUpAppearance() { | ||
UITabBar.appearance().tintColor = .acText | ||
UITabBar.appearance().unselectedItemTintColor = .acText.withAlphaComponent(0.6) | ||
UITabBar.appearance().backgroundColor = .acBackground | ||
UITabBar.appearance().barTintColor = .acBackground | ||
UIBarButtonItem.appearance().tintColor = .acText | ||
UINavigationBar.appearance().prefersLargeTitles = true | ||
UINavigationBar.appearance().barTintColor = .acBackground | ||
UINavigationBar.appearance().largeTitleTextAttributes = [.foregroundColor: UIColor.acText] | ||
UINavigationBar.appearance().titleTextAttributes = [.foregroundColor: UIColor.acText] | ||
} | ||
} |
111 changes: 111 additions & 0 deletions
111
Animal-Crossing-Wiki/Animal-Crossing-Wiki/AppCoordinator.swift
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,111 @@ | ||
// | ||
// AppCoordinator.swift | ||
// Animal-Crossing-Wiki | ||
// | ||
// Created by Ari on 2022/06/14. | ||
// | ||
|
||
import UIKit | ||
|
||
final class AppCoordinator: Coordinator { | ||
var type: CoordinatorType = .main | ||
var childCoordinators: [Coordinator] = [] | ||
private(set) var rootViewController: UITabBarController! | ||
|
||
private var playerViewController: PlayerViewController? | ||
private var topAnchorConstraint: NSLayoutConstraint? | ||
|
||
init(rootViewController: UITabBarController = UITabBarController()) { | ||
self.rootViewController = rootViewController | ||
} | ||
|
||
func start() { | ||
let dashboardCoordinator = DashboardCoordinator() | ||
dashboardCoordinator.start() | ||
dashboardCoordinator.setUpParent(to: self) | ||
addViewController(dashboardCoordinator.rootViewController, title: "Dashboard".localized, icon: "icon-bells-tabbar") | ||
childCoordinators.append(dashboardCoordinator) | ||
|
||
let catalogCoordinator = CatalogCoordinator() | ||
catalogCoordinator.start() | ||
catalogCoordinator.setUpParent(to: self) | ||
addViewController(catalogCoordinator.rootViewController, title: "Catalog".localized, icon: "icon-leaf-tabbar") | ||
childCoordinators.append(catalogCoordinator) | ||
|
||
let villagersCoordinator = VillagersCoordinator() | ||
villagersCoordinator.start() | ||
addViewController(villagersCoordinator.rootViewController, title: "Villagers".localized, icon: "icon-book-tabbar") | ||
childCoordinators.append(villagersCoordinator) | ||
|
||
let collectionCoordinator = CollectionCoordinator() | ||
collectionCoordinator.start() | ||
collectionCoordinator.setUpParent(to: self) | ||
addViewController(collectionCoordinator.rootViewController, title: "Collection".localized, icon: "icon-cardboard-tabbar") | ||
childCoordinators.append(collectionCoordinator) | ||
} | ||
|
||
private func addViewController(_ viewController: UIViewController, title: String, icon: String) { | ||
let iconImage = UIImage(named: icon)?.withRenderingMode(.alwaysOriginal) | ||
|
||
let tabBarItem = UITabBarItem(title: title, image: iconImage, tag: childCoordinators.count) | ||
viewController.tabBarItem = tabBarItem | ||
|
||
rootViewController.addChild(viewController) | ||
} | ||
} | ||
|
||
extension AppCoordinator { | ||
|
||
func showMusicPlayer() { | ||
guard playerViewController == nil else { | ||
playerViewController?.view.isHidden = false | ||
return | ||
} | ||
let viewController = PlayerViewController() | ||
playerViewController = viewController | ||
rootViewController.view.addSubviews(viewController.view) | ||
rootViewController.view.bringSubviewToFront(rootViewController.tabBar) | ||
viewController.didMove(toParent: rootViewController) | ||
let viewModel = PlayerViewModel(coordinator: self) | ||
viewController.bind(to: viewModel) | ||
|
||
let frame = rootViewController.view.frame | ||
let tabBarHeight = rootViewController.tabBar.frame.height | ||
viewController.configure(tabBarHeight: tabBarHeight) | ||
self.topAnchorConstraint = viewController.view.topAnchor.constraint( | ||
equalTo: rootViewController.view.topAnchor, | ||
constant: frame.height - rootViewController.tabBar.frame.height - 60 | ||
) | ||
|
||
topAnchorConstraint.flatMap { | ||
NSLayoutConstraint.activate([ | ||
viewController.view.bottomAnchor.constraint(equalTo: rootViewController.view.bottomAnchor), | ||
viewController.view.leadingAnchor.constraint(equalTo: rootViewController.view.leadingAnchor), | ||
viewController.view.trailingAnchor.constraint(equalTo: rootViewController.view.trailingAnchor), | ||
$0 | ||
]) | ||
} | ||
} | ||
|
||
func minimize() { | ||
let frame = rootViewController.view.frame | ||
let tabBarHeight = rootViewController.tabBar.frame.height | ||
UIView.animate(withDuration: 0.4) { | ||
self.topAnchorConstraint?.constant = frame.height - tabBarHeight - 60 | ||
self.rootViewController.view.layoutIfNeeded() | ||
} | ||
} | ||
|
||
func maximize() { | ||
let frame = rootViewController.view.frame | ||
UIView.animate(withDuration: 0.4) { | ||
self.topAnchorConstraint?.constant = frame.height - 600 | ||
self.rootViewController.view.layoutIfNeeded() | ||
} | ||
} | ||
|
||
func removePlayerViewController() { | ||
playerViewController?.view.isHidden = true | ||
MusicPlayerManager.shared.close() | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file added
BIN
+6.06 KB
...l-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/100.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+428 KB
...-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/1024.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+7.61 KB
...l-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/114.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+8.02 KB
...l-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/120.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+8.71 KB
...l-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/128.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+10.6 KB
...l-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/144.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+11.2 KB
...l-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/152.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+732 Bytes
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/16.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+14.7 KB
...l-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/167.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+13.5 KB
...l-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/172.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+14.6 KB
...l-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/180.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+16.6 KB
...l-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/196.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+931 Bytes
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/20.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+19.5 KB
...l-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/216.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+26.3 KB
...l-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/256.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+1.37 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/29.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+1.54 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/32.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+2 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/40.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+2.42 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/48.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+2.61 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/50.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+104 KB
...l-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/512.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+2.91 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/55.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+3.12 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/57.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+3.16 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/58.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+3.12 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/60.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+3.26 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/64.png
Oops, something went wrong.
Binary file added
BIN
+3.93 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/72.png
Oops, something went wrong.
Binary file added
BIN
+4.26 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/76.png
Oops, something went wrong.
Binary file added
BIN
+4.53 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/80.png
Oops, something went wrong.
Binary file added
BIN
+5.37 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/87.png
Oops, something went wrong.
Binary file added
BIN
+5.29 KB
...al-Crossing-Wiki/Animal-Crossing-Wiki/Assets.xcassets/AppIcon.appiconset/88.png
Oops, something went wrong.
Oops, something went wrong.