@vrspace/babylonjs
Version:
vrspace.org babylonjs client
66 lines (65 loc) • 2.16 kB
TypeScript
export class ChatUI {
constructor(scene: any);
scene: any;
hud: import("./hud.js").HUD;
contentBase: string;
/** @type {VRSpaceAPI} */
api: VRSpaceAPI;
/** @type {GroupsApi} */
groupApi: GroupsApi;
/** @type {CreateGroupForm} */
createGroupForm: CreateGroupForm;
/** @type {FormArea} */
listGroupsForm: FormArea;
/** @type {UserInviteForm} */
inviteForm: UserInviteForm;
listGroupsButton: any;
createGroupsButton: any;
groupsInvitesButton: any;
activeButton: any;
invitations: any[];
listGroupsText: string;
createGroupText: string;
listDirectText: string;
createDirectText: string;
unreadGroupsTotal: number;
unreadChatsTotal: number;
dispose(): void;
/**
* Called from outside
* @param {*} button HUD button that activates this call
*/
show(button: any): Promise<void>;
createChatButton: any;
groupEventListener: any;
showChatsButton(): Promise<void>;
listChatsButton: any;
showListButton(): Promise<void>;
listGroups(): void;
groupCount(invites: any, memberships: any, direct?: boolean): any;
updateButtons(invites: any, memberships: any): Promise<void>;
showInvitesButton(): void;
hide(): void;
clearForm(): void;
createForm(invites: any, groups: any, refresh: any): void;
/** List invites */
listInvitesUI(): void;
/**
* List groups
* @param {boolean} [direct=false] true for direct messages (private chats)
*/
listGroupsUI(direct?: boolean, button?: any): void;
groupDelete(group: any): void;
refreshList(refresh: any): void;
createGroupUI(): void;
/**
* Invite a user to a private chat: pop up UserInviteForm to select/enter the user,
* then create a private group, and send the invite.
*/
addContactUI(): void;
}
import { VRSpaceAPI } from '../client/rest-api.js';
import { GroupsApi } from '../client/openapi/api/GroupsApi.js';
import { CreateGroupForm } from './groups/create-groups-form.js';
import { FormArea } from './widget/form-area.js';
import { UserInviteForm } from './widget/user-invite-form.js';