quickblox-react-ui-kit 0.1.8 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/dist/Data/DefaultConfigurations.d.ts +11 -0
  2. package/dist/Data/Stubs.d.ts +1 -1
  3. package/dist/Data/source/AISource.d.ts +13 -0
  4. package/dist/Domain/entity/MessageEntity.d.ts +1 -1
  5. package/dist/Presentation/Views/Base/BaseViewModel.d.ts +10 -5
  6. package/dist/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/AIMessageWidget.d.ts +16 -0
  7. package/dist/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/AIWidgetActions/AIWidgetActions.d.ts +14 -0
  8. package/dist/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/ErrorMessageIcon.d.ts +11 -0
  9. package/dist/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/SliderMenu.d.ts +23 -0
  10. package/dist/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/Tone.d.ts +15 -0
  11. package/dist/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIAssistAnswerWidget.d.ts +10 -0
  12. package/dist/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIRephraseMessageWidget.d.ts +10 -0
  13. package/dist/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/UseDefaultAITranslateWidget.d.ts +10 -0
  14. package/dist/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/useDefaultVoiceInputWidget.d.ts +2 -0
  15. package/dist/Presentation/components/UI/Dialogs/MessagesView/ContextMenu.d.ts +11 -0
  16. package/dist/Presentation/components/UI/Dialogs/MessagesView/DropDownMenu/DropDownMenu.d.ts +26 -0
  17. package/dist/Presentation/components/UI/Dialogs/MessagesView/DropDownMenu/ItemDropDownMenu/ItemDropDownMenu.d.ts +11 -0
  18. package/dist/Presentation/components/UI/Dialogs/MessagesView/InComingMessage/AvatarContentIncomingUser/AvatarContentIncomingUser.d.ts +3 -0
  19. package/dist/Presentation/components/UI/Dialogs/MessagesView/InComingMessage/InComingMessage.d.ts +15 -0
  20. package/dist/Presentation/components/UI/Dialogs/MessagesView/MessagesView.d.ts +5 -1
  21. package/dist/Presentation/components/UI/Dialogs/MessagesView/OutGoingMessage/OutGoingMessage.d.ts +9 -0
  22. package/dist/Presentation/components/UI/svgs/Icons/AIWidgets/BookIcon/BookIcon.d.ts +3 -0
  23. package/dist/Presentation/components/UI/svgs/Icons/AIWidgets/HammerIcon/index.d.ts +3 -0
  24. package/dist/Presentation/components/UI/svgs/Icons/AIWidgets/HandshakeIcon/index.d.ts +3 -0
  25. package/dist/Presentation/components/UI/svgs/Icons/AIWidgets/MuscleIcon/index.d.ts +3 -0
  26. package/dist/Presentation/components/UI/svgs/Icons/AIWidgets/NecktieIcon/index.d.ts +3 -0
  27. package/dist/Presentation/components/UI/svgs/Icons/AIWidgets/NeutralFaceIcon/index.d.ts +3 -0
  28. package/dist/Presentation/components/UI/svgs/Icons/AIWidgets/PalmsUpTogetherIcon/index.d.ts +3 -0
  29. package/dist/Presentation/components/UI/svgs/Icons/AIWidgets/PerformingArtsIcon/index.d.ts +3 -0
  30. package/dist/Presentation/components/UI/svgs/Icons/AIWidgets/PointUpIcon/index.d.ts +3 -0
  31. package/dist/Presentation/components/UI/svgs/Icons/AIWidgets/SmileyIcon/index.d.ts +3 -0
  32. package/dist/Presentation/components/UI/svgs/Icons/AIWidgets/SmirkIcon/index.d.ts +3 -0
  33. package/dist/Presentation/components/UI/svgs/Icons/AIWidgets/WhiteCheckMarkIcon/index.d.ts +3 -0
  34. package/dist/Presentation/components/UI/svgs/Icons/Actions/AssistAnswer/index.d.ts +4 -0
  35. package/dist/Presentation/components/UI/svgs/Icons/Actions/Summarize/index.d.ts +4 -0
  36. package/dist/Presentation/components/UI/svgs/Icons/Actions/Tone/index.d.ts +4 -0
  37. package/dist/Presentation/components/UI/svgs/Icons/Media/Translate/index.d.ts +4 -0
  38. package/dist/Presentation/components/layouts/Desktop/QuickBloxUIKitDesktopLayout.d.ts +9 -0
  39. package/dist/QBconfig.d.ts +22 -0
  40. package/dist/index-ui.d.ts +5 -1
  41. package/dist/index-ui.js +388 -25
  42. package/dist/utils/utils.d.ts +3 -0
  43. package/package.json +1 -1
  44. package/src/App.tsx +12 -18
  45. package/src/Data/DefaultConfigurations.ts +128 -0
  46. package/src/Data/Stubs.ts +15 -15
  47. package/src/Data/mapper/MessageLocalDTOMapper.ts +3 -2
  48. package/src/Data/mapper/MessageRemoteDTOMapper.ts +3 -2
  49. package/src/Data/source/AISource.ts +133 -0
  50. package/src/Data/source/remote/Mapper/MessageDTOMapper.ts +1 -1
  51. package/src/Domain/entity/MessageEntity.ts +1 -1
  52. package/src/Presentation/Views/Base/BaseViewModel.ts +20 -7
  53. package/src/Presentation/Views/Dialogs/Dialogs.tsx +37 -22
  54. package/src/Presentation/components/UI/Dialogs/HeaderDialogs/HeaderDialogs.scss +2 -2
  55. package/src/Presentation/components/UI/Dialogs/HeaderDialogs/HeaderDialogs.tsx +5 -5
  56. package/src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/AIMessageWidget.ts +24 -0
  57. package/src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/AIWidgetActions/AIWidgetActions.scss +55 -0
  58. package/src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/AIWidgetActions/AIWidgetActions.tsx +116 -0
  59. package/src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/ErrorMessageIcon.tsx +98 -0
  60. package/src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/SliderMenu.tsx +172 -0
  61. package/src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/Tone.ts +21 -0
  62. package/src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIAssistAnswerWidget.tsx +99 -0
  63. package/src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIRephraseMessageWidget.tsx +105 -0
  64. package/src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/UseDefaultAITranslateWidget.tsx +106 -0
  65. package/src/Presentation/components/UI/Dialogs/MessagesView/{InputWidget → AIWidgets}/useDefaultVoiceInputWidget.tsx +8 -7
  66. package/src/Presentation/components/UI/Dialogs/MessagesView/ContextMenu.tsx +95 -0
  67. package/src/Presentation/components/UI/Dialogs/MessagesView/DropDownMenu/DropDownMenu.scss +84 -0
  68. package/src/Presentation/components/UI/Dialogs/MessagesView/DropDownMenu/DropDownMenu.tsx +105 -0
  69. package/src/Presentation/components/UI/Dialogs/MessagesView/DropDownMenu/ItemDropDownMenu/ItemDropDownMenu.scss +50 -0
  70. package/src/Presentation/components/UI/Dialogs/MessagesView/DropDownMenu/ItemDropDownMenu/ItemDropDownMenu.tsx +43 -0
  71. package/src/Presentation/components/UI/Dialogs/MessagesView/HeaderMessages/HeaderMessages.tsx +14 -11
  72. package/src/Presentation/components/UI/Dialogs/MessagesView/InComingMessage/AvatarContentIncomingUser/AvatarContentIncomingUser.scss +39 -0
  73. package/src/Presentation/components/UI/Dialogs/MessagesView/InComingMessage/AvatarContentIncomingUser/AvatarContentIncomingUser.tsx +26 -0
  74. package/src/Presentation/components/UI/Dialogs/MessagesView/InComingMessage/InComingMessage.scss +394 -0
  75. package/src/Presentation/components/UI/Dialogs/MessagesView/InComingMessage/InComingMessage.tsx +747 -0
  76. package/src/Presentation/components/UI/Dialogs/MessagesView/MessagesView.scss +88 -4
  77. package/src/Presentation/components/UI/Dialogs/MessagesView/MessagesView.tsx +625 -227
  78. package/src/Presentation/components/UI/Dialogs/MessagesView/OutGoingMessage/OutGoingMessage.scss +7 -0
  79. package/src/Presentation/components/UI/Dialogs/MessagesView/OutGoingMessage/OutGoingMessage.tsx +99 -0
  80. package/src/Presentation/components/UI/Dialogs/MessagesView/useMessagesViewModel.ts +2 -2
  81. package/src/Presentation/components/UI/svgs/Icons/AIWidgets/BookIcon/BookIcon.tsx +7 -0
  82. package/src/Presentation/components/UI/svgs/Icons/AIWidgets/HammerIcon/index.tsx +7 -0
  83. package/src/Presentation/components/UI/svgs/Icons/AIWidgets/HandshakeIcon/index.tsx +7 -0
  84. package/src/Presentation/components/UI/svgs/Icons/AIWidgets/MuscleIcon/index.tsx +7 -0
  85. package/src/Presentation/components/UI/svgs/Icons/AIWidgets/NecktieIcon/index.tsx +7 -0
  86. package/src/Presentation/components/UI/svgs/Icons/AIWidgets/NeutralFaceIcon/index.tsx +7 -0
  87. package/src/Presentation/components/UI/svgs/Icons/AIWidgets/PalmsUpTogetherIcon/index.tsx +7 -0
  88. package/src/Presentation/components/UI/svgs/Icons/AIWidgets/PerformingArtsIcon/index.tsx +7 -0
  89. package/src/Presentation/components/UI/svgs/Icons/AIWidgets/PointUpIcon/index.tsx +7 -0
  90. package/src/Presentation/components/UI/svgs/Icons/AIWidgets/SmileyIcon/index.tsx +20 -0
  91. package/src/Presentation/components/UI/svgs/Icons/AIWidgets/SmirkIcon/index.tsx +7 -0
  92. package/src/Presentation/components/UI/svgs/Icons/AIWidgets/WhiteCheckMarkIcon/index.tsx +7 -0
  93. package/src/Presentation/components/UI/svgs/Icons/Actions/AssistAnswer/AssistAnswer.svg +3 -0
  94. package/src/Presentation/components/UI/svgs/Icons/Actions/AssistAnswer/index.tsx +93 -0
  95. package/src/Presentation/components/UI/svgs/Icons/Actions/Summarize/Summarize.svg +6 -0
  96. package/src/Presentation/components/UI/svgs/Icons/Actions/Summarize/index.tsx +58 -0
  97. package/src/Presentation/components/UI/svgs/Icons/Actions/Tone/Tone.svg +3 -0
  98. package/src/Presentation/components/UI/svgs/Icons/Actions/Tone/index.tsx +34 -0
  99. package/src/Presentation/components/UI/svgs/Icons/Media/Translate/Translate.svg +3 -0
  100. package/src/Presentation/components/UI/svgs/Icons/Media/Translate/index.tsx +35 -0
  101. package/src/Presentation/components/layouts/Desktop/QuickBloxUIKitDesktopLayout.tsx +150 -37
  102. package/src/QBconfig.ts +31 -3
  103. package/src/index-ui.ts +9 -0
  104. package/src/utils/utils.ts +39 -0
  105. package/dist/Presentation/components/UI/Dialogs/MessagesView/InputWidget/InputWidget.d.ts +0 -8
  106. package/dist/Presentation/components/UI/Dialogs/MessagesView/InputWidget/UseDefaultTextInputWidget.d.ts +0 -2
  107. package/dist/Presentation/components/UI/Dialogs/MessagesView/InputWidget/useDefaultVoiceInputWidget.d.ts +0 -2
  108. package/src/Presentation/components/UI/Dialogs/MessagesView/InputWidget/InputWidget.ts +0 -15
  109. package/src/Presentation/components/UI/Dialogs/MessagesView/InputWidget/UseDefaultTextInputWidget.tsx +0 -60
  110. /package/dist/Presentation/components/UI/svgs/Icons/{Media → AIWidgets}/AIWidget/index.d.ts +0 -0
  111. /package/src/Presentation/components/UI/svgs/Icons/{Media → AIWidgets}/AIWidget/Send.svg +0 -0
  112. /package/src/Presentation/components/UI/svgs/Icons/{Media → AIWidgets}/AIWidget/index.tsx +0 -0
@@ -0,0 +1,11 @@
1
+ export type ProxyConfig = {
2
+ api: string;
3
+ servername: string;
4
+ port: string;
5
+ sessionToken: string;
6
+ };
7
+ export declare class DefaultConfigurations {
8
+ static getDefaultProxyConfig(): ProxyConfig;
9
+ static getDefaultLanguageForAITranslate(): string;
10
+ static getAdditionalLanguagesForAITranslate(): string[];
11
+ }
@@ -21,7 +21,7 @@ export declare class Stubs {
21
21
  static createGroupDialogQBWithEmptyValues(): QBChatDialog;
22
22
  static createDialogEntityWithParams(dialogType: DialogType, id: string, name: string, dateSentLastMessage: string, textLastMessage: string, userIdLastMessage: number, ownerId: string, unreadMessageCount: number, updatedAt: string, participantId: number, photo?: string, participantIds?: number[]): DialogEntity;
23
23
  static createUserEntityWithParams(id: number, full_name: string, email: string, login: string, created_at: string, updated_at: string, last_request_at: string, custom_data?: string | null, user_tags?: string | null, blob_id?: string): UserEntity;
24
- static createMessageEntityWithParams(id: number, dialogId: string, message: string, created_at: string, date_sent: number, updated_at: string, delivered_ids: Array<number>, read_ids: Array<number>, read: number, sender_id: number, recipient_id: number, attachments?: ChatMessageAttachmentEntity[], notification_type?: string, dialog_type?: DialogType): MessageEntity;
24
+ static createMessageEntityWithParams(id: string, dialogId: string, message: string, created_at: string, date_sent: number, updated_at: string, delivered_ids: Array<number>, read_ids: Array<number>, read: number, sender_id: number, recipient_id: number, attachments?: ChatMessageAttachmentEntity[], notification_type?: string, dialog_type?: DialogType): MessageEntity;
25
25
  static createDialogsForTest(): Array<DialogEntity>;
26
26
  static createUsersForTest(): Array<UserEntity>;
27
27
  static createMessagesForTest(): Array<MessageEntity>;
@@ -0,0 +1,13 @@
1
+ export interface IChatMessage {
2
+ role: string;
3
+ content: string;
4
+ }
5
+ export type AIParam = {
6
+ textToAI: string;
7
+ context: IChatMessage[];
8
+ };
9
+ export declare class AISource {
10
+ static getData(prompt: string, dialogMessages: IChatMessage[], servername: string, api: string, port: string, sessionToken: string, openAIModel?: string): Promise<string>;
11
+ static getDataWithOpenAI(prompt: string, dialogMessages: IChatMessage[], servername: string, api: string, port: string, sessionToken: string, openAIModel?: string): Promise<string>;
12
+ static getDataWithProxyServer(prompt: string, dialogMessages: IChatMessage[], servername: string, api: string, port: string, sessionToken: string, openAIModel?: string): Promise<string>;
13
+ }
@@ -2,7 +2,7 @@ import ChatMessageAttachmentEntity from './ChatMessageAttachmentEntity';
2
2
  import { UserEntity } from './UserEntity';
3
3
  import { DialogType } from './DialogTypes';
4
4
  export interface MessageEntity {
5
- id: number;
5
+ id: string;
6
6
  dialogId: string;
7
7
  dialogType?: DialogType;
8
8
  attachments?: ChatMessageAttachmentEntity[];
@@ -3,6 +3,7 @@ import { Pagination } from '../../../Domain/repository/Pagination';
3
3
  import { GroupDialogEntity } from '../../../Domain/entity/GroupDialogEntity';
4
4
  import { DialogEntity } from '../../../Domain/entity/DialogEntity';
5
5
  import { FileEntity } from '../../../Domain/entity/FileEntity';
6
+ import { IChatMessage } from '../../../Data/source/AISource';
6
7
  export default class BaseViewModel<TResult> {
7
8
  get entity(): TResult;
8
9
  set entity(value: TResult);
@@ -14,10 +15,6 @@ export type EditDialogParams = {
14
15
  dialogTitle: string;
15
16
  dialogAvatar: File | string | null;
16
17
  };
17
- export interface IChatMessage {
18
- role: string;
19
- content: string;
20
- }
21
18
  export type FunctionTypeFileToToVoid = (file: File) => void;
22
19
  export type FunctionTypePaginationToVoid = (pagination: Pagination) => void;
23
20
  export type FunctionTypeVoidToVoid = () => void;
@@ -28,4 +25,12 @@ export type FunctionTypeDialogEntityToDialogEntity = (entity: GroupDialogEntity)
28
25
  export type FunctionTypeDialogEntityToBoolean = (entity: GroupDialogEntity) => Promise<boolean>;
29
26
  export type FunctionTypeFileToFileEntity = (file: File) => Promise<FileEntity>;
30
27
  export type FunctionTypeJSXElement = () => JSX.Element;
31
- export type FunctionTypeChatMessagesToVoid = (lastMessage: string, messages: IChatMessage) => void;
28
+ export type FunctionTypeFileWithContextToToVoid = (file: File, context: IChatMessage[], additionalSettings?: {
29
+ [key: string]: any;
30
+ }) => void;
31
+ export type FunctionTypeStringWithContextToVoid = (value: string, context: IChatMessage[], additionalSettings?: {
32
+ [key: string]: any;
33
+ }) => void;
34
+ export type FunctionTypeStringWithContextToString = (value: string, context: IChatMessage[], additionalSettings?: {
35
+ [key: string]: any;
36
+ }) => Promise<string>;
@@ -0,0 +1,16 @@
1
+ import { FunctionTypeFileWithContextToToVoid, FunctionTypeJSXElement, FunctionTypeStringWithContextToString } from '../../../../../Views/Base/BaseViewModel';
2
+ export interface AIWidget {
3
+ renderWidget: FunctionTypeJSXElement;
4
+ }
5
+ export interface AITextWidget extends AIWidget {
6
+ textToContent: string | undefined;
7
+ }
8
+ export interface AIFileWidget extends AIWidget {
9
+ fileToContent: File | undefined;
10
+ }
11
+ export interface AIMessageWidget extends AITextWidget {
12
+ textToWidget: FunctionTypeStringWithContextToString;
13
+ }
14
+ export interface AIAttachmentWidget extends AIFileWidget {
15
+ fileToWidget: FunctionTypeFileWithContextToToVoid;
16
+ }
@@ -0,0 +1,14 @@
1
+ /// <reference types="react" />
2
+ import './AIWidgetActions.scss';
3
+ type MenuItem = {
4
+ title: string;
5
+ icon?: JSX.Element;
6
+ action: () => void;
7
+ };
8
+ type ContextMenuProps = {
9
+ widgetToRender?: JSX.Element;
10
+ items?: MenuItem[];
11
+ title?: string | null;
12
+ };
13
+ declare function AIWidgetActions({ items, widgetToRender, title, }: ContextMenuProps): JSX.Element;
14
+ export default AIWidgetActions;
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ type ErrorDescription = {
3
+ title: string;
4
+ action: () => void;
5
+ };
6
+ type ErrorMessageIconProps = {
7
+ errorMessageText: string;
8
+ errorsDescriptions?: ErrorDescription[];
9
+ };
10
+ declare function ErrorMessageIcon({ errorMessageText, errorsDescriptions, }: ErrorMessageIconProps): JSX.Element;
11
+ export default ErrorMessageIcon;
@@ -0,0 +1,23 @@
1
+ import React from 'react';
2
+ type MenuItem = {
3
+ title: string;
4
+ icon?: JSX.Element;
5
+ action: () => void;
6
+ };
7
+ type SliderMenuProps = {
8
+ items: MenuItem[];
9
+ width: number;
10
+ arrowColor?: string;
11
+ activeArrowColor?: string;
12
+ borderColor?: string;
13
+ backgroundColor?: string;
14
+ itemBackgroundColor?: string;
15
+ itemWidth?: number;
16
+ itemHeight?: number;
17
+ itemBorder?: string;
18
+ fontSize?: number;
19
+ activeItemBorderColor?: string;
20
+ activeItemBoxShadow?: string;
21
+ };
22
+ declare const SliderMenu: React.FC<SliderMenuProps>;
23
+ export default SliderMenu;
@@ -0,0 +1,15 @@
1
+ export declare enum Tone {
2
+ Professional = "Professional Tone",
3
+ Friendly = "Friendly Tone",
4
+ Encouraging = "Encouraging Tone",
5
+ Empathetic = "Empathetic Tone",
6
+ Neutral = "Neutral Tone",
7
+ Assertive = "Assertive Tone",
8
+ Instructive = "Instructive Tone",
9
+ Persuasive = "Persuasive Tone",
10
+ Sarcastic = "Sarcastic/Ironic Tone",
11
+ Poetic = "Poetic Tone",
12
+ Unchanged = "Unchanged"
13
+ }
14
+ export declare const toneToString: (tone: Tone) => string;
15
+ export declare const stringToTone: (toneStr: string) => Tone | undefined;
@@ -0,0 +1,10 @@
1
+ import { AIMessageWidget } from './AIMessageWidget';
2
+ interface MessageWidgetProps {
3
+ servername: string;
4
+ api: string;
5
+ port: string;
6
+ sessionToken: string;
7
+ apiKey: string;
8
+ }
9
+ export default function UseDefaultAIAssistAnswerWidget({ servername, api, port, sessionToken, apiKey, }: MessageWidgetProps): AIMessageWidget;
10
+ export {};
@@ -0,0 +1,10 @@
1
+ import { AIMessageWidget } from './AIMessageWidget';
2
+ interface MessageWidgetProps {
3
+ servername: string;
4
+ api: string;
5
+ port: string;
6
+ sessionToken: string;
7
+ apiKey: string;
8
+ }
9
+ export default function UseDefaultAIRephraseMessageWidget({ servername, api, port, sessionToken, apiKey, }: MessageWidgetProps): AIMessageWidget;
10
+ export {};
@@ -0,0 +1,10 @@
1
+ import { AIMessageWidget } from './AIMessageWidget';
2
+ interface MessageWidgetProps {
3
+ servername: string;
4
+ api: string;
5
+ port: string;
6
+ sessionToken: string;
7
+ apiKey: string;
8
+ }
9
+ export default function UseDefaultAITranslateWidget({ servername, api, port, sessionToken, apiKey, }: MessageWidgetProps): AIMessageWidget;
10
+ export {};
@@ -0,0 +1,2 @@
1
+ import { AIAttachmentWidget } from './AIMessageWidget';
2
+ export default function useDefaultVoiceInputWidget(): AIAttachmentWidget;
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ type MenuItem = {
3
+ title: string;
4
+ action: () => void;
5
+ };
6
+ type ContextMenuProps = {
7
+ widgetToRender?: JSX.Element;
8
+ items?: MenuItem[];
9
+ };
10
+ declare function ContextMenu({ items, widgetToRender }: ContextMenuProps): JSX.Element;
11
+ export default ContextMenu;
@@ -0,0 +1,26 @@
1
+ import './DropDownMenu.scss';
2
+ import React from 'react';
3
+ import { FunctionTypeVoidToVoid } from '../../../../../Views/Base/BaseViewModel';
4
+ import { MessageEntity } from '../../../../../../Domain/entity/MessageEntity';
5
+ export type ContextMessageMenu = {
6
+ title: string;
7
+ message?: MessageEntity;
8
+ icon?: React.ReactNode;
9
+ clickHandler?: FunctionTypeVoidToVoid;
10
+ touchHandler?: FunctionTypeVoidToVoid;
11
+ };
12
+ export type ContextMessageMenuAI = {
13
+ title: string;
14
+ message?: MessageEntity;
15
+ icon?: React.ReactNode;
16
+ clickHandler?: FunctionTypeVoidToVoid;
17
+ touchHandler?: FunctionTypeVoidToVoid;
18
+ };
19
+ export declare const contextMessageMenu: ContextMessageMenu[];
20
+ export declare const contextMessageMenuAI: ContextMessageMenuAI[];
21
+ type DropDownMenuProps = {
22
+ items: ContextMessageMenu[];
23
+ itemsAI?: ContextMessageMenuAI[];
24
+ };
25
+ export declare const DropDownMenu: React.FC<DropDownMenuProps>;
26
+ export {};
@@ -0,0 +1,11 @@
1
+ import './ItemDropDownMenu.scss';
2
+ import React from 'react';
3
+ import { FunctionTypeVoidToVoid } from '../../../../../../Views/Base/BaseViewModel';
4
+ type ItemDropDownMenuProps = {
5
+ item: string;
6
+ icon?: React.ReactNode;
7
+ touchAction?: FunctionTypeVoidToVoid;
8
+ clickAction?: FunctionTypeVoidToVoid;
9
+ };
10
+ export declare const ItemDropDownMenu: React.FC<ItemDropDownMenuProps>;
11
+ export {};
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import './AvatarContentIncomingUser.scss';
3
+ export default function AvatarContentIncomingUser(): JSX.Element;
@@ -0,0 +1,15 @@
1
+ /// <reference types="react" />
2
+ import './InComingMessage.scss';
3
+ import UiKitTheme from '../../../../../assets/UiKitTheme';
4
+ import { MessageEntity } from '../../../../../../Domain/entity/MessageEntity';
5
+ import { AIMessageWidget } from '../AIWidgets/AIMessageWidget';
6
+ export declare function InComingMessage(props: {
7
+ theme: UiKitTheme | undefined;
8
+ senderName: string | undefined;
9
+ message: MessageEntity;
10
+ onLoader: () => void;
11
+ currentUserId?: number;
12
+ messagesToView: MessageEntity[];
13
+ AITranslation?: AIMessageWidget;
14
+ AIAnswerToMessage?: AIMessageWidget;
15
+ }): JSX.Element;
@@ -1,9 +1,13 @@
1
1
  import React from 'react';
2
2
  import './MessagesView.scss';
3
- import { FunctionTypeVoidToVoid } from '../../../../Views/Base/BaseViewModel';
4
3
  import UiKitTheme from '../../../../assets/UiKitTheme';
4
+ import { AIMessageWidget } from './AIWidgets/AIMessageWidget';
5
5
  import { DialogsViewModel } from '../../../../Views/Dialogs/DialogViewModel';
6
+ import { FunctionTypeVoidToVoid } from '../../../../Views/Base/BaseViewModel';
6
7
  type HeaderDialogsMessagesProps = {
8
+ AIRephrase?: AIMessageWidget;
9
+ AITranslate?: AIMessageWidget;
10
+ AIAssist?: AIMessageWidget;
7
11
  dialogsViewModel: DialogsViewModel;
8
12
  onDialogInformationHandler?: FunctionTypeVoidToVoid;
9
13
  maxWidthToResize?: string;
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import './OutGoingMessage.scss';
3
+ import { MessageEntity } from '../../../../../../Domain/entity/MessageEntity';
4
+ import UiKitTheme from '../../../../../assets/UiKitTheme';
5
+ export declare function OutGoingMessage(props: {
6
+ message: MessageEntity;
7
+ theme: UiKitTheme | undefined;
8
+ element: JSX.Element;
9
+ }): JSX.Element;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function BookIcon(): JSX.Element;
3
+ export default BookIcon;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function HammerIcon(): JSX.Element;
3
+ export default HammerIcon;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function HandshakeIcon(): JSX.Element;
3
+ export default HandshakeIcon;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function MuscleIcon(): JSX.Element;
3
+ export default MuscleIcon;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function NecktieIcon(): JSX.Element;
3
+ export default NecktieIcon;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function NeutralFaceIcon(): JSX.Element;
3
+ export default NeutralFaceIcon;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function PalmsUpTogetherIcon(): JSX.Element;
3
+ export default PalmsUpTogetherIcon;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function PerformingArtsIcon(): JSX.Element;
3
+ export default PerformingArtsIcon;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function PointUpIcon(): JSX.Element;
3
+ export default PointUpIcon;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function SmileyIcon(): JSX.Element;
3
+ export default SmileyIcon;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function SmirkIcon(): JSX.Element;
3
+ export default SmirkIcon;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function WhiteCheckMarkIcon(): JSX.Element;
3
+ export default WhiteCheckMarkIcon;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { IconTheme } from '../../IconsCommonTypes';
3
+ declare function AssitAnswerIcon(theme?: IconTheme | undefined): JSX.Element;
4
+ export default AssitAnswerIcon;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { IconTheme } from '../../IconsCommonTypes';
3
+ declare function SummarizeIcon(theme?: IconTheme | undefined): JSX.Element;
4
+ export default SummarizeIcon;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { IconTheme } from '../../IconsCommonTypes';
3
+ declare function ToneIcon(theme?: IconTheme | undefined): JSX.Element;
4
+ export default ToneIcon;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { IconTheme } from '../../IconsCommonTypes';
3
+ declare function TranslateIcon(theme?: IconTheme | undefined): JSX.Element;
4
+ export default TranslateIcon;
@@ -1,7 +1,16 @@
1
1
  import React from 'react';
2
2
  import UiKitTheme from '../../../assets/UiKitTheme';
3
+ import { AIMessageWidget } from '../../UI/Dialogs/MessagesView/AIWidgets/AIMessageWidget';
4
+ type AIWidgetPlaceHolder = {
5
+ enabled: boolean;
6
+ default: boolean;
7
+ AIWidget?: AIMessageWidget;
8
+ };
3
9
  type QuickBloxUIKitDesktopLayoutProps = {
4
10
  theme?: UiKitTheme;
11
+ AIRephrase?: AIWidgetPlaceHolder;
12
+ AITranslate?: AIWidgetPlaceHolder;
13
+ AIAssist?: AIWidgetPlaceHolder;
5
14
  };
6
15
  declare const QuickBloxUIKitDesktopLayout: React.FC<QuickBloxUIKitDesktopLayoutProps>;
7
16
  export default QuickBloxUIKitDesktopLayout;
@@ -17,6 +17,28 @@ export declare const QBConfig: {
17
17
  sessionToken: string;
18
18
  };
19
19
  };
20
+ AITranslateWidgetConfig: {
21
+ apiKey: string;
22
+ useDefault: boolean;
23
+ defaultLanguage: string;
24
+ languages: string[];
25
+ proxyConfig: {
26
+ api: string;
27
+ servername: string;
28
+ port: string;
29
+ sessionToken: string;
30
+ };
31
+ };
32
+ AIRephraseWidgetConfig: {
33
+ apiKey: string;
34
+ useDefault: boolean;
35
+ proxyConfig: {
36
+ api: string;
37
+ servername: string;
38
+ port: string;
39
+ sessionToken: string;
40
+ };
41
+ };
20
42
  };
21
43
  appConfig: {
22
44
  maxFileSize: number;
@@ -24,4 +24,8 @@ import QuickBloxUIKitDesktopLayout from './Presentation/components/layouts/Deskt
24
24
  import DefaultTheme from './Presentation/assets/DefaultThemes/DefaultTheme';
25
25
  import UiKitTheme from './Presentation/assets/UiKitTheme';
26
26
  import useQbUIKitDataContext from './Presentation/components/providers/QuickBloxUIKitProvider/useQbUIKitDataContext';
27
- export { MainButton, TypeButton, type LoginData, type AuthorizationData, QuickBloxUIKitProvider, qbDataContext, type QBDataContextType, RemoteDataSource, LocalDataSource, useQBConnection, useQbInitializedDataContext, useQbUIKitDataContext, useEventMessagesRepository, type DialogsViewModel, useDialogsViewModel, SubscribeToDialogEventsUseCase, Pagination, type DialogEventInfo, EventMessageType, NotificationTypes, stringifyError, DesktopLayout, DialogsComponent, MessagesView, DialogInformation, type DialogEntity, BaseViewModel, QuickBloxUIKitDesktopLayout, DefaultTheme, type UiKitTheme, };
27
+ import { AIMessageWidget } from './Presentation/components/UI/Dialogs/MessagesView/AIWidgets/AIMessageWidget';
28
+ import { AISource, IChatMessage } from './Data/source/AISource';
29
+ import AIWidgetIcon from './Presentation/components/UI/svgs/Icons/AIWidgets/AIWidget';
30
+ import ErrorMessageIcon from './Presentation/components/UI/Dialogs/MessagesView/AIWidgets/ErrorMessageIcon';
31
+ export { MainButton, TypeButton, type LoginData, type AuthorizationData, QuickBloxUIKitProvider, qbDataContext, type QBDataContextType, RemoteDataSource, LocalDataSource, useQBConnection, useQbInitializedDataContext, useQbUIKitDataContext, useEventMessagesRepository, type DialogsViewModel, useDialogsViewModel, SubscribeToDialogEventsUseCase, Pagination, type DialogEventInfo, EventMessageType, NotificationTypes, stringifyError, DesktopLayout, DialogsComponent, MessagesView, DialogInformation, type DialogEntity, BaseViewModel, QuickBloxUIKitDesktopLayout, DefaultTheme, type UiKitTheme, type AIMessageWidget, AISource, type IChatMessage, AIWidgetIcon, ErrorMessageIcon, };