diff --git a/MemorialHouse/MHPresentation/MHPresentation/Source/Design/MHBook.swift b/MemorialHouse/MHPresentation/MHPresentation/Source/Design/MHBook.swift index 6a2b2012..be0f6bdc 100644 --- a/MemorialHouse/MHPresentation/MHPresentation/Source/Design/MHBook.swift +++ b/MemorialHouse/MHPresentation/MHPresentation/Source/Design/MHBook.swift @@ -2,28 +2,15 @@ import UIKit import MHFoundation import MHDomain -// TODO: 위치 변경 고려해보기 -extension BookType { - var image: UIImage { - switch self { - case .blue: .blueBook - case .beige: .beigeBook - case .green: .greenBook - case .orange: .orangeBook - case .pink: .pinkBook - @unknown default: - fatalError("등록되지 않은 책 색상입니다.") - } - } -} - final class MHBook: UIView { // MARK: - Property - private let bookImageView = UIImageView() + private let bookCoverImageView = UIImageView() private let titleLabel = UILabel(style: .default) private let targetImageView: UIImageView = { let imageView = UIImageView() - imageView.contentMode = .scaleToFill + imageView.contentMode = .scaleAspectFill + imageView.clipsToBounds = true + imageView.layer.shadowRadius = 4 imageView.layer.shadowOpacity = 0.4 imageView.layer.shadowOffset = CGSize(width: 4, height: 4) @@ -48,25 +35,27 @@ final class MHBook: UIView { } // MARK: - Configuration - func configure(with bookCover: BookCover) { - titleLabel.text = bookCover.title - bookImageView.image = bookCover.bookType.image - targetImageView.image = UIImage(systemName: "person") // TODO: Image Loader로 변경 - if let publisher = UserDefaults.standard.object(forKey: Constant.houseNameUserDefaultKey) as? String { - // TODO: User 모델 만들어지면 파라미터로 출판소 이름 넘겨주기 - publisherLabel.text = publisher - } + func configure( + title: String, + bookCoverImage: UIImage, + targetImage: UIImage, + publisher: String + ) { + titleLabel.text = title + bookCoverImageView.image = bookCoverImage + targetImageView.image = targetImage + publisherLabel.text = publisher } private func configureAddSubView() { - addSubview(bookImageView) + addSubview(bookCoverImageView) addSubview(titleLabel) addSubview(targetImageView) addSubview(publisherLabel) } private func configureConstraints() { - bookImageView.fillSuperview() + bookCoverImageView.fillSuperview() titleLabel.setTop(anchor: topAnchor, constant: 16) titleLabel.setCenterX(view: self, constant: 8) targetImageView.setTop(anchor: titleLabel.bottomAnchor, constant: 14)