MoviaBox/ShortPlay/Libs/Empty/SPEmptyState.swift

92 lines
2.0 KiB
Swift

//
// SPEmptyState.swift
// ShortPlay
//
// Created by Overseas on 2025/4/19.
//
import UIKit
import EmptyStateKit
struct SPEmptyParameters {
// var title: String = ""
// var titleFont: UIFont = UIFont.text_md
// var titleColor: UIColor = UIColor.system_text_secondary_300
var image: UIImage? = UIImage(named: "empty_image_01")
// var buttonTitle: String?
}
enum SPEmptyState {
case normail(parameters: SPEmptyParameters)
}
extension SPEmptyState: CustomState {
var image: UIImage? {
switch self {
case .normail(let parameters):
return parameters.image
}
}
var title: String? {
switch self {
case .normail(let parameters):
return nil
}
}
// var titleButton: String? {
// switch self {
// case .normail(let parameters):
// return parameters.buttonTitle
// }
}
extension SPEmptyState {
var format: EmptyStateFormat {
var format = EmptyStateFormat()
format.backgroundColor = .clear
format.imageSize = self.image?.size ?? .zero
// format.verticalMargin = -10
//
// format.buttonWidth = 107
// format.buttonTopMargin = 10
// format.buttonColor = .system_fill_primary_100
// format.buttonAttributes = [
// .font: UIFont.text_md,
// .foregroundColor: UIColor.system_text_secondary_500
// ]
//
// switch self {
// case .normail(let p):
// format.titleAttributes = [
// .font: p.titleFont,
// .foregroundColor: p.titleColor
// ]
//
//
// case .login(let p):
// format.titleAttributes = [
// .font: p.titleFont,
// .foregroundColor: p.titleColor
// ]
//
//
// }
return format
}
}