71 lines
1.3 KiB
Swift
71 lines
1.3 KiB
Swift
import UIKit
|
|
import ContainerControllerSwift
|
|
|
|
// MARK: - State
|
|
|
|
extension MyCardsAddCardItem {
|
|
struct State: Equatable {
|
|
|
|
}
|
|
}
|
|
|
|
// MARK: - Item
|
|
|
|
class MyCardsAddCardItem: CollectionAdapterItem {
|
|
|
|
init(state: MyCardsAddCardItem.State,
|
|
clickCallback: (() -> ())? = nil) {
|
|
|
|
let cellData = MyCardsAddCardCellData(state: state,
|
|
clickCallback: clickCallback)
|
|
super.init(cellClass: MyCardsAddCardCell.self, cellData: cellData)
|
|
}
|
|
}
|
|
|
|
// MARK: - Data
|
|
|
|
class MyCardsAddCardCellData: CollectionAdapterCellData {
|
|
|
|
// MARK: Properties
|
|
var state: MyCardsAddCardItem.State
|
|
public var clickCallback: (() -> Void)?
|
|
|
|
// MARK: Inits
|
|
init(state: MyCardsAddCardItem.State,
|
|
clickCallback: (() -> ())?) {
|
|
self.state = state
|
|
|
|
self.clickCallback = clickCallback
|
|
super.init()
|
|
}
|
|
|
|
override public func size() -> CGSize {
|
|
return CGSize(width: 71.0, height: 185.0)
|
|
}
|
|
}
|
|
|
|
// MARK: - Cell
|
|
|
|
class MyCardsAddCardCell: CollectionAdapterCell {
|
|
|
|
@IBOutlet var button: UIButton!
|
|
// MARK: Properties
|
|
|
|
public var data: MyCardsAddCardCellData?
|
|
|
|
// MARK: Outlets
|
|
|
|
|
|
|
|
// MARK: Initialize
|
|
|
|
override func awakeFromNib() { }
|
|
|
|
override func fill(data: Any?) {
|
|
guard let data = data as? MyCardsAddCardCellData else { return }
|
|
self.data = data
|
|
|
|
|
|
}
|
|
}
|