         self.configuration = configuration
         self.updateQueue = updateQueue
 
+        self.isFirstUpdate = true
         self.isLoadingContents = true
         self.nextDidEndScrollingAnimationHandlers = []
 

extension ChatMessageCollectionAdapter: ChatDataSourceDelegateProtocol {
    public func chatDataSourceDidUpdate(_ chatDataSource: ChatDataSourceProtocol) {
        self.enqueueModelUpdate(updateType: .normal)
    }

    public func chatDataSourceDidUpdate(_ chatDataSource: ChatDataSourceProtocol, updateType: UpdateType) {
        self.enqueueModelUpdate(updateType: updateType)
    }


    private let updateQueue: SerialTaskQueueProtocol

    private var nextDidEndScrollingAnimationHandlers: [() -> Void]
    private var isFirstUpdate: Bool // TODO: To remove
    private weak var collectionView: UICollectionView?

    public weak var delegate: ChatMessageCollectionAdapterDelegate?
