@progress/kendo-angular-conversational-ui
Version:
Kendo UI for Angular Conversational UI components
67 lines (66 loc) • 3.6 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 { MessageTemplateDirective } from './templates/message-template.directive';
import { ChatTimestampTemplateDirective } from './templates/timestamp-template.directive';
import { ChatService } from './common/chat.service';
import { ChatStatusTemplateDirective } from './templates/status-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;
messageTemplate: MessageTemplateDirective;
timestampTemplate: ChatTimestampTemplateDirective;
statusTemplate: ChatStatusTemplateDirective;
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;
formatTimeStamp(date: any): string;
onKeydown(e: any): void;
onBlur(args: any): void;
isOwnMessage(msg: Message): 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;
private onHomeOrEndKeyDown;
private onTabKeyDown;
private navigateTo;
private scrollToAndSelectMessage;
textFor(key: string): string;
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; }; "messageTemplate": { "alias": "messageTemplate"; "required": false; }; "timestampTemplate": { "alias": "timestampTemplate"; "required": false; }; "statusTemplate": { "alias": "statusTemplate"; "required": false; }; "localization": { "alias": "localization"; "required": false; }; "authorId": { "alias": "authorId"; "required": false; }; }, { "executeAction": "executeAction"; "navigate": "navigate"; "resize": "resize"; }, never, never, true, never>;
}