|
|
@@ -32,6 +32,12 @@ class LNProfileFeedProvider: NSObject, LNProfileBaseProvider {
|
|
|
feedList.count
|
|
|
}
|
|
|
|
|
|
+ override init() {
|
|
|
+ super.init()
|
|
|
+
|
|
|
+ LNEventDeliver.addObserver(self)
|
|
|
+ }
|
|
|
+
|
|
|
func registerCell(tableView: UITableView) {
|
|
|
tableView.register(LNProfileFeedItemCell.self, forCellReuseIdentifier: LNProfileFeedItemCell.className)
|
|
|
self.tableView = tableView
|
|
|
@@ -68,6 +74,26 @@ class LNProfileFeedProvider: NSObject, LNProfileBaseProvider {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+extension LNProfileFeedProvider: LNFeedManagerNotify {
|
|
|
+ func onPostFeedSuccess() {
|
|
|
+ guard let curDetail else { return }
|
|
|
+ LNFeedManager.shared.getFeedList(uid: curDetail.userNo, next: nil) { [weak self] res in
|
|
|
+ guard let self else { return }
|
|
|
+ guard let res else { return }
|
|
|
+
|
|
|
+ let curFirst = feedList.first?.feedItem.id ?? ""
|
|
|
+ guard let index = res.list.firstIndex(where: { $0.id == curFirst }) else {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ let newItems = res.list[..<index].map {
|
|
|
+ LNFeedItem(feedItem: $0)
|
|
|
+ }
|
|
|
+ feedList.insert(contentsOf: newItems, at: 0)
|
|
|
+ tableView?.reloadData()
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
extension LNProfileFeedProvider: UITableViewDelegate {
|
|
|
func tableView(_ tableView: UITableView, didEndDisplaying cell: UITableViewCell, forRowAt indexPath: IndexPath) {
|
|
|
guard let view = cell as? LNProfileFeedItemCell, view.isVideo else {
|