@progress/kendo-angular-conversational-ui
Version:
Kendo UI for Angular Conversational UI components
86 lines (85 loc) • 5.49 kB
TypeScript
/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, OnInit, QueryList, Renderer2 } from '@angular/core';
import { Action, ExecuteActionEvent, Message } from './api';
import { IntlService } from '@progress/kendo-angular-intl';
import { LocalizationService } from '@progress/kendo-angular-l10n';
import { ChatItem } from './chat-item';
import { ViewItem } from './chat-view';
import { AttachmentTemplateDirective } from './templates/attachment-template.directive';
import { MessageContentTemplateDirective } from './templates/message-content-template.directive';
import { ChatTimestampTemplateDirective } from './templates/timestamp-template.directive';
import { ChatService } from './common/chat.service';
import { ChatStatusTemplateDirective } from './templates/status-template.directive';
import { ChatUserStatusTemplateDirective } from './templates/user-status-template.directive';
import { MessageTemplateDirective } from './templates/message-template.directive';
import { AuthorMessageContentTemplateDirective } from './templates/author-message-content-template.directive';
import { ReceiverMessageContentTemplateDirective } from './templates/receiver-message-content-template.directive';
import { AuthorMessageTemplateDirective } from './templates/author-message-template.directive';
import { ReceiverMessageTemplateDirective } from './templates/receiver-message-template.directive';
import * as i0 from "@angular/core";
/**
* @hidden
*/
export declare class MessageListComponent implements OnInit, AfterViewInit, OnDestroy {
private element;
private intl;
private renderer;
chatService: ChatService;
private cdr;
set messages(value: Message[]);
get messages(): Message[];
attachmentTemplate: AttachmentTemplateDirective;
authorMessageContentTemplate: AuthorMessageContentTemplateDirective;
receiverMessageContentTemplate: ReceiverMessageContentTemplateDirective;
messageContentTemplate: MessageContentTemplateDirective;
authorMessageTemplate: AuthorMessageTemplateDirective;
receiverMessageTemplate: ReceiverMessageTemplateDirective;
messageTemplate: MessageTemplateDirective;
timestampTemplate: ChatTimestampTemplateDirective;
statusTemplate: ChatStatusTemplateDirective;
userStatusTemplate: ChatUserStatusTemplateDirective;
localization: LocalizationService;
authorId: string | number;
executeAction: EventEmitter<ExecuteActionEvent>;
navigate: EventEmitter<any>;
resize: EventEmitter<any>;
items: QueryList<ChatItem>;
cssClass: boolean;
view: ViewItem[] | any[];
private _messages;
private subs;
private selectedItem;
private keyActions;
constructor(element: ElementRef, intl: IntlService, renderer: Renderer2, chatService: ChatService, cdr: ChangeDetectorRef);
ngOnInit(): void;
ngAfterViewInit(): void;
ngOnDestroy(): void;
onResize(): void;
onClick(message: any, event: any): void;
onContextMenuClick(message: Message, event: MouseEvent, messageElement?: any): void;
formatTimeStamp(date: any): string;
calculateMessageWidthMode(message: any): boolean;
onKeydown(e: any): void;
onBlur(args: any): void;
isOwnMessage(msg: Message): boolean;
showGroupAuthor(group: any): boolean;
showGroupAvatar(group: any): boolean;
dispatchAction(action: Action, message: Message): void;
trackGroup(_index: number, item: ViewItem): any;
select(item: ChatItem, event?: Event): void;
last(items: any): any;
handleMenuClose(state: boolean): void;
textFor(key: string): string;
private onHomeOrEndKeyDown;
private onTabKeyDown;
private navigateTo;
private scrollToAndSelectMessage;
private openContextMenu;
private findMessageComponentFromActiveElement;
private findMessageComponentFromEvent;
static ɵfac: i0.ɵɵFactoryDeclaration<MessageListComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<MessageListComponent, "kendo-chat-message-list", never, { "messages": { "alias": "messages"; "required": false; }; "attachmentTemplate": { "alias": "attachmentTemplate"; "required": false; }; "authorMessageContentTemplate": { "alias": "authorMessageContentTemplate"; "required": false; }; "receiverMessageContentTemplate": { "alias": "receiverMessageContentTemplate"; "required": false; }; "messageContentTemplate": { "alias": "messageContentTemplate"; "required": false; }; "authorMessageTemplate": { "alias": "authorMessageTemplate"; "required": false; }; "receiverMessageTemplate": { "alias": "receiverMessageTemplate"; "required": false; }; "messageTemplate": { "alias": "messageTemplate"; "required": false; }; "timestampTemplate": { "alias": "timestampTemplate"; "required": false; }; "statusTemplate": { "alias": "statusTemplate"; "required": false; }; "userStatusTemplate": { "alias": "userStatusTemplate"; "required": false; }; "localization": { "alias": "localization"; "required": false; }; "authorId": { "alias": "authorId"; "required": false; }; }, { "executeAction": "executeAction"; "navigate": "navigate"; "resize": "resize"; }, never, never, true, never>;
}