UNPKG

@cometchat/chat-uikit-react

Version:

Ready-to-use Chat UI Components for React

223 lines (219 loc) 9.86 kB
'use strict'; var chatSdkJavascript = require('@cometchat/chat-sdk-javascript'); require('./index.css'); var CometChatUIKitConstants = class { }; CometChatUIKitConstants.MessageCategory = Object.freeze({ message: chatSdkJavascript.CometChat.CATEGORY_MESSAGE, custom: chatSdkJavascript.CometChat.CATEGORY_CUSTOM, action: chatSdkJavascript.CometChat.CATEGORY_ACTION, call: chatSdkJavascript.CometChat.CATEGORY_CALL, interactive: chatSdkJavascript.CometChat.CATEGORY_INTERACTIVE, agentic: chatSdkJavascript.CometChat.MessageCategory.AGENTIC, // Developer "card" messages. Distinct from the legacy interactive `MessageTypes.card` // (which lives under `category: interactive`). Developer cards use their own category. card: chatSdkJavascript.CometChat.MessageCategory.CARD }); CometChatUIKitConstants.moderationStatus = Object.freeze({ pending: chatSdkJavascript.CometChat.ModerationStatus.PENDING, approved: chatSdkJavascript.CometChat.ModerationStatus.APPROVED, disapproved: chatSdkJavascript.CometChat.ModerationStatus.DISAPPROVED, unmoderated: chatSdkJavascript.CometChat.ModerationStatus.UNMODERATED }); CometChatUIKitConstants.MessageTypes = Object.freeze({ text: chatSdkJavascript.CometChat.MESSAGE_TYPE.TEXT, file: chatSdkJavascript.CometChat.MESSAGE_TYPE.FILE, image: chatSdkJavascript.CometChat.MESSAGE_TYPE.IMAGE, audio: chatSdkJavascript.CometChat.MESSAGE_TYPE.AUDIO, video: chatSdkJavascript.CometChat.MESSAGE_TYPE.VIDEO, delete: "delete", edited: "edited", groupMember: "groupMember", form: "form", card: "card", customInteractive: "customInteractive", scheduler: "scheduler", assistant: chatSdkJavascript.CometChat.MESSAGE_TYPE.ASSISTANT, toolArguments: chatSdkJavascript.CometChat.MESSAGE_TYPE.TOOL_ARGUMENTS, toolResults: chatSdkJavascript.CometChat.MESSAGE_TYPE.TOOL_RESULT }); CometChatUIKitConstants.groupMemberAction = Object.freeze({ ROLE: "role", BLOCK: "block", REMOVE: "remove", JOINED: chatSdkJavascript.CometChat.ACTION_TYPE.MEMBER_JOINED, LEFT: chatSdkJavascript.CometChat.ACTION_TYPE.MEMBER_LEFT, ADDED: chatSdkJavascript.CometChat.ACTION_TYPE.MEMBER_ADDED, BANNED: chatSdkJavascript.CometChat.ACTION_TYPE.MEMBER_BANNED, UNBANNED: chatSdkJavascript.CometChat.ACTION_TYPE.MEMBER_UNBANNED, KICKED: chatSdkJavascript.CometChat.ACTION_TYPE.MEMBER_KICKED, INVITED: chatSdkJavascript.CometChat.ACTION_TYPE.MEMBER_INVITED, SCOPE_CHANGE: chatSdkJavascript.CometChat.ACTION_TYPE.MEMBER_SCOPE_CHANGED }); CometChatUIKitConstants.MessageReceiverType = Object.freeze({ user: chatSdkJavascript.CometChat.RECEIVER_TYPE.USER, group: chatSdkJavascript.CometChat.RECEIVER_TYPE.GROUP }); CometChatUIKitConstants.userStatusType = Object.freeze({ online: chatSdkJavascript.CometChat.USER_STATUS.ONLINE, offline: chatSdkJavascript.CometChat.USER_STATUS.OFFLINE }); CometChatUIKitConstants.MessageOption = Object.freeze({ editMessage: "edit", deleteMessage: "delete", replyMessage: "reply", replyInThread: "replyInThread", translateMessage: "translate", reactToMessage: "react", messageInformation: "messageInformation", markAsUnread: "markAsUnread", flagMessage: "flagMessage", copyMessage: "copy", shareMessage: "share", forwardMessage: "forward", sendMessagePrivately: "sendMessagePrivately", replyMessagePrivately: "replyMessagePrivately" }); CometChatUIKitConstants.GroupOptions = Object.freeze({ leave: "leave", delete: "delete", viewMembers: "viewMembers", addMembers: "addMembers", bannedMembers: "bannedMembers" }); CometChatUIKitConstants.GroupMemberOptions = Object.freeze({ kick: "kick", ban: "ban", unban: "unban", changeScope: "changeScope" }); CometChatUIKitConstants.groupMemberScope = Object.freeze({ owner: "owner", admin: chatSdkJavascript.CometChat.GROUP_MEMBER_SCOPE.ADMIN, participant: chatSdkJavascript.CometChat.GROUP_MEMBER_SCOPE.PARTICIPANT, moderator: chatSdkJavascript.CometChat.GROUP_MEMBER_SCOPE.MODERATOR }); CometChatUIKitConstants.UserOptions = Object.freeze({ block: "block", unblock: "unblock", viewProfile: "viewProfile" }); CometChatUIKitConstants.ConversationOptions = Object.freeze({ delete: "delete" }); CometChatUIKitConstants.GroupTypes = Object.freeze({ private: chatSdkJavascript.CometChat.GROUP_TYPE.PRIVATE, password: chatSdkJavascript.CometChat.GROUP_TYPE.PASSWORD, public: chatSdkJavascript.CometChat.GROUP_TYPE.PUBLIC }); CometChatUIKitConstants.liveReaction = Object.freeze({ timeout: 1500 }); CometChatUIKitConstants.messages = Object.freeze({ MESSAGE_DELIVERED: "onMessagesDelivered", MESSAGE_READ: "onMessagesRead", MESSAGE_DELETED: "onMessageDeleted", MESSAGE_EDITED: "onMessageEdited", MESSAGE_SENT: "messageSent", TEXT_MESSAGE_RECEIVED: "onTextMessageReceived", MEDIA_MESSAGE_RECEIVED: "onMediaMessageReceived", CUSTOM_MESSAGE_RECEIVED: "onCustomMessageReceived", TRANSIENT_MESSAGE_RECEIVED: "onTransientMessageReceived", INTERACTIVE_MESSAGE_RECEIVED: "onInteractiveMessageReceived", DELIVERY: "delivery", READ: "read", APP_SYSTEM: "app_system", MESSAGE_REACTION_ADDED: "onMessageReactionAdded", MESSAGE_REACTION_REMOVED: "onMessageReactionRemoved" }); CometChatUIKitConstants.details = Object.freeze({ primary: "primary", secondary: "secondary" }); CometChatUIKitConstants.calls = Object.freeze({ meeting: "meeting", ongoing: chatSdkJavascript.CometChat.CALL_STATUS.ONGOING, ended: chatSdkJavascript.CometChat.CALL_STATUS.ENDED, initiated: chatSdkJavascript.CometChat.CALL_STATUS.INITIATED, cancelled: chatSdkJavascript.CometChat.CALL_STATUS.CANCELLED, rejected: chatSdkJavascript.CometChat.CALL_STATUS.REJECTED, unanswered: chatSdkJavascript.CometChat.CALL_STATUS.UNANSWERED, busy: chatSdkJavascript.CometChat.CALL_STATUS.BUSY, activecall: "cometchat:activecall", default: chatSdkJavascript.CometChat.CALL_MODE.DEFAULT, grid: chatSdkJavascript.CometChat.CALL_MODE.GRID, single: chatSdkJavascript.CometChat.CALL_MODE.SINGLE, spotlight: chatSdkJavascript.CometChat.CALL_MODE.SPOTLIGHT, tile: chatSdkJavascript.CometChat.CALL_MODE.TILE }); CometChatUIKitConstants.goalType = Object.freeze({ allOf: chatSdkJavascript.CometChat.GoalType.ALL_OF, anyOf: chatSdkJavascript.CometChat.GoalType.ANY_OF, anyAction: chatSdkJavascript.CometChat.GoalType.ANY_ACTION, none: chatSdkJavascript.CometChat.GoalType.NONE }); CometChatUIKitConstants.requestBuilderLimits = Object.freeze({ reactionListLimit: 10, reactionInfoLimit: 10, messageListLimit: 30, usersLimit: 30, groupsLimit: 30 }); CometChatUIKitConstants.radioNames = Object.freeze({ conversations: "conversations", users: "users", groups: "groups", changeScope: "changeScope", groupMembers: "groupMembers" }); CometChatUIKitConstants.mimeTypes = Object.freeze({ audio: "audio/*, .aac, .aif, .aiff, .caf, .mp3, .mp4, .wav, .m4a, .wma, .flac, .alac, .oga, .ra, .ram, .mid, .midi, .mka, .opus, .ac3, .amr, .ape, .dts, .wv, .tta, .pcm, .snd, .au, .cda, .vox, .m4b, .m3u, .pls, .ogg", video: "video/*, .mov, .mp4, .m4v, .avi, .mpg, .mpeg, .m2ts, .mts, .3gp, .3g2, .flv, .wmv, .vob, .ts, .webm, .f4v, .f4a, .f4b, .swf, .rm, .rmvb, .divx, .xvid, .mxf, .asf, .amv, .smv, .avchd, .qt", image: "image/*, .heic, .heif, .jpg, .jpeg, .png, .gif, .bmp, .tiff, .tif, .psd, .svg, .ico, .raw, .dng, .eps, .webp, .jfif, .jp2, .jpf, .jpx, .jpm, .mj2, .hdr, .exr, .pbm, .pgm, .ppm, .pnm, .tga, .dds, .svgz, .djvu, .ai, .cdr" }); CometChatUIKitConstants.streamMessageTypes = Object.freeze({ run_started: chatSdkJavascript.CometChat.AI_ASSISTANT_EVENTS.RUN_STARTED, text_message_start: chatSdkJavascript.CometChat.AI_ASSISTANT_EVENTS.TEXT_MESSAGE_START, text_message_content: chatSdkJavascript.CometChat.AI_ASSISTANT_EVENTS.TEXT_MESSAGE_CONTENT, text_message_end: chatSdkJavascript.CometChat.AI_ASSISTANT_EVENTS.TEXT_MESSAGE_END, run_finished: chatSdkJavascript.CometChat.AI_ASSISTANT_EVENTS.RUN_FINISHED, tool_call_start: chatSdkJavascript.CometChat.AI_ASSISTANT_EVENTS.TOOL_CALL_STARTED, tool_call_end: chatSdkJavascript.CometChat.AI_ASSISTANT_EVENTS.TOOL_CALL_ENDED, tool_call_args: chatSdkJavascript.CometChat.AI_ASSISTANT_EVENTS.TOOL_CALL_ARGUMENT, tool_call_result: chatSdkJavascript.CometChat.AI_ASSISTANT_EVENTS.TOOL_CALL_RESULT, // Streamed card lifecycle (agent cards): start → loader, card → render, end → no-op. card_start: chatSdkJavascript.CometChat.AI_ASSISTANT_EVENTS.CARD_START, card: chatSdkJavascript.CometChat.AI_ASSISTANT_EVENTS.CARD, card_end: chatSdkJavascript.CometChat.AI_ASSISTANT_EVENTS.CARD_END }); /** * UIKit-owned message metadata keys for the multi-attachments feature. * `batchId` is the render-time grouping key shared across all messages produced * by one send; `audioType` disambiguates an attached audio file from a recorded * voice note. */ CometChatUIKitConstants.MetadataKeys = Object.freeze({ batchId: "batchId", audioType: "audioType" }); /** * Values for the `audioType` metadata key. A recorded voice note is explicitly * tagged `voice_note`. Any audio message WITHOUT this tag (attached audio files, * and legacy/plain audio) renders as a normal audio bubble — absence never means * voice note. */ CometChatUIKitConstants.AudioType = Object.freeze({ voiceNote: "voice_note" }); /** * Media upload error codes surfaced by the SDK at runtime. These codes are not * present in the SDK typings, so the UIKit references them through this typed * constant and checks `error?.code === MediaUploadErrorCodes.FILE_COUNT_EXCEEDED`. */ CometChatUIKitConstants.MediaUploadErrorCodes = Object.freeze({ FILE_COUNT_EXCEEDED: "ERR_FILE_COUNT_EXCEEDED", FILE_SIZE_EXCEEDED: "ERR_FILE_SIZE_EXCEEDED", PERMISSION_DENIED: "ERR_PERMISSION_DENIED", BAD_REQUEST: "ERR_BAD_REQUEST" }); exports.CometChatUIKitConstants = CometChatUIKitConstants;