UNPKG

@hsaadawy/ngx-chat

Version:
62 lines (61 loc) 3.05 kB
import { AfterViewInit, ChangeDetectorRef, ElementRef, OnChanges, OnDestroy, OnInit, QueryList, EventEmitter, SimpleChanges } from '@angular/core'; import { Subject } from 'rxjs'; import { Direction, Message } from '../../core/message'; import { Recipient } from '../../core/recipient'; import { BlockPlugin } from '../../services/adapters/xmpp/plugins/block.plugin'; import { RoomMessage } from '../../services/adapters/xmpp/plugins/multi-user-chat.plugin'; import { ChatListStateService } from '../../services/chat-list-state.service'; import { ChatMessageListRegistryService } from '../../services/chat-message-list-registry.service'; import { ChatService } from '../../services/chat-service'; import { ContactFactoryService } from '../../services/contact-factory.service'; import { ReportUserService } from '../../services/report-user-service'; import { ChatMessageComponent } from '../chat-message/chat-message.component'; declare enum SubscriptionAction { PENDING_REQUEST = 0, SHOW_BLOCK_ACTIONS = 1, NO_PENDING_REQUEST = 2 } export declare class ChatMessageListComponent implements OnInit, OnDestroy, OnChanges, AfterViewInit { chatListService: ChatListStateService; chatService: ChatService; private chatMessageListRegistry; reportUserService: ReportUserService; private changeDetectorRef; private contactFactory; Reply: EventEmitter<void>; recipient: Recipient; showAvatars: boolean; chatMessageAreaElement: ElementRef<HTMLElement>; chatMessageViewChildrenList: QueryList<ChatMessageComponent>; Direction: typeof Direction; SubscriptionAction: typeof SubscriptionAction; blockPlugin: BlockPlugin; subscriptionAction: SubscriptionAction; onTop$: Subject<IntersectionObserverEntry>; private ngDestroy; private isAtBottom; private bottomLeftAt; private oldestVisibleMessageBeforeLoading; constructor(chatListService: ChatListStateService, chatService: ChatService, chatMessageListRegistry: ChatMessageListRegistryService, reportUserService: ReportUserService, changeDetectorRef: ChangeDetectorRef, contactFactory: ContactFactoryService); ngOnInit(): Promise<void>; ngAfterViewInit(): Promise<void>; ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; acceptSubscriptionRequest(event: Event): void; denySubscriptionRequest(event: Event): void; scheduleScrollToLastMessage(): void; private scrollToLastMessage; private scrollToMessage; blockContact($event: MouseEvent): void; blockContactAndReport($event: MouseEvent): void; dismissBlockOptions($event: MouseEvent): void; subscriptionActionShown(): boolean; loadOlderMessagesBeforeViewport(): Promise<void>; private loadMessages; onBottom(event: IntersectionObserverEntry): void; private isNearBottom; private isLoadingHistory; getOrCreateContactWithFullJid(message: Message | RoomMessage): Recipient; sendReply(event: any): void; } export {};