quickblox-react-ui-kit 0.2.1 → 0.2.2

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.
@@ -2,3 +2,50 @@ export type FunctionResult<T> = {
2
2
  result: T | T[] | boolean;
3
3
  error: any;
4
4
  };
5
+ export type ProxyConfig = {
6
+ api: string;
7
+ servername: string;
8
+ port: string;
9
+ sessionToken: string;
10
+ };
11
+ export interface WidgetConfig {
12
+ apiKey: string;
13
+ useDefault: boolean;
14
+ proxyConfig: ProxyConfig;
15
+ }
16
+ export interface AITranslateWidgetConfig extends WidgetConfig {
17
+ defaultLanguage: string;
18
+ languages: string[];
19
+ }
20
+ export interface AIRephraseWidgetConfig extends WidgetConfig {
21
+ defaultTone: string;
22
+ }
23
+ export interface QBConfig {
24
+ credentials: {
25
+ appId: number;
26
+ accountKey: string;
27
+ authKey: string;
28
+ authSecret: string;
29
+ sessionToken: string;
30
+ };
31
+ configAIApi: {
32
+ AIAnswerAssistWidgetConfig: WidgetConfig;
33
+ AITranslateWidgetConfig: AITranslateWidgetConfig;
34
+ AIRephraseWidgetConfig: AIRephraseWidgetConfig;
35
+ };
36
+ appConfig: {
37
+ maxFileSize: number;
38
+ sessionTimeOut: number;
39
+ chatProtocol: {
40
+ active: number;
41
+ };
42
+ debug: boolean;
43
+ endpoints: {
44
+ api: string;
45
+ chat: string;
46
+ };
47
+ streamManagement: {
48
+ enable: boolean;
49
+ };
50
+ };
51
+ }
@@ -1,11 +1,7 @@
1
- export type ProxyConfig = {
2
- api: string;
3
- servername: string;
4
- port: string;
5
- sessionToken: string;
6
- };
1
+ import { ProxyConfig, QBConfig } from '../CommonTypes/FunctionResult';
7
2
  export declare class DefaultConfigurations {
8
3
  static getDefaultProxyConfig(): ProxyConfig;
9
4
  static getDefaultLanguageForAITranslate(): string;
10
5
  static getAdditionalLanguagesForAITranslate(): string[];
6
+ static getDefaultQBConfig(): QBConfig;
11
7
  }
@@ -16,7 +16,7 @@ type AccountData = {
16
16
  export type InitParams = {
17
17
  maxFileSize: number;
18
18
  accountData: AccountData;
19
- qbConfig?: QBConfig;
19
+ qbConfig: QBConfig;
20
20
  loginData?: LoginData;
21
21
  };
22
22
  type QuickBloxProviderProps = ProviderProps & InitParams;
@@ -32,6 +32,7 @@ export declare const QBConfig: {
32
32
  AIRephraseWidgetConfig: {
33
33
  apiKey: string;
34
34
  useDefault: boolean;
35
+ defaultTone: string;
35
36
  proxyConfig: {
36
37
  api: string;
37
38
  servername: string;
package/dist/index-ui.js CHANGED
@@ -245,7 +245,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
245
245
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
246
246
 
247
247
  "use strict";
248
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".message-view-container--incoming-message-wrapper--context-menu {\\n cursor: pointer;\\n display: flex;\\n flex-direction: column;\\n justify-content: flex-end;\\n min-width: 35px;\\n}\\n\\n.widget-ai-translate-with-choice-languages-container {\\n display: flex;\\n flex-direction: row;\\n justify-content: center;\\n align-items: center;\\n}\\n.widget-ai-translate-with-choice-languages-container--default-language {\\n cursor: pointer;\\n}\\n.widget-ai-translate-with-choice-languages-container--separator {\\n margin-left: 10px;\\n margin-right: 5px;\\n}\\n.widget-ai-translate-with-choice-languages-container--select-language {\\n cursor: pointer;\\n}\\n\\n.incoming-text-message,\\n.incoming-text-message * {\\n box-sizing: border-box;\\n}\\n\\n.incoming-text-message {\\n background: var(--primary-primary-a-100, #ffffff);\\n padding: 0px 16px 8px 8px;\\n display: flex;\\n flex-direction: row;\\n gap: 8px;\\n align-items: flex-end;\\n justify-content: flex-start;\\n flex-shrink: 0;\\n width: 680px;\\n position: relative;\\n}\\n\\n.incoming {\\n display: flex;\\n flex-direction: column;\\n gap: 2px;\\n align-items: flex-start;\\n justify-content: flex-end;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.name {\\n padding: 0px 16px 0px 16px;\\n display: flex;\\n flex-direction: row;\\n gap: 8px;\\n align-items: flex-start;\\n justify-content: flex-start;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.caption {\\n display: flex;\\n flex-direction: row;\\n gap: 0px;\\n align-items: center;\\n justify-content: flex-start;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.name2 {\\n color: var(--secondary-secondary-300, #636d78);\\n text-align: left;\\n font: var(--label-label-medium, 500 12px/16px \\\"Roboto\\\", sans-serif);\\n position: relative;\\n}\\n\\n.message {\\n display: flex;\\n flex-direction: row;\\n gap: 8px;\\n align-items: flex-end;\\n justify-content: flex-start;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.bubble {\\n display: flex;\\n flex-direction: column;\\n gap: 4px;\\n align-items: flex-end;\\n justify-content: flex-end;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.chat-bubble-background {\\n background: var(--secondary-secondary-50, #e4e6e8);\\n border-radius: 22px 22px 22px 0px;\\n padding: 8px 12px 8px 12px;\\n display: flex;\\n flex-direction: row;\\n gap: 10px;\\n align-items: flex-start;\\n justify-content: flex-start;\\n flex-shrink: 0;\\n position: relative;\\n min-width: 120px;\\n max-width: 480px;\\n}\\n\\n.message-in-a-single-line {\\n color: var(--secondary-secondary-900, #0b121b);\\n text-align: left;\\n font: var(--body-body-medium, 400 14px/20px \\\"Roboto\\\", sans-serif);\\n position: relative;\\n display: flex;\\n align-items: center;\\n justify-content: flex-start;\\n}\\n\\n.translate {\\n padding: 0px 12px 0px 0px;\\n display: flex;\\n flex-direction: row;\\n gap: 8px;\\n align-items: center;\\n justify-content: flex-end;\\n align-self: stretch;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.caption2 {\\n display: flex;\\n flex-direction: row;\\n gap: 0px;\\n align-items: center;\\n justify-content: flex-end;\\n flex: 1;\\n position: relative;\\n}\\n\\n.time {\\n color: var(--secondary-secondary-300, #636d78);\\n text-align: right;\\n font: var(--label-label-small, 500 11px/16px \\\"Roboto\\\", sans-serif);\\n position: relative;\\n}\\n\\n.icon {\\n border-radius: 4px;\\n display: flex;\\n flex-direction: row;\\n gap: 0px;\\n align-items: center;\\n justify-content: center;\\n flex-shrink: 0;\\n width: 16px;\\n height: 16px;\\n position: relative;\\n}\\n\\n.media-translate {\\n align-self: stretch;\\n flex: 1;\\n position: relative;\\n overflow: visible;\\n}\\n\\n.assist-answer {\\n padding: 0px 0px 16px 0px;\\n display: flex;\\n flex-direction: row;\\n gap: 10px;\\n align-items: center;\\n justify-content: center;\\n align-self: stretch;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.icon2 {\\n border-radius: 4px;\\n padding: 4px;\\n display: flex;\\n flex-direction: row;\\n gap: 0px;\\n align-items: center;\\n justify-content: center;\\n flex-shrink: 0;\\n width: 32px;\\n height: 32px;\\n position: relative;\\n}\\n\\n.status-loader {\\n align-self: stretch;\\n flex: 1;\\n position: relative;\\n overflow: visible;\\n}\\n\\n.caption3 {\\n padding: 0px 0px 16px 0px;\\n display: flex;\\n flex-direction: row;\\n gap: 0px;\\n align-items: flex-start;\\n justify-content: flex-start;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.ai-translate-action {\\n color: var(--secondary-secondary-300, #636d78);\\n text-align: right;\\n font: var(--label-label-small, 500 11px/16px \\\"Roboto\\\", sans-serif);\\n position: relative;\\n cursor: pointer;\\n}\\n\\n.assist-answer {\\n display: flex;\\n flex-direction: row;\\n gap: 10px;\\n align-items: center;\\n justify-content: center;\\n align-self: stretch;\\n flex-shrink: 0;\\n position: relative;\\n cursor: pointer;\\n}\\n\\n.icon {\\n border-radius: 4px;\\n padding: 4px;\\n display: flex;\\n flex-direction: row;\\n gap: 0px;\\n align-items: center;\\n justify-content: center;\\n flex-shrink: 0;\\n width: 32px;\\n height: 32px;\\n position: relative;\\n}\\n\\n.actions-assist-answer {\\n padding: 5px 3px 5px 3px;\\n align-self: stretch;\\n flex: 1;\\n position: relative;\\n overflow: visible;\\n}\", \"\"]);\n// Exports\n/* harmony default export */ __webpack_exports__[\"default\"] = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/Presentation/components/UI/Dialogs/MessagesView/InComingMessage/InComingMessage.scss?./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js");
248
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".message-view-container--incoming-message-wrapper--context-menu {\\n cursor: pointer;\\n display: flex;\\n flex-direction: column;\\n justify-content: flex-end;\\n min-width: 35px;\\n}\\n\\n.widget-ai-translate-with-choice-languages-container {\\n display: flex;\\n flex-direction: row;\\n justify-content: center;\\n align-items: center;\\n}\\n.widget-ai-translate-with-choice-languages-container--default-language {\\n cursor: pointer;\\n}\\n.widget-ai-translate-with-choice-languages-container--separator {\\n margin-left: 10px;\\n margin-right: 5px;\\n}\\n.widget-ai-translate-with-choice-languages-container--select-language {\\n cursor: pointer;\\n}\\n\\n.incoming-text-message,\\n.incoming-text-message * {\\n box-sizing: border-box;\\n}\\n\\n.incoming-text-message {\\n background: var(--secondary-background);\\n padding: 0px 16px 8px 8px;\\n display: flex;\\n flex-direction: row;\\n gap: 8px;\\n align-items: flex-end;\\n justify-content: flex-start;\\n flex-shrink: 0;\\n width: 680px;\\n position: relative;\\n}\\n\\n.incoming {\\n display: flex;\\n flex-direction: column;\\n gap: 2px;\\n align-items: flex-start;\\n justify-content: flex-end;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.name {\\n padding: 0px 16px 0px 16px;\\n display: flex;\\n flex-direction: row;\\n gap: 8px;\\n align-items: flex-start;\\n justify-content: flex-start;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.caption {\\n display: flex;\\n flex-direction: row;\\n gap: 0px;\\n align-items: center;\\n justify-content: flex-start;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.name2 {\\n color: var(--secondary-secondary-300, #636d78);\\n text-align: left;\\n font: var(--label-label-medium, 500 12px/16px \\\"Roboto\\\", sans-serif);\\n position: relative;\\n}\\n\\n.message {\\n display: flex;\\n flex-direction: row;\\n gap: 8px;\\n align-items: flex-end;\\n justify-content: flex-start;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.bubble {\\n display: flex;\\n flex-direction: column;\\n gap: 4px;\\n align-items: flex-end;\\n justify-content: flex-end;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.chat-bubble-background {\\n background: var(--incoming-background);\\n border-radius: 22px 22px 22px 0px;\\n padding: 8px 12px 8px 12px;\\n display: flex;\\n flex-direction: row;\\n gap: 10px;\\n align-items: flex-start;\\n justify-content: flex-start;\\n flex-shrink: 0;\\n position: relative;\\n min-width: 120px;\\n max-width: 480px;\\n}\\n\\n.message-in-a-single-line {\\n color: var(--secondary-secondary-900, #0b121b);\\n text-align: left;\\n font: var(--body-body-medium, 400 14px/20px \\\"Roboto\\\", sans-serif);\\n position: relative;\\n display: flex;\\n align-items: center;\\n justify-content: flex-start;\\n}\\n\\n.translate {\\n padding: 0px 12px 0px 0px;\\n display: flex;\\n flex-direction: row;\\n gap: 8px;\\n align-items: center;\\n justify-content: flex-end;\\n align-self: stretch;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.caption2 {\\n display: flex;\\n flex-direction: row;\\n gap: 0px;\\n align-items: center;\\n justify-content: flex-end;\\n flex: 1;\\n position: relative;\\n}\\n\\n.time {\\n color: var(--secondary-secondary-300, #636d78);\\n text-align: right;\\n font: var(--label-label-small, 500 11px/16px \\\"Roboto\\\", sans-serif);\\n position: relative;\\n}\\n\\n.icon {\\n border-radius: 4px;\\n display: flex;\\n flex-direction: row;\\n gap: 0px;\\n align-items: center;\\n justify-content: center;\\n flex-shrink: 0;\\n width: 16px;\\n height: 16px;\\n position: relative;\\n}\\n\\n.media-translate {\\n align-self: stretch;\\n flex: 1;\\n position: relative;\\n overflow: visible;\\n}\\n\\n.assist-answer {\\n padding: 0px 0px 16px 0px;\\n display: flex;\\n flex-direction: row;\\n gap: 10px;\\n align-items: center;\\n justify-content: center;\\n align-self: stretch;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.icon2 {\\n border-radius: 4px;\\n padding: 4px;\\n display: flex;\\n flex-direction: row;\\n gap: 0px;\\n align-items: center;\\n justify-content: center;\\n flex-shrink: 0;\\n width: 32px;\\n height: 32px;\\n position: relative;\\n}\\n\\n.status-loader {\\n align-self: stretch;\\n flex: 1;\\n position: relative;\\n overflow: visible;\\n}\\n\\n.caption3 {\\n padding: 0px 0px 16px 0px;\\n display: flex;\\n flex-direction: row;\\n gap: 0px;\\n align-items: flex-start;\\n justify-content: flex-start;\\n flex-shrink: 0;\\n position: relative;\\n}\\n\\n.ai-translate-action {\\n color: var(--secondary-secondary-300, #636d78);\\n text-align: right;\\n font: var(--label-label-small, 500 11px/16px \\\"Roboto\\\", sans-serif);\\n position: relative;\\n cursor: pointer;\\n}\\n\\n.assist-answer {\\n display: flex;\\n flex-direction: row;\\n gap: 10px;\\n align-items: center;\\n justify-content: center;\\n align-self: stretch;\\n flex-shrink: 0;\\n position: relative;\\n cursor: pointer;\\n}\\n\\n.icon {\\n border-radius: 4px;\\n padding: 4px;\\n display: flex;\\n flex-direction: row;\\n gap: 0px;\\n align-items: center;\\n justify-content: center;\\n flex-shrink: 0;\\n width: 32px;\\n height: 32px;\\n position: relative;\\n}\\n\\n.actions-assist-answer {\\n padding: 5px 3px 5px 3px;\\n align-self: stretch;\\n flex: 1;\\n position: relative;\\n overflow: visible;\\n}\", \"\"]);\n// Exports\n/* harmony default export */ __webpack_exports__[\"default\"] = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/Presentation/components/UI/Dialogs/MessagesView/InComingMessage/InComingMessage.scss?./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js");
249
249
 
250
250
  /***/ }),
251
251
 
@@ -982,7 +982,7 @@ eval("\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElem
982
982
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
983
983
 
984
984
  "use strict";
985
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"DefaultConfigurations\": function() { return /* binding */ DefaultConfigurations; }\n/* harmony export */ });\n/* harmony import */ var _QBconfig__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../QBconfig */ \"./src/QBconfig.ts\");\n\nvar supportedLanguagesForIATranslate = [\n 'English',\n 'Ukrainian',\n 'Spanish',\n 'Portuguese',\n 'French',\n 'German',\n];\nvar languageBCP47 = {\n 'ar-SA': 'Arabic',\n 'bn-BD': 'Bangla',\n 'bn-IN': 'Bangla',\n 'cs-CZ': 'Czech',\n 'da-DK': 'Danish',\n 'de-AT': 'German',\n 'de-CH': 'German',\n 'de-DE': 'German',\n 'el-GR': 'Greek',\n 'en-AU': 'English',\n 'en-CA': 'English',\n 'en-GB': 'English',\n 'en-IE': 'English',\n 'en-IN': 'English',\n 'en-NZ': 'English',\n 'en-US': 'English',\n 'en-ZA': 'English',\n 'es-AR': 'Spanish',\n 'es-CL': 'Spanish',\n 'es-CO': 'Spanish',\n 'es-ES': 'Spanish',\n 'es-MX': 'Spanish',\n 'es-US': 'Spanish',\n 'fi-FI': 'Finnish',\n 'fr-BE': 'French',\n 'fr-CA': 'French',\n 'fr-CH': 'French',\n 'fr-FR': 'French',\n 'he-IL': 'Hebrew',\n 'hi-IN': 'Hindi',\n 'hu-HU': 'Hungarian',\n 'id-ID': 'Indonesian',\n 'it-CH': 'Italian',\n 'it-IT': 'Italian',\n 'ja-JP': 'Japanese',\n 'ko-KR': 'Korean',\n 'nl-BE': 'Dutch',\n 'nl-NL': 'Dutch',\n 'no-NO': 'Norwegian',\n 'pl-PL': 'Polish',\n 'pt-BR': 'Portuguese',\n 'pt-PT': 'Portuguese',\n 'ro-RO': 'Romanian',\n 'ru-RU': 'Russian',\n 'sk-SK': 'Slovak',\n 'sv-SE': 'Swedish',\n 'ta-IN': 'Tamil',\n 'ta-LK': 'Tamil',\n 'th-TH': 'Thai',\n 'tr-TR': 'Turkish',\n 'zh-CN': 'Chinese',\n 'zh-HK': 'Chinese',\n 'zh-TW': 'Chinese',\n 'uk-UA': 'Ukrainian',\n};\nvar getDefaultSystemLanguage = function () {\n var sysLanguage = navigator.language;\n var language = languageBCP47[sysLanguage] || 'English';\n return language;\n};\nvar DefaultConfigurations = /** @class */ (function () {\n function DefaultConfigurations() {\n }\n DefaultConfigurations.getDefaultProxyConfig = function () {\n return {\n api: 'v1/chat/completions',\n servername: 'https://api.openai.com',\n port: '',\n sessionToken: '',\n };\n };\n DefaultConfigurations.getDefaultLanguageForAITranslate = function () {\n var languageForAITranslate = 'English';\n var defaultLanguage = _QBconfig__WEBPACK_IMPORTED_MODULE_0__.QBConfig.configAIApi.AITranslateWidgetConfig.defaultLanguage;\n if (defaultLanguage.length > 0 &&\n supportedLanguagesForIATranslate.includes(defaultLanguage)) {\n languageForAITranslate = defaultLanguage;\n }\n else {\n var sysLanguage = getDefaultSystemLanguage();\n if (supportedLanguagesForIATranslate.includes(sysLanguage)) {\n languageForAITranslate = sysLanguage;\n }\n }\n return languageForAITranslate;\n };\n DefaultConfigurations.getAdditionalLanguagesForAITranslate = function () {\n var additionalLanguages = [];\n var languages = _QBconfig__WEBPACK_IMPORTED_MODULE_0__.QBConfig.configAIApi.AITranslateWidgetConfig.languages;\n languages.forEach(function (item) {\n if (supportedLanguagesForIATranslate.includes(item)) {\n additionalLanguages.push(item);\n }\n else {\n additionalLanguages.push('English');\n }\n });\n return additionalLanguages;\n };\n return DefaultConfigurations;\n}());\n\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/Data/DefaultConfigurations.ts?");
985
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"DefaultConfigurations\": function() { return /* binding */ DefaultConfigurations; }\n/* harmony export */ });\nvar supportedLanguagesForIATranslate = [\n 'English',\n 'Ukrainian',\n 'Spanish',\n 'Portuguese',\n 'French',\n 'German',\n];\nvar languageBCP47 = {\n 'ar-SA': 'Arabic',\n 'bn-BD': 'Bangla',\n 'bn-IN': 'Bangla',\n 'cs-CZ': 'Czech',\n 'da-DK': 'Danish',\n 'de-AT': 'German',\n 'de-CH': 'German',\n 'de-DE': 'German',\n 'el-GR': 'Greek',\n 'en-AU': 'English',\n 'en-CA': 'English',\n 'en-GB': 'English',\n 'en-IE': 'English',\n 'en-IN': 'English',\n 'en-NZ': 'English',\n 'en-US': 'English',\n 'en-ZA': 'English',\n 'es-AR': 'Spanish',\n 'es-CL': 'Spanish',\n 'es-CO': 'Spanish',\n 'es-ES': 'Spanish',\n 'es-MX': 'Spanish',\n 'es-US': 'Spanish',\n 'fi-FI': 'Finnish',\n 'fr-BE': 'French',\n 'fr-CA': 'French',\n 'fr-CH': 'French',\n 'fr-FR': 'French',\n 'he-IL': 'Hebrew',\n 'hi-IN': 'Hindi',\n 'hu-HU': 'Hungarian',\n 'id-ID': 'Indonesian',\n 'it-CH': 'Italian',\n 'it-IT': 'Italian',\n 'ja-JP': 'Japanese',\n 'ko-KR': 'Korean',\n 'nl-BE': 'Dutch',\n 'nl-NL': 'Dutch',\n 'no-NO': 'Norwegian',\n 'pl-PL': 'Polish',\n 'pt-BR': 'Portuguese',\n 'pt-PT': 'Portuguese',\n 'ro-RO': 'Romanian',\n 'ru-RU': 'Russian',\n 'sk-SK': 'Slovak',\n 'sv-SE': 'Swedish',\n 'ta-IN': 'Tamil',\n 'ta-LK': 'Tamil',\n 'th-TH': 'Thai',\n 'tr-TR': 'Turkish',\n 'zh-CN': 'Chinese',\n 'zh-HK': 'Chinese',\n 'zh-TW': 'Chinese',\n 'uk-UA': 'Ukrainian',\n};\nvar getDefaultSystemLanguage = function () {\n var sysLanguage = navigator.language;\n var language = languageBCP47[sysLanguage] || 'English';\n return language;\n};\nvar DefaultConfigurations = /** @class */ (function () {\n function DefaultConfigurations() {\n }\n DefaultConfigurations.getDefaultProxyConfig = function () {\n return {\n api: 'v1/chat/completions',\n servername: 'https://api.openai.com',\n port: '',\n sessionToken: '',\n };\n };\n DefaultConfigurations.getDefaultLanguageForAITranslate = function () {\n var languageForAITranslate = 'English';\n var defaultLanguage = DefaultConfigurations.getDefaultQBConfig().configAIApi\n .AITranslateWidgetConfig.defaultLanguage;\n if (defaultLanguage.length > 0 &&\n supportedLanguagesForIATranslate.includes(defaultLanguage)) {\n languageForAITranslate = defaultLanguage;\n }\n else {\n var sysLanguage = getDefaultSystemLanguage();\n if (supportedLanguagesForIATranslate.includes(sysLanguage)) {\n languageForAITranslate = sysLanguage;\n }\n }\n return languageForAITranslate;\n };\n DefaultConfigurations.getAdditionalLanguagesForAITranslate = function () {\n var additionalLanguages = [];\n var languages = DefaultConfigurations.getDefaultQBConfig().configAIApi\n .AITranslateWidgetConfig.languages;\n languages.forEach(function (item) {\n if (supportedLanguagesForIATranslate.includes(item)) {\n additionalLanguages.push(item);\n }\n else {\n additionalLanguages.push('English');\n }\n });\n return additionalLanguages;\n };\n //\n DefaultConfigurations.getDefaultQBConfig = function () {\n return {\n credentials: {\n appId: -1,\n accountKey: '',\n authKey: '',\n authSecret: '',\n sessionToken: '',\n },\n configAIApi: {\n AIAnswerAssistWidgetConfig: {\n apiKey: '',\n useDefault: true,\n proxyConfig: {\n api: 'v1/chat/completions',\n servername: 'https://api.openai.com/',\n port: '',\n sessionToken: '',\n },\n },\n AITranslateWidgetConfig: {\n apiKey: '',\n useDefault: true,\n defaultLanguage: 'English',\n languages: [\n 'English',\n 'Spanish',\n 'French',\n 'Portuguese',\n 'German',\n 'Ukrainian',\n ],\n proxyConfig: {\n api: 'v1/chat/completions',\n servername: 'https://api.openai.com/',\n port: '',\n sessionToken: '',\n },\n },\n AIRephraseWidgetConfig: {\n apiKey: '',\n useDefault: true,\n defaultTone: 'Professional',\n proxyConfig: {\n api: 'v1/chat/completions',\n servername: 'https://api.openai.com/',\n port: '',\n sessionToken: '',\n },\n },\n },\n appConfig: {\n maxFileSize: 10 * 1024 * 1024,\n sessionTimeOut: 122,\n chatProtocol: {\n active: 2,\n },\n debug: true,\n endpoints: {\n api: 'api.quickblox.com',\n chat: 'chat.quickblox.com',\n },\n streamManagement: {\n enable: true,\n },\n },\n };\n };\n return DefaultConfigurations;\n}());\n\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/Data/DefaultConfigurations.ts?");
986
986
 
987
987
  /***/ }),
988
988
 
@@ -1389,7 +1389,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
1389
1389
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
1390
1390
 
1391
1391
  "use strict";
1392
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"MessageDTOMapper\": function() { return /* binding */ MessageDTOMapper; }\n/* harmony export */ });\n/* harmony import */ var _dto_message_RemoteMessageDTO__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../dto/message/RemoteMessageDTO */ \"./src/Data/dto/message/RemoteMessageDTO.ts\");\n/* harmony import */ var _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../exception/MapperDTOException */ \"./src/Data/source/exception/MapperDTOException.ts\");\n\n\nvar MessageDTOMapper = /** @class */ (function () {\n function MessageDTOMapper() {\n }\n // eslint-disable-next-line class-methods-use-this\n MessageDTOMapper.prototype.fromDTO = function (dto) {\n var messageDTO = dto;\n MessageDTOMapper.validateDTO(messageDTO);\n // eslint-disable-next-line @typescript-eslint/no-shadow\n // todo: why we have empty values?\n var message = {\n _id: '',\n attachments: [],\n chat_dialog_id: '',\n created_at: '',\n date_sent: 0,\n delivered_ids: [],\n message: '',\n read: 0,\n read_ids: [],\n recipient_id: 0,\n sender_id: 0,\n updated_at: '',\n };\n return Promise.resolve(message);\n };\n // eslint-disable-next-line class-methods-use-this\n MessageDTOMapper.transformAttachment = function (qbAtts) {\n var result = qbAtts.map(function (item) {\n var newItem = {\n id: item.id,\n name: item.name,\n size: item.size,\n type: item.type,\n uid: item.uid,\n url: item.id.toString() && QB.content.privateUrl(item.id.toString()),\n file: {\n id: item.id,\n name: item.name,\n size: item.size,\n type: item.type,\n uid: item.uid || '',\n url: item.id.toString() && QB.content.privateUrl(item.id.toString()),\n },\n };\n return newItem;\n });\n return result;\n };\n // eslint-disable-next-line class-methods-use-this\n MessageDTOMapper.prototype.toTDO = function (entity) {\n var qbMessage = entity;\n MessageDTOMapper.validateQBMessage(qbMessage);\n var dto = new _dto_message_RemoteMessageDTO__WEBPACK_IMPORTED_MODULE_0__.RemoteMessageDTO();\n dto.id = qbMessage._id;\n dto.dialogId = qbMessage.chat_dialog_id;\n dto.message = qbMessage.message;\n dto.created_at = qbMessage.created_at;\n dto.date_sent = qbMessage.date_sent * 1000;\n dto.delivered_ids = qbMessage.delivered_ids ? qbMessage.delivered_ids : [];\n dto.read_ids = qbMessage.read_ids ? qbMessage.read_ids : [];\n dto.recipient_id = qbMessage.recipient_id ? qbMessage.recipient_id : 0;\n dto.attachments = MessageDTOMapper.transformAttachment(qbMessage.attachments ? qbMessage.attachments : []);\n dto.read = qbMessage.read;\n dto.sender_id = qbMessage.sender_id;\n dto.updated_at = qbMessage.updated_at;\n // // notification_type markable\n dto.notification_type = qbMessage.notification_type\n ? qbMessage.notification_type\n : '';\n dto.markable = qbMessage.notification_type\n ? qbMessage.notification_type\n : '';\n return Promise.resolve(dto);\n };\n MessageDTOMapper.validateDTO = function (messageDTO) {\n var messageDTOValidator = {\n created_at: function (v) {\n var created_at = v.created_at;\n return (created_at !== undefined &&\n created_at !== null &&\n created_at.length > 0);\n },\n date_sent: function (v) {\n var date_sent = v.date_sent;\n return date_sent !== undefined && date_sent !== null;\n },\n delivered_ids: function (v) {\n var delivered_ids = v.delivered_ids;\n return (delivered_ids !== undefined && delivered_ids !== null\n // && delivered_ids.length >= 0\n );\n },\n dialogId: function (v) {\n var dialogId = v.dialogId;\n return (dialogId !== undefined && dialogId !== null && dialogId.length > 0);\n },\n id: function (v) {\n var id = v.id;\n return id !== undefined && id !== null;\n },\n message: function (v) {\n var message = v.message;\n return message !== undefined && message !== null && message.length > 0;\n },\n read: function (v) {\n var read = v.read;\n return read !== undefined && read !== null;\n },\n read_ids: function (v) {\n var read_ids = v.read_ids;\n return (read_ids !== undefined && read_ids !== null\n // && read_ids.length >= 0\n );\n },\n recipient_id: function (v) {\n var recipient_id = v.recipient_id;\n return recipient_id !== undefined && recipient_id !== null;\n },\n sender_id: function (v) {\n var sender_id = v.sender_id;\n return sender_id !== undefined && sender_id !== null;\n },\n updated_at: function (v) {\n var updated_at = v.updated_at;\n return (updated_at !== undefined &&\n updated_at !== null &&\n updated_at.length > 0);\n },\n attachments: function (v) {\n var attachments = v.attachments;\n return attachments !== undefined && attachments !== null;\n },\n };\n if (!messageDTOValidator.created_at(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {created_at} does not exist or empty');\n if (!messageDTOValidator.date_sent(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {date_sent} does not exist or empty');\n if (!messageDTOValidator.delivered_ids(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {delivered_ids} does not exist or empty');\n if (!messageDTOValidator.dialogId(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {dialogId} does not exist or empty');\n if (!messageDTOValidator.id(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {id} does not exist or empty');\n if (!messageDTOValidator.message(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {message} does not exist or empty');\n if (!messageDTOValidator.read(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {read} does not exist or empty');\n if (!messageDTOValidator.read_ids(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {read_ids} does not exist or empty');\n if (!messageDTOValidator.recipient_id(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {recipient_id} does not exist or empty');\n if (!messageDTOValidator.sender_id(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {sender_id} does not exist or empty');\n if (!messageDTOValidator.updated_at(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {updated_at} does not exist or empty');\n };\n MessageDTOMapper.validateQBMessage = function (qbMessage) {\n var qbMessageValidator = {\n delivered_ids: function (v) {\n var delivered_ids = v.delivered_ids;\n return delivered_ids !== undefined && delivered_ids !== null;\n },\n read_ids: function (v) {\n var read_ids = v.read_ids;\n return read_ids !== undefined && read_ids !== null;\n },\n _id: function (v) {\n var _id = v._id;\n return _id !== undefined && _id !== null && _id.length > 0;\n },\n // TODO: check attachment\n attachments: function (v) {\n var attachments = v.attachments;\n return attachments !== undefined && attachments !== null;\n },\n chat_dialog_id: function (v) {\n var chat_dialog_id = v.chat_dialog_id;\n return (chat_dialog_id !== undefined &&\n chat_dialog_id !== null &&\n chat_dialog_id.length > 0);\n },\n created_at: function (v) {\n var created_at = v.created_at;\n return (created_at !== undefined &&\n created_at !== null &&\n created_at.length > 0);\n },\n date_sent: function (v) {\n var date_sent = v.date_sent;\n return date_sent !== undefined && date_sent !== null;\n },\n message: function (v) {\n var message = v.message;\n return message !== undefined && message !== null && message.length > 0;\n },\n read: function (v) {\n var read = v.read;\n return read !== undefined && read !== null;\n },\n recipient_id: function (v) {\n var recipient_id = v.recipient_id;\n return recipient_id !== undefined && recipient_id !== null;\n },\n sender_id: function (v) {\n var sender_id = v.sender_id;\n return sender_id !== undefined && sender_id !== null;\n },\n updated_at: function (v) {\n var updated_at = v.updated_at;\n return (updated_at !== undefined &&\n updated_at !== null &&\n updated_at.length > 0);\n },\n };\n if (!qbMessageValidator._id(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {_id} does not exist or empty');\n if (!qbMessageValidator.chat_dialog_id(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {chat_dialog_id} does not exist or empty');\n if (!qbMessageValidator.created_at(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {created_at} does not exist or empty');\n if (!qbMessageValidator.date_sent(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {date_sent} does not exist or empty');\n if (!qbMessageValidator.message(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {message} does not exist or empty');\n if (!qbMessageValidator.read(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {read} does not exist or empty');\n if (!qbMessageValidator.recipient_id(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {recipient_id} does not exist or empty');\n if (!qbMessageValidator.sender_id(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {sender_id} does not exist or empty');\n if (!qbMessageValidator.updated_at(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {updated_at} does not exist or empty');\n };\n return MessageDTOMapper;\n}());\n\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/Data/source/remote/Mapper/MessageDTOMapper.ts?");
1392
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"MessageDTOMapper\": function() { return /* binding */ MessageDTOMapper; }\n/* harmony export */ });\n/* harmony import */ var _dto_message_RemoteMessageDTO__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../dto/message/RemoteMessageDTO */ \"./src/Data/dto/message/RemoteMessageDTO.ts\");\n/* harmony import */ var _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../exception/MapperDTOException */ \"./src/Data/source/exception/MapperDTOException.ts\");\n\n\nvar MessageDTOMapper = /** @class */ (function () {\n function MessageDTOMapper() {\n }\n // eslint-disable-next-line class-methods-use-this\n MessageDTOMapper.prototype.fromDTO = function (dto) {\n var messageDTO = dto;\n MessageDTOMapper.validateDTO(messageDTO);\n // eslint-disable-next-line @typescript-eslint/no-shadow\n // todo: why we have empty values?\n var message = {\n _id: '',\n attachments: [],\n chat_dialog_id: '',\n created_at: '',\n date_sent: 0,\n delivered_ids: [],\n message: '',\n read: 0,\n read_ids: [],\n recipient_id: 0,\n sender_id: 0,\n updated_at: '',\n };\n return Promise.resolve(message);\n };\n // eslint-disable-next-line class-methods-use-this\n MessageDTOMapper.transformAttachment = function (qbAtts) {\n var result = qbAtts.map(function (item) {\n var newItem = {\n id: item.id,\n name: item.name,\n size: item.size,\n type: item.type,\n uid: item.uid,\n url: item.uid && QB.content.privateUrl(item.uid),\n file: {\n id: item.id,\n name: item.name,\n size: item.size,\n type: item.type,\n uid: item.uid || '',\n url: item.uid && QB.content.privateUrl(item.uid),\n },\n };\n return newItem;\n });\n return result;\n };\n // eslint-disable-next-line class-methods-use-this\n MessageDTOMapper.prototype.toTDO = function (entity) {\n var qbMessage = entity;\n MessageDTOMapper.validateQBMessage(qbMessage);\n var dto = new _dto_message_RemoteMessageDTO__WEBPACK_IMPORTED_MODULE_0__.RemoteMessageDTO();\n dto.id = qbMessage._id;\n dto.dialogId = qbMessage.chat_dialog_id;\n dto.message = qbMessage.message;\n dto.created_at = qbMessage.created_at;\n dto.date_sent = qbMessage.date_sent * 1000;\n dto.delivered_ids = qbMessage.delivered_ids ? qbMessage.delivered_ids : [];\n dto.read_ids = qbMessage.read_ids ? qbMessage.read_ids : [];\n dto.recipient_id = qbMessage.recipient_id ? qbMessage.recipient_id : 0;\n dto.attachments = MessageDTOMapper.transformAttachment(qbMessage.attachments ? qbMessage.attachments : []);\n dto.read = qbMessage.read;\n dto.sender_id = qbMessage.sender_id;\n dto.updated_at = qbMessage.updated_at;\n // // notification_type markable\n dto.notification_type = qbMessage.notification_type\n ? qbMessage.notification_type\n : '';\n dto.markable = qbMessage.notification_type\n ? qbMessage.notification_type\n : '';\n return Promise.resolve(dto);\n };\n MessageDTOMapper.validateDTO = function (messageDTO) {\n var messageDTOValidator = {\n created_at: function (v) {\n var created_at = v.created_at;\n return (created_at !== undefined &&\n created_at !== null &&\n created_at.length > 0);\n },\n date_sent: function (v) {\n var date_sent = v.date_sent;\n return date_sent !== undefined && date_sent !== null;\n },\n delivered_ids: function (v) {\n var delivered_ids = v.delivered_ids;\n return (delivered_ids !== undefined && delivered_ids !== null\n // && delivered_ids.length >= 0\n );\n },\n dialogId: function (v) {\n var dialogId = v.dialogId;\n return (dialogId !== undefined && dialogId !== null && dialogId.length > 0);\n },\n id: function (v) {\n var id = v.id;\n return id !== undefined && id !== null;\n },\n message: function (v) {\n var message = v.message;\n return message !== undefined && message !== null && message.length > 0;\n },\n read: function (v) {\n var read = v.read;\n return read !== undefined && read !== null;\n },\n read_ids: function (v) {\n var read_ids = v.read_ids;\n return (read_ids !== undefined && read_ids !== null\n // && read_ids.length >= 0\n );\n },\n recipient_id: function (v) {\n var recipient_id = v.recipient_id;\n return recipient_id !== undefined && recipient_id !== null;\n },\n sender_id: function (v) {\n var sender_id = v.sender_id;\n return sender_id !== undefined && sender_id !== null;\n },\n updated_at: function (v) {\n var updated_at = v.updated_at;\n return (updated_at !== undefined &&\n updated_at !== null &&\n updated_at.length > 0);\n },\n attachments: function (v) {\n var attachments = v.attachments;\n return attachments !== undefined && attachments !== null;\n },\n };\n if (!messageDTOValidator.created_at(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {created_at} does not exist or empty');\n if (!messageDTOValidator.date_sent(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {date_sent} does not exist or empty');\n if (!messageDTOValidator.delivered_ids(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {delivered_ids} does not exist or empty');\n if (!messageDTOValidator.dialogId(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {dialogId} does not exist or empty');\n if (!messageDTOValidator.id(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {id} does not exist or empty');\n if (!messageDTOValidator.message(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {message} does not exist or empty');\n if (!messageDTOValidator.read(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {read} does not exist or empty');\n if (!messageDTOValidator.read_ids(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {read_ids} does not exist or empty');\n if (!messageDTOValidator.recipient_id(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {recipient_id} does not exist or empty');\n if (!messageDTOValidator.sender_id(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {sender_id} does not exist or empty');\n if (!messageDTOValidator.updated_at(messageDTO))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {updated_at} does not exist or empty');\n };\n MessageDTOMapper.validateQBMessage = function (qbMessage) {\n var qbMessageValidator = {\n delivered_ids: function (v) {\n var delivered_ids = v.delivered_ids;\n return delivered_ids !== undefined && delivered_ids !== null;\n },\n read_ids: function (v) {\n var read_ids = v.read_ids;\n return read_ids !== undefined && read_ids !== null;\n },\n _id: function (v) {\n var _id = v._id;\n return _id !== undefined && _id !== null && _id.length > 0;\n },\n // TODO: check attachment\n attachments: function (v) {\n var attachments = v.attachments;\n return attachments !== undefined && attachments !== null;\n },\n chat_dialog_id: function (v) {\n var chat_dialog_id = v.chat_dialog_id;\n return (chat_dialog_id !== undefined &&\n chat_dialog_id !== null &&\n chat_dialog_id.length > 0);\n },\n created_at: function (v) {\n var created_at = v.created_at;\n return (created_at !== undefined &&\n created_at !== null &&\n created_at.length > 0);\n },\n date_sent: function (v) {\n var date_sent = v.date_sent;\n return date_sent !== undefined && date_sent !== null;\n },\n message: function (v) {\n var message = v.message;\n return message !== undefined && message !== null && message.length > 0;\n },\n read: function (v) {\n var read = v.read;\n return read !== undefined && read !== null;\n },\n recipient_id: function (v) {\n var recipient_id = v.recipient_id;\n return recipient_id !== undefined && recipient_id !== null;\n },\n sender_id: function (v) {\n var sender_id = v.sender_id;\n return sender_id !== undefined && sender_id !== null;\n },\n updated_at: function (v) {\n var updated_at = v.updated_at;\n return (updated_at !== undefined &&\n updated_at !== null &&\n updated_at.length > 0);\n },\n };\n if (!qbMessageValidator._id(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {_id} does not exist or empty');\n if (!qbMessageValidator.chat_dialog_id(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {chat_dialog_id} does not exist or empty');\n if (!qbMessageValidator.created_at(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {created_at} does not exist or empty');\n if (!qbMessageValidator.date_sent(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {date_sent} does not exist or empty');\n if (!qbMessageValidator.message(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {message} does not exist or empty');\n if (!qbMessageValidator.read(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {read} does not exist or empty');\n if (!qbMessageValidator.recipient_id(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {recipient_id} does not exist or empty');\n if (!qbMessageValidator.sender_id(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {sender_id} does not exist or empty');\n if (!qbMessageValidator.updated_at(qbMessage))\n throw new _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.MapperDTOException(_exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_MESSAGE, _exception_MapperDTOException__WEBPACK_IMPORTED_MODULE_1__.INCORRECT_DATA_MAPPER_DTO_EXCEPTION_CODE, 'field {updated_at} does not exist or empty');\n };\n return MessageDTOMapper;\n}());\n\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/Data/source/remote/Mapper/MessageDTOMapper.ts?");
1393
1393
 
1394
1394
  /***/ }),
1395
1395
 
@@ -2104,7 +2104,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var reac
2104
2104
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
2105
2105
 
2106
2106
  "use strict";
2107
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ useMessagesViewModel; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../Domain/entity/DialogTypes */ \"./src/Domain/entity/DialogTypes.ts\");\n/* harmony import */ var _providers_QuickBloxUIKitProvider_useQbInitializedDataContext__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../providers/QuickBloxUIKitProvider/useQbInitializedDataContext */ \"./src/Presentation/components/providers/QuickBloxUIKitProvider/useQbInitializedDataContext.ts\");\n/* harmony import */ var _Domain_use_cases_GetUsersByIdsUseCase__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../Domain/use_cases/GetUsersByIdsUseCase */ \"./src/Domain/use_cases/GetUsersByIdsUseCase.ts\");\n/* harmony import */ var _Data_repository_UsersRepository__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../Data/repository/UsersRepository */ \"./src/Data/repository/UsersRepository.ts\");\n/* harmony import */ var _Domain_use_cases_GetAllMessagesForDialog__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../Domain/use_cases/GetAllMessagesForDialog */ \"./src/Domain/use_cases/GetAllMessagesForDialog.ts\");\n/* harmony import */ var _Data_repository_MessagesRepository__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../Data/repository/MessagesRepository */ \"./src/Data/repository/MessagesRepository.ts\");\n/* harmony import */ var _Domain_repository_Pagination__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../../Domain/repository/Pagination */ \"./src/Domain/repository/Pagination.ts\");\n/* harmony import */ var _Data_Stubs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../Data/Stubs */ \"./src/Data/Stubs.ts\");\n/* harmony import */ var _Domain_use_cases_UploadFileUseCase__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../../Domain/use_cases/UploadFileUseCase */ \"./src/Domain/use_cases/UploadFileUseCase.ts\");\n/* harmony import */ var _Data_repository_FileRepository__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../../Data/repository/FileRepository */ \"./src/Data/repository/FileRepository.ts\");\n/* harmony import */ var _utils_parse__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../../utils/parse */ \"./src/utils/parse.ts\");\n/* harmony import */ var _Domain_use_cases_SendTextMessageUseCase__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../../Domain/use_cases/SendTextMessageUseCase */ \"./src/Domain/use_cases/SendTextMessageUseCase.ts\");\n/* harmony import */ var _Domain_use_cases_SubscribeToDialogEventsUseCase__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../../Domain/use_cases/SubscribeToDialogEventsUseCase */ \"./src/Domain/use_cases/SubscribeToDialogEventsUseCase.ts\");\n/* harmony import */ var _providers_QuickBloxUIKitProvider_useEventMessagesRepository__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../providers/QuickBloxUIKitProvider/useEventMessagesRepository */ \"./src/Presentation/components/providers/QuickBloxUIKitProvider/useEventMessagesRepository.ts\");\n/* harmony import */ var _Domain_entity_EventMessageType__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../../Domain/entity/EventMessageType */ \"./src/Domain/entity/EventMessageType.ts\");\n/* harmony import */ var _Domain_entity_NotificationTypes__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../../Domain/entity/NotificationTypes */ \"./src/Domain/entity/NotificationTypes.ts\");\n/* harmony import */ var _Domain_use_cases_GetDialogByIdUseCase__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../../Domain/use_cases/GetDialogByIdUseCase */ \"./src/Domain/use_cases/GetDialogByIdUseCase.ts\");\n/* harmony import */ var _Data_repository_DialogsRepository__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../../Data/repository/DialogsRepository */ \"./src/Data/repository/DialogsRepository.ts\");\n/* harmony import */ var _Domain_use_cases_UserTypingMessageUseCase__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../../Domain/use_cases/UserTypingMessageUseCase */ \"./src/Domain/use_cases/UserTypingMessageUseCase.ts\");\nvar __assign = (undefined && undefined.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (undefined && undefined.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction useMessagesViewModel(dialogType, dialogEntity) {\n var _this = this;\n var _a;\n console.log('useMessagesViewModel');\n var _b = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false), loading = _b[0], setLoading = _b[1];\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n var _c = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)('error: wrong message list'), error = _c[0], setError = _c[1];\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n var _d = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]), messages = _d[0], setMessages = _d[1];\n // const [users, setUsers] = useState<Record<number, UserEntity>>();\n var _e = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(dialogEntity), dialog = _e[0], setDialog = _e[1];\n // const [dialogsParticipants, setDialogsParticipants] = useState<number[]>([]);\n var currentContext = (0,_providers_QuickBloxUIKitProvider_useQbInitializedDataContext__WEBPACK_IMPORTED_MODULE_2__[\"default\"])();\n var eventMessaging = (0,_providers_QuickBloxUIKitProvider_useEventMessagesRepository__WEBPACK_IMPORTED_MODULE_14__[\"default\"])();\n var subscribeToDialogEventsUseCase = new _Domain_use_cases_SubscribeToDialogEventsUseCase__WEBPACK_IMPORTED_MODULE_13__.SubscribeToDialogEventsUseCase(eventMessaging, 'MessagesViewModel');\n var _f = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''), typingText = _f[0], setTypingText = _f[1];\n function getMessages() {\n return __awaiter(this, void 0, void 0, function () {\n var participants, userDictionary, getAllUsersFromDialogByIdsUseCase, getDialogMessages;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n console.log('call getMessages in MessagesViewModelWithMockUseCase for dialog: ', JSON.stringify(dialog));\n setLoading(true);\n participants = [];\n userDictionary = {};\n if (dialog.type === _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__.DialogType.group) {\n participants = dialog.participantIds;\n }\n else if (dialog.type === _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__.DialogType[\"private\"]) {\n participants = [dialog.participantId];\n }\n else if (dialog.type === _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__.DialogType[\"public\"]) {\n participants = [];\n }\n getAllUsersFromDialogByIdsUseCase = new _Domain_use_cases_GetUsersByIdsUseCase__WEBPACK_IMPORTED_MODULE_3__.GetUsersByIdsUseCase(new _Data_repository_UsersRepository__WEBPACK_IMPORTED_MODULE_4__[\"default\"](currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), participants);\n //\n return [4 /*yield*/, getAllUsersFromDialogByIdsUseCase\n .execute()\n // eslint-disable-next-line promise/always-return\n .then(function (data) {\n console.log(\"use Message have dialog: \".concat(JSON.stringify(dialogEntity), \" getUsers:\").concat(JSON.stringify(data)));\n console.log('have users ids :', JSON.stringify(participants));\n userDictionary = data.reduce(function (acc, item) {\n var obj = acc;\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n acc[item.id] = item;\n return obj;\n }, {});\n console.log('have dictionary of users:', JSON.stringify(userDictionary));\n setLoading(false);\n setError('');\n })\n .catch(function (e) {\n console.log('have ERROR get users :', JSON.stringify(e));\n setLoading(false);\n setError(e.message);\n })];\n case 1:\n //\n _a.sent();\n getDialogMessages = new _Domain_use_cases_GetAllMessagesForDialog__WEBPACK_IMPORTED_MODULE_5__.GetAllMessagesForDialogMock(new _Data_repository_MessagesRepository__WEBPACK_IMPORTED_MODULE_6__[\"default\"](currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), dialog.id, new _Domain_repository_Pagination__WEBPACK_IMPORTED_MODULE_7__.Pagination());\n //\n return [4 /*yield*/, getDialogMessages\n .execute()\n // eslint-disable-next-line promise/always-return\n .then(function (data) {\n console.log(\"DIALOG: \".concat(JSON.stringify(dialogEntity), \" WITH \").concat(data.length, \" messages:\").concat(JSON.stringify(data)));\n var ResultMessages = data.map(function (message) {\n var obj = __assign({}, message);\n console.log('have sender id:', message.sender_id);\n if (userDictionary) {\n obj.sender = userDictionary[message.sender_id];\n }\n return obj;\n });\n console.log(\"result messages:\".concat(JSON.stringify(ResultMessages)));\n setMessages(ResultMessages);\n setLoading(false);\n setError('');\n })\n .catch(function (e) {\n console.log('have ERROR get users :', JSON.stringify(e));\n setLoading(false);\n setError(e.message);\n })];\n case 2:\n //\n _a.sent();\n //\n console.log('EXECUTE USE CASE MessagesViewModelWithMockUseCase EXECUTED');\n return [2 /*return*/];\n }\n });\n });\n }\n var dialogUpdateHandler = function (dialogInfo) {\n console.log('call dialogUpdateHandler in useMessagesViewModel');\n var getSender = function (sender_id) { return __awaiter(_this, void 0, void 0, function () {\n var getUser, userEntity;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n getUser = new _Domain_use_cases_GetUsersByIdsUseCase__WEBPACK_IMPORTED_MODULE_3__.GetUsersByIdsUseCase(new _Data_repository_UsersRepository__WEBPACK_IMPORTED_MODULE_4__[\"default\"](currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), [sender_id]);\n return [4 /*yield*/, getUser\n .execute()\n // eslint-disable-next-line promise/always-return\n .then(function (data) {\n // eslint-disable-next-line prefer-destructuring\n userEntity = data[0];\n })\n .catch(function (e) {\n console.log('have ERROR get users :', JSON.stringify(e));\n })];\n case 1:\n _a.sent();\n return [2 /*return*/, userEntity];\n }\n });\n }); };\n if (dialogInfo.eventMessageType === _Domain_entity_EventMessageType__WEBPACK_IMPORTED_MODULE_15__[\"default\"].LocalMessage) {\n if (dialogInfo.messageStatus) {\n if (dialogInfo.messageStatus.isTyping) {\n // eslint-disable-next-line promise/catch-or-return\n getSender(dialogInfo.messageStatus.userId).then(function (senderUser) {\n var typingMessage = \"User \".concat(\n // eslint-disable-next-line promise/always-return\n (senderUser === null || senderUser === void 0 ? void 0 : senderUser.full_name) ||\n (senderUser === null || senderUser === void 0 ? void 0 : senderUser.login) ||\n (senderUser === null || senderUser === void 0 ? void 0 : senderUser.email) ||\n (senderUser === null || senderUser === void 0 ? void 0 : senderUser.id) ||\n '', \" is typing message\");\n setTypingText(typingMessage);\n });\n }\n else {\n setTypingText('');\n }\n }\n }\n if (dialogInfo.eventMessageType === _Domain_entity_EventMessageType__WEBPACK_IMPORTED_MODULE_15__[\"default\"].RegularMessage) {\n if (dialogInfo.messageInfo &&\n dialogInfo.messageInfo.message &&\n dialogInfo.messageInfo.id &&\n dialogInfo.messageInfo.dialogId === dialog.id) {\n var messageId = dialogInfo.messageInfo.id;\n var messageText = dialogInfo.messageInfo.message;\n console.log(\"new message id = \".concat(messageId, \", new message text: \").concat(messageText, \", found messages:\"));\n var ResultMessage_1 = __assign({}, dialogInfo.messageInfo);\n // eslint-disable-next-line promise/catch-or-return,promise/always-return\n getSender(dialogInfo.messageInfo.sender_id)\n // eslint-disable-next-line promise/always-return\n .then(function (user) {\n ResultMessage_1.sender = user;\n ResultMessage_1.sender_id = dialogInfo.messageInfo.sender_id;\n })\n .finally(function () {\n setMessages(function (prevState) {\n var newState = __spreadArray([], prevState, true);\n newState.push(ResultMessage_1);\n return newState;\n });\n });\n }\n // else {\n // // загрузить все сообщения заново\n // getMessages().catch();\n // }\n }\n if (dialogInfo.eventMessageType === _Domain_entity_EventMessageType__WEBPACK_IMPORTED_MODULE_15__[\"default\"].SystemMessage) {\n if (dialogInfo.notificationTypes === _Domain_entity_NotificationTypes__WEBPACK_IMPORTED_MODULE_16__.NotificationTypes.UPDATE_DIALOG) {\n if (dialogInfo.messageInfo) {\n var dialogId = dialogInfo.messageInfo.dialogId;\n var getDialogByIdUseCase = new _Domain_use_cases_GetDialogByIdUseCase__WEBPACK_IMPORTED_MODULE_17__.GetDialogByIdUseCase(new _Data_repository_DialogsRepository__WEBPACK_IMPORTED_MODULE_18__[\"default\"](currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), dialogId);\n // eslint-disable-next-line promise/catch-or-return,promise/always-return\n getDialogByIdUseCase.execute().then(function (updatedDialog) {\n setDialog(updatedDialog);\n });\n }\n }\n }\n };\n subscribeToDialogEventsUseCase\n .execute(dialogUpdateHandler)\n .catch(function (reason) {\n console.log((0,_utils_parse__WEBPACK_IMPORTED_MODULE_11__.stringifyError)(reason));\n });\n //\n // eslint-disable-next-line @typescript-eslint/require-await\n var release = function () {\n console.log('call release in MessagesViewModelWithMockUseCase');\n };\n var userTypingMessageUseCase = new _Domain_use_cases_UserTypingMessageUseCase__WEBPACK_IMPORTED_MODULE_19__.UserTypingMessageUseCase(new _Data_repository_MessagesRepository__WEBPACK_IMPORTED_MODULE_6__[\"default\"](currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), dialog || dialogEntity, ((_a = currentContext.storage.REMOTE_DATA_SOURCE.authInformation) === null || _a === void 0 ? void 0 : _a.userId) || 0);\n var sendTypingTextMessage = function () {\n console.log('call release in MessagesViewModelWithMockUseCase');\n userTypingMessageUseCase.execute().catch(function (reason) {\n var errorMessage = (0,_utils_parse__WEBPACK_IMPORTED_MODULE_11__.stringifyError)(reason);\n console.log('have exception in sendTypingTextMessage: ', errorMessage);\n throw new Error(errorMessage);\n });\n };\n var uploadFile = function (file) { return __awaiter(_this, void 0, void 0, function () {\n var fileEntity, uploadFileUseCase, resultEnity;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n console.log('call uploadFile(), file: ', file);\n fileEntity = _Data_Stubs__WEBPACK_IMPORTED_MODULE_8__.Stubs.createFileEntityWithDefaultValues();\n fileEntity.data = file;\n fileEntity.uid = '';\n fileEntity.name = file.name;\n fileEntity.size = file.size;\n fileEntity.type = file.type;\n uploadFileUseCase = new _Domain_use_cases_UploadFileUseCase__WEBPACK_IMPORTED_MODULE_9__.UploadFileUseCase(new _Data_repository_FileRepository__WEBPACK_IMPORTED_MODULE_10__.FileRepository(currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), fileEntity);\n return [4 /*yield*/, uploadFileUseCase\n .execute()\n .catch(function (e) {\n console.log('Error UploadFileUseCase: ', (0,_utils_parse__WEBPACK_IMPORTED_MODULE_11__.stringifyError)(e));\n throw new Error((0,_utils_parse__WEBPACK_IMPORTED_MODULE_11__.stringifyError)(e));\n })];\n case 1:\n resultEnity = _a.sent();\n return [2 /*return*/, Promise.resolve(resultEnity)];\n }\n });\n }); };\n function sendMessage(messageToSend) {\n var sendTextMessageUseCase = new _Domain_use_cases_SendTextMessageUseCase__WEBPACK_IMPORTED_MODULE_12__.SendTextMessageUseCase(new _Data_repository_MessagesRepository__WEBPACK_IMPORTED_MODULE_6__[\"default\"](currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), messageToSend);\n // eslint-disable-next-line promise/catch-or-return\n sendTextMessageUseCase\n .execute()\n .catch(function (reason) {\n var errorMessage = (0,_utils_parse__WEBPACK_IMPORTED_MODULE_11__.stringifyError)(reason);\n console.log('exception in sendMessage in useMessagesViewModel', errorMessage);\n setLoading(false);\n throw new Error(errorMessage);\n })\n .finally(function () {\n setLoading(false);\n });\n }\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n var sendTextMessage = function (newMessage) {\n var _a;\n setLoading(true);\n var currentUserId = ((_a = currentContext.storage.REMOTE_DATA_SOURCE.authInformation) === null || _a === void 0 ? void 0 : _a.userId) || 0;\n var messageToSend = _Data_Stubs__WEBPACK_IMPORTED_MODULE_8__.Stubs.createMessageEntityWithParams('', dialog.id, newMessage, Date.now().toString(), Date.now(), Date.now().toString(), [], [], 1, currentUserId, // artan 22.06.23\n dialog.type === _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__.DialogType[\"private\"]\n ? dialog.participantId\n : currentUserId, [], '', _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__.DialogType.group);\n messageToSend.dialogType = dialog.type;\n sendMessage(messageToSend);\n };\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n var sendAttachmentMessage = function (newMessage) {\n var _a;\n console.log('call sendTextMessage');\n setLoading(true);\n var currentUserId = ((_a = currentContext.storage.REMOTE_DATA_SOURCE.authInformation) === null || _a === void 0 ? void 0 : _a.userId) || 0;\n uploadFile(newMessage)\n // eslint-disable-next-line promise/always-return\n .then(function (fileMessage) {\n console.log(JSON.stringify(fileMessage));\n // '[attachment]'\n var messageToSend = _Data_Stubs__WEBPACK_IMPORTED_MODULE_8__.Stubs.createMessageEntityWithParams('', dialog.id, \n // eslint-disable-next-line promise/always-return\n fileMessage.name || '[attachment]', Date.now().toString(), Date.now(), Date.now().toString(), [], [], 1, currentUserId, currentUserId, [], '', _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__.DialogType.group);\n messageToSend.dialogType = dialog.type;\n var attachments = [\n {\n id: fileMessage.uid,\n type: fileMessage.type,\n file: fileMessage,\n name: fileMessage.name,\n size: fileMessage.size,\n },\n ];\n messageToSend.attachments = attachments;\n sendMessage(messageToSend);\n //\n })\n .catch(function (reason) {\n var errorMessage = (0,_utils_parse__WEBPACK_IMPORTED_MODULE_11__.stringifyError)(reason);\n console.log('EXCEPTION in sendAttachmentMessage');\n throw new Error(errorMessage);\n });\n };\n return {\n get entity() {\n return dialog;\n },\n set entity(newDialog) {\n setDialog(newDialog);\n },\n messages: messages,\n loading: loading,\n error: error,\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n getMessages: getMessages,\n release: release,\n sendTextMessage: sendTextMessage,\n sendAttachmentMessage: sendAttachmentMessage,\n sendTypingTextMessage: sendTypingTextMessage,\n typingText: typingText,\n };\n}\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/Presentation/components/UI/Dialogs/MessagesView/useMessagesViewModel.ts?");
2107
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ useMessagesViewModel; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../Domain/entity/DialogTypes */ \"./src/Domain/entity/DialogTypes.ts\");\n/* harmony import */ var _providers_QuickBloxUIKitProvider_useQbInitializedDataContext__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../providers/QuickBloxUIKitProvider/useQbInitializedDataContext */ \"./src/Presentation/components/providers/QuickBloxUIKitProvider/useQbInitializedDataContext.ts\");\n/* harmony import */ var _Domain_use_cases_GetUsersByIdsUseCase__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../Domain/use_cases/GetUsersByIdsUseCase */ \"./src/Domain/use_cases/GetUsersByIdsUseCase.ts\");\n/* harmony import */ var _Data_repository_UsersRepository__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../Data/repository/UsersRepository */ \"./src/Data/repository/UsersRepository.ts\");\n/* harmony import */ var _Domain_use_cases_GetAllMessagesForDialog__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../Domain/use_cases/GetAllMessagesForDialog */ \"./src/Domain/use_cases/GetAllMessagesForDialog.ts\");\n/* harmony import */ var _Data_repository_MessagesRepository__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../Data/repository/MessagesRepository */ \"./src/Data/repository/MessagesRepository.ts\");\n/* harmony import */ var _Domain_repository_Pagination__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../../Domain/repository/Pagination */ \"./src/Domain/repository/Pagination.ts\");\n/* harmony import */ var _Data_Stubs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../Data/Stubs */ \"./src/Data/Stubs.ts\");\n/* harmony import */ var _Domain_use_cases_UploadFileUseCase__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../../Domain/use_cases/UploadFileUseCase */ \"./src/Domain/use_cases/UploadFileUseCase.ts\");\n/* harmony import */ var _Data_repository_FileRepository__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../../Data/repository/FileRepository */ \"./src/Data/repository/FileRepository.ts\");\n/* harmony import */ var _utils_parse__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../../utils/parse */ \"./src/utils/parse.ts\");\n/* harmony import */ var _Domain_use_cases_SendTextMessageUseCase__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../../Domain/use_cases/SendTextMessageUseCase */ \"./src/Domain/use_cases/SendTextMessageUseCase.ts\");\n/* harmony import */ var _Domain_use_cases_SubscribeToDialogEventsUseCase__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../../Domain/use_cases/SubscribeToDialogEventsUseCase */ \"./src/Domain/use_cases/SubscribeToDialogEventsUseCase.ts\");\n/* harmony import */ var _providers_QuickBloxUIKitProvider_useEventMessagesRepository__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../providers/QuickBloxUIKitProvider/useEventMessagesRepository */ \"./src/Presentation/components/providers/QuickBloxUIKitProvider/useEventMessagesRepository.ts\");\n/* harmony import */ var _Domain_entity_EventMessageType__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../../Domain/entity/EventMessageType */ \"./src/Domain/entity/EventMessageType.ts\");\n/* harmony import */ var _Domain_entity_NotificationTypes__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../../Domain/entity/NotificationTypes */ \"./src/Domain/entity/NotificationTypes.ts\");\n/* harmony import */ var _Domain_use_cases_GetDialogByIdUseCase__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../../Domain/use_cases/GetDialogByIdUseCase */ \"./src/Domain/use_cases/GetDialogByIdUseCase.ts\");\n/* harmony import */ var _Data_repository_DialogsRepository__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../../Data/repository/DialogsRepository */ \"./src/Data/repository/DialogsRepository.ts\");\n/* harmony import */ var _Domain_use_cases_UserTypingMessageUseCase__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../../Domain/use_cases/UserTypingMessageUseCase */ \"./src/Domain/use_cases/UserTypingMessageUseCase.ts\");\nvar __assign = (undefined && undefined.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (undefined && undefined.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __spreadArray = (undefined && undefined.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction useMessagesViewModel(dialogType, dialogEntity) {\n var _this = this;\n var _a;\n console.log('useMessagesViewModel');\n var _b = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false), loading = _b[0], setLoading = _b[1];\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n var _c = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)('error: wrong message list'), error = _c[0], setError = _c[1];\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n var _d = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]), messages = _d[0], setMessages = _d[1];\n // const [users, setUsers] = useState<Record<number, UserEntity>>();\n var _e = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(dialogEntity), dialog = _e[0], setDialog = _e[1];\n // const [dialogsParticipants, setDialogsParticipants] = useState<number[]>([]);\n var currentContext = (0,_providers_QuickBloxUIKitProvider_useQbInitializedDataContext__WEBPACK_IMPORTED_MODULE_2__[\"default\"])();\n var eventMessaging = (0,_providers_QuickBloxUIKitProvider_useEventMessagesRepository__WEBPACK_IMPORTED_MODULE_14__[\"default\"])();\n var subscribeToDialogEventsUseCase = new _Domain_use_cases_SubscribeToDialogEventsUseCase__WEBPACK_IMPORTED_MODULE_13__.SubscribeToDialogEventsUseCase(eventMessaging, 'MessagesViewModel');\n var _f = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''), typingText = _f[0], setTypingText = _f[1];\n function getMessages() {\n return __awaiter(this, void 0, void 0, function () {\n var participants, userDictionary, getAllUsersFromDialogByIdsUseCase, getDialogMessages;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n console.log('call getMessages in MessagesViewModelWithMockUseCase for dialog: ', JSON.stringify(dialog));\n setLoading(true);\n participants = [];\n userDictionary = {};\n if (dialog.type === _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__.DialogType.group) {\n participants = dialog.participantIds;\n }\n else if (dialog.type === _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__.DialogType[\"private\"]) {\n participants = [dialog.participantId];\n }\n else if (dialog.type === _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__.DialogType[\"public\"]) {\n participants = [];\n }\n getAllUsersFromDialogByIdsUseCase = new _Domain_use_cases_GetUsersByIdsUseCase__WEBPACK_IMPORTED_MODULE_3__.GetUsersByIdsUseCase(new _Data_repository_UsersRepository__WEBPACK_IMPORTED_MODULE_4__[\"default\"](currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), participants);\n //\n return [4 /*yield*/, getAllUsersFromDialogByIdsUseCase\n .execute()\n // eslint-disable-next-line promise/always-return\n .then(function (data) {\n console.log(\"use Message have dialog: \".concat(JSON.stringify(dialogEntity), \" getUsers:\").concat(JSON.stringify(data)));\n console.log('have users ids :', JSON.stringify(participants));\n userDictionary = data.reduce(function (acc, item) {\n var obj = acc;\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n acc[item.id] = item;\n return obj;\n }, {});\n console.log('have dictionary of users:', JSON.stringify(userDictionary));\n setLoading(false);\n setError('');\n })\n .catch(function (e) {\n console.log('have ERROR get users :', JSON.stringify(e));\n setLoading(false);\n setError(e.message);\n })];\n case 1:\n //\n _a.sent();\n getDialogMessages = new _Domain_use_cases_GetAllMessagesForDialog__WEBPACK_IMPORTED_MODULE_5__.GetAllMessagesForDialogMock(new _Data_repository_MessagesRepository__WEBPACK_IMPORTED_MODULE_6__[\"default\"](currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), dialog.id, new _Domain_repository_Pagination__WEBPACK_IMPORTED_MODULE_7__.Pagination());\n //\n return [4 /*yield*/, getDialogMessages\n .execute()\n // eslint-disable-next-line promise/always-return\n .then(function (data) {\n console.log(\"DIALOG: \".concat(JSON.stringify(dialogEntity), \" WITH \").concat(data.length, \" messages:\").concat(JSON.stringify(data)));\n var ResultMessages = data.map(function (message) {\n var obj = __assign({}, message);\n console.log('have sender id:', message.sender_id);\n if (userDictionary) {\n obj.sender = userDictionary[message.sender_id];\n }\n return obj;\n });\n console.log(\"result messages:\".concat(JSON.stringify(ResultMessages)));\n setMessages(ResultMessages);\n setLoading(false);\n setError('');\n })\n .catch(function (e) {\n console.log('have ERROR get users :', JSON.stringify(e));\n setLoading(false);\n setError(e.message);\n })];\n case 2:\n //\n _a.sent();\n //\n console.log('EXECUTE USE CASE MessagesViewModelWithMockUseCase EXECUTED');\n return [2 /*return*/];\n }\n });\n });\n }\n var dialogUpdateHandler = function (dialogInfo) {\n console.log('call dialogUpdateHandler in useMessagesViewModel');\n var getSender = function (sender_id) { return __awaiter(_this, void 0, void 0, function () {\n var getUser, userEntity;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n getUser = new _Domain_use_cases_GetUsersByIdsUseCase__WEBPACK_IMPORTED_MODULE_3__.GetUsersByIdsUseCase(new _Data_repository_UsersRepository__WEBPACK_IMPORTED_MODULE_4__[\"default\"](currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), [sender_id]);\n return [4 /*yield*/, getUser\n .execute()\n // eslint-disable-next-line promise/always-return\n .then(function (data) {\n // eslint-disable-next-line prefer-destructuring\n userEntity = data[0];\n })\n .catch(function (e) {\n console.log('have ERROR get users :', JSON.stringify(e));\n })];\n case 1:\n _a.sent();\n return [2 /*return*/, userEntity];\n }\n });\n }); };\n if (dialogInfo.eventMessageType === _Domain_entity_EventMessageType__WEBPACK_IMPORTED_MODULE_15__[\"default\"].LocalMessage) {\n if (dialogInfo.messageStatus) {\n if (dialogInfo.messageStatus.isTyping) {\n // eslint-disable-next-line promise/catch-or-return\n getSender(dialogInfo.messageStatus.userId).then(function (senderUser) {\n var typingMessage = \"User \".concat(\n // eslint-disable-next-line promise/always-return\n (senderUser === null || senderUser === void 0 ? void 0 : senderUser.full_name) ||\n (senderUser === null || senderUser === void 0 ? void 0 : senderUser.login) ||\n (senderUser === null || senderUser === void 0 ? void 0 : senderUser.email) ||\n (senderUser === null || senderUser === void 0 ? void 0 : senderUser.id) ||\n '', \" is typing message\");\n setTypingText(typingMessage);\n });\n }\n else {\n setTypingText('');\n }\n }\n }\n if (dialogInfo.eventMessageType === _Domain_entity_EventMessageType__WEBPACK_IMPORTED_MODULE_15__[\"default\"].RegularMessage) {\n if (dialogInfo.messageInfo &&\n dialogInfo.messageInfo.message &&\n dialogInfo.messageInfo.id &&\n dialogInfo.messageInfo.dialogId === dialog.id) {\n var messageId = dialogInfo.messageInfo.id;\n var messageText = dialogInfo.messageInfo.message;\n console.log(\"new message id = \".concat(messageId, \", new message text: \").concat(messageText, \", found messages:\"));\n var ResultMessage_1 = __assign({}, dialogInfo.messageInfo);\n // eslint-disable-next-line promise/catch-or-return,promise/always-return\n getSender(dialogInfo.messageInfo.sender_id)\n // eslint-disable-next-line promise/always-return\n .then(function (user) {\n ResultMessage_1.sender = user;\n ResultMessage_1.sender_id = dialogInfo.messageInfo.sender_id;\n })\n .finally(function () {\n setMessages(function (prevState) {\n var newState = __spreadArray([], prevState, true);\n newState.push(ResultMessage_1);\n return newState;\n });\n });\n }\n // else {\n // // загрузить все сообщения заново\n // getMessages().catch();\n // }\n }\n if (dialogInfo.eventMessageType === _Domain_entity_EventMessageType__WEBPACK_IMPORTED_MODULE_15__[\"default\"].SystemMessage) {\n if (dialogInfo.notificationTypes === _Domain_entity_NotificationTypes__WEBPACK_IMPORTED_MODULE_16__.NotificationTypes.UPDATE_DIALOG) {\n if (dialogInfo.messageInfo) {\n var dialogId = dialogInfo.messageInfo.dialogId;\n var getDialogByIdUseCase = new _Domain_use_cases_GetDialogByIdUseCase__WEBPACK_IMPORTED_MODULE_17__.GetDialogByIdUseCase(new _Data_repository_DialogsRepository__WEBPACK_IMPORTED_MODULE_18__[\"default\"](currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), dialogId);\n // eslint-disable-next-line promise/catch-or-return,promise/always-return\n getDialogByIdUseCase.execute().then(function (updatedDialog) {\n setDialog(updatedDialog);\n });\n }\n }\n }\n };\n subscribeToDialogEventsUseCase\n .execute(dialogUpdateHandler)\n .catch(function (reason) {\n console.log((0,_utils_parse__WEBPACK_IMPORTED_MODULE_11__.stringifyError)(reason));\n });\n //\n // eslint-disable-next-line @typescript-eslint/require-await\n var release = function () {\n console.log('call release in MessagesViewModelWithMockUseCase');\n };\n var userTypingMessageUseCase = new _Domain_use_cases_UserTypingMessageUseCase__WEBPACK_IMPORTED_MODULE_19__.UserTypingMessageUseCase(new _Data_repository_MessagesRepository__WEBPACK_IMPORTED_MODULE_6__[\"default\"](currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), dialog || dialogEntity, ((_a = currentContext.storage.REMOTE_DATA_SOURCE.authInformation) === null || _a === void 0 ? void 0 : _a.userId) || 0);\n var sendTypingTextMessage = function () {\n console.log('call release in MessagesViewModelWithMockUseCase');\n userTypingMessageUseCase.execute().catch(function (reason) {\n var errorMessage = (0,_utils_parse__WEBPACK_IMPORTED_MODULE_11__.stringifyError)(reason);\n console.log('have exception in sendTypingTextMessage: ', errorMessage);\n throw new Error(errorMessage);\n });\n };\n var uploadFile = function (file) { return __awaiter(_this, void 0, void 0, function () {\n var fileEntity, uploadFileUseCase, resultEnity;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n console.log('call uploadFile(), file: ', file);\n fileEntity = _Data_Stubs__WEBPACK_IMPORTED_MODULE_8__.Stubs.createFileEntityWithDefaultValues();\n fileEntity.data = file;\n fileEntity.uid = '';\n fileEntity.name = file.name;\n fileEntity.size = file.size;\n fileEntity.type = file.type;\n uploadFileUseCase = new _Domain_use_cases_UploadFileUseCase__WEBPACK_IMPORTED_MODULE_9__.UploadFileUseCase(new _Data_repository_FileRepository__WEBPACK_IMPORTED_MODULE_10__.FileRepository(currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), fileEntity);\n return [4 /*yield*/, uploadFileUseCase\n .execute()\n .catch(function (e) {\n console.log('Error UploadFileUseCase: ', (0,_utils_parse__WEBPACK_IMPORTED_MODULE_11__.stringifyError)(e));\n throw new Error((0,_utils_parse__WEBPACK_IMPORTED_MODULE_11__.stringifyError)(e));\n })];\n case 1:\n resultEnity = _a.sent();\n return [2 /*return*/, Promise.resolve(resultEnity)];\n }\n });\n }); };\n function sendMessage(messageToSend) {\n var sendTextMessageUseCase = new _Domain_use_cases_SendTextMessageUseCase__WEBPACK_IMPORTED_MODULE_12__.SendTextMessageUseCase(new _Data_repository_MessagesRepository__WEBPACK_IMPORTED_MODULE_6__[\"default\"](currentContext.storage.LOCAL_DATA_SOURCE, currentContext.storage.REMOTE_DATA_SOURCE), messageToSend);\n // eslint-disable-next-line promise/catch-or-return\n sendTextMessageUseCase\n .execute()\n .catch(function (reason) {\n var errorMessage = (0,_utils_parse__WEBPACK_IMPORTED_MODULE_11__.stringifyError)(reason);\n console.log('exception in sendMessage in useMessagesViewModel', errorMessage);\n setLoading(false);\n throw new Error(errorMessage);\n })\n .finally(function () {\n setLoading(false);\n });\n }\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n var sendTextMessage = function (newMessage) {\n var _a;\n setLoading(true);\n var currentUserId = ((_a = currentContext.storage.REMOTE_DATA_SOURCE.authInformation) === null || _a === void 0 ? void 0 : _a.userId) || 0;\n var messageToSend = _Data_Stubs__WEBPACK_IMPORTED_MODULE_8__.Stubs.createMessageEntityWithParams('', dialog.id, newMessage, Date.now().toString(), Date.now(), Date.now().toString(), [], [], 1, currentUserId, // artan 22.06.23\n dialog.type === _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__.DialogType[\"private\"]\n ? dialog.participantId\n : currentUserId, [], '', _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__.DialogType.group);\n messageToSend.dialogType = dialog.type;\n sendMessage(messageToSend);\n };\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n var sendAttachmentMessage = function (newMessage) {\n var _a;\n console.log('call sendTextMessage');\n setLoading(true);\n var currentUserId = ((_a = currentContext.storage.REMOTE_DATA_SOURCE.authInformation) === null || _a === void 0 ? void 0 : _a.userId) || 0;\n uploadFile(newMessage)\n // eslint-disable-next-line promise/always-return\n .then(function (fileMessage) {\n console.log(JSON.stringify(fileMessage));\n // '[attachment]'\n var messageToSend = _Data_Stubs__WEBPACK_IMPORTED_MODULE_8__.Stubs.createMessageEntityWithParams('', dialog.id, \n // eslint-disable-next-line promise/always-return\n fileMessage.name || '[attachment]', Date.now().toString(), Date.now(), Date.now().toString(), [], [], 1, currentUserId, currentUserId, [], '', _Domain_entity_DialogTypes__WEBPACK_IMPORTED_MODULE_1__.DialogType.group);\n messageToSend.dialogType = dialog.type;\n var attachments = [\n {\n id: fileMessage.id,\n uid: fileMessage.uid,\n type: fileMessage.type,\n file: fileMessage,\n name: fileMessage.name,\n size: fileMessage.size,\n url: fileMessage.url,\n },\n ];\n messageToSend.attachments = attachments;\n sendMessage(messageToSend);\n //\n })\n .catch(function (reason) {\n var errorMessage = (0,_utils_parse__WEBPACK_IMPORTED_MODULE_11__.stringifyError)(reason);\n console.log('EXCEPTION in sendAttachmentMessage');\n throw new Error(errorMessage);\n });\n };\n return {\n get entity() {\n return dialog;\n },\n set entity(newDialog) {\n setDialog(newDialog);\n },\n messages: messages,\n loading: loading,\n error: error,\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n getMessages: getMessages,\n release: release,\n sendTextMessage: sendTextMessage,\n sendAttachmentMessage: sendAttachmentMessage,\n sendTypingTextMessage: sendTypingTextMessage,\n typingText: typingText,\n };\n}\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/Presentation/components/UI/Dialogs/MessagesView/useMessagesViewModel.ts?");
2108
2108
 
2109
2109
  /***/ }),
2110
2110
 
@@ -2698,7 +2698,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var reac
2698
2698
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
2699
2699
 
2700
2700
  "use strict";
2701
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _providers_QuickBloxUIKitProvider_useQbInitializedDataContext__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../providers/QuickBloxUIKitProvider/useQbInitializedDataContext */ \"./src/Presentation/components/providers/QuickBloxUIKitProvider/useQbInitializedDataContext.ts\");\n/* harmony import */ var _Views_Dialogs_Dialogs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../Views/Dialogs/Dialogs */ \"./src/Presentation/Views/Dialogs/Dialogs.tsx\");\n/* harmony import */ var _UI_Dialogs_DialogInformation_DialogInformation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../UI/Dialogs/DialogInformation/DialogInformation */ \"./src/Presentation/components/UI/Dialogs/DialogInformation/DialogInformation.tsx\");\n/* harmony import */ var _DesktopLayout__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./DesktopLayout */ \"./src/Presentation/components/layouts/Desktop/DesktopLayout.tsx\");\n/* harmony import */ var _UI_Dialogs_MessagesView_MessagesView__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../UI/Dialogs/MessagesView/MessagesView */ \"./src/Presentation/components/UI/Dialogs/MessagesView/MessagesView.tsx\");\n/* harmony import */ var _Views_Dialogs_useDialogsViewModel__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../Views/Dialogs/useDialogsViewModel */ \"./src/Presentation/Views/Dialogs/useDialogsViewModel.ts\");\n/* harmony import */ var _Domain_repository_Pagination__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../Domain/repository/Pagination */ \"./src/Domain/repository/Pagination.ts\");\n/* harmony import */ var _QBconfig__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../QBconfig */ \"./src/QBconfig.ts\");\n/* harmony import */ var _UI_Dialogs_MessagesView_AIWidgets_UseDefaultAIAssistAnswerWidget__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIAssistAnswerWidget */ \"./src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIAssistAnswerWidget.tsx\");\n/* harmony import */ var _UI_Dialogs_MessagesView_AIWidgets_UseDefaultAITranslateWidget__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../UI/Dialogs/MessagesView/AIWidgets/UseDefaultAITranslateWidget */ \"./src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/UseDefaultAITranslateWidget.tsx\");\n/* harmony import */ var _UI_Dialogs_MessagesView_AIWidgets_UseDefaultAIRephraseMessageWidget__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIRephraseMessageWidget */ \"./src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIRephraseMessageWidget.tsx\");\n/* harmony import */ var _Data_DefaultConfigurations__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../Data/DefaultConfigurations */ \"./src/Data/DefaultConfigurations.ts\");\nvar __assign = (undefined && undefined.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar QuickBloxUIKitDesktopLayout = function (_a) {\n var _b, _c, _d;\n var _e = _a.theme, theme = _e === void 0 ? undefined : _e, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _f = _a.AITranslate, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n AITranslate = _f === void 0 ? undefined : _f, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _g = _a.AIRephrase, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n AIRephrase = _g === void 0 ? undefined : _g, _h = _a.AIAssist, AIAssist = _h === void 0 ? undefined : _h;\n console.log('create QuickBloxUIKitDesktopLayout');\n var _j = react__WEBPACK_IMPORTED_MODULE_1___default().useState(), selectedDialog = _j[0], setSelectedDialog = _j[1];\n var currentContext = (0,_providers_QuickBloxUIKitProvider_useQbInitializedDataContext__WEBPACK_IMPORTED_MODULE_2__[\"default\"])();\n // const eventMessaging = useEventMessagesRepository();\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n var userName = (_b = currentContext.storage.REMOTE_DATA_SOURCE.authInformation) === null || _b === void 0 ? void 0 : _b.userName;\n var userId = (_c = currentContext.storage.REMOTE_DATA_SOURCE.authInformation) === null || _c === void 0 ? void 0 : _c.userId;\n var sessionToken = (_d = currentContext.storage.REMOTE_DATA_SOURCE.authInformation) === null || _d === void 0 ? void 0 : _d.sessionToken;\n var dialogsViewModel = (0,_Views_Dialogs_useDialogsViewModel__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(currentContext);\n var defaultAIEditMessageWidget = AIRephrase === null || AIRephrase === void 0 ? void 0 : AIRephrase.AIWidget; // useDefaultTextInputWidget();\n var defaultAITranslateWidget = AITranslate === null || AITranslate === void 0 ? void 0 : AITranslate.AIWidget;\n var defaultAIAnswerToMessageWidget = AIAssist === null || AIAssist === void 0 ? void 0 : AIAssist.AIWidget;\n var getAIAssistAnswer = function () {\n if ((AIAssist === null || AIAssist === void 0 ? void 0 : AIAssist.enabled) && !(AIAssist === null || AIAssist === void 0 ? void 0 : AIAssist.default)) {\n defaultAIAnswerToMessageWidget = AIAssist.AIWidget;\n }\n else if ((AIAssist === null || AIAssist === void 0 ? void 0 : AIAssist.enabled) ||\n _QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AIAnswerAssistWidgetConfig.useDefault) {\n if (!_QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AIAnswerAssistWidgetConfig.useDefault ||\n (AIAssist && !(AIAssist === null || AIAssist === void 0 ? void 0 : AIAssist.default))) {\n defaultAIAnswerToMessageWidget = undefined;\n }\n else {\n var apiKey = _QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AIAnswerAssistWidgetConfig.apiKey;\n var token = '';\n if (apiKey) {\n token = apiKey;\n }\n else {\n token =\n _QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AIAnswerAssistWidgetConfig.proxyConfig.sessionToken ||\n sessionToken ||\n '';\n }\n var proxyConfig = _QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AIAnswerAssistWidgetConfig.proxyConfig ||\n _Data_DefaultConfigurations__WEBPACK_IMPORTED_MODULE_13__.DefaultConfigurations.getDefaultProxyConfig();\n defaultAIAnswerToMessageWidget = (0,_UI_Dialogs_MessagesView_AIWidgets_UseDefaultAIAssistAnswerWidget__WEBPACK_IMPORTED_MODULE_10__[\"default\"])(__assign(__assign({}, proxyConfig), { sessionToken: token, apiKey: apiKey }));\n }\n }\n };\n var getAITranslate = function () {\n if ((AITranslate === null || AITranslate === void 0 ? void 0 : AITranslate.enabled) && !(AITranslate === null || AITranslate === void 0 ? void 0 : AITranslate.default)) {\n defaultAITranslateWidget = AITranslate.AIWidget;\n }\n else if ((AITranslate === null || AITranslate === void 0 ? void 0 : AITranslate.enabled) ||\n _QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AITranslateWidgetConfig.useDefault) {\n if (!_QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AITranslateWidgetConfig.useDefault ||\n (AITranslate && !(AITranslate === null || AITranslate === void 0 ? void 0 : AITranslate.default))) {\n defaultAITranslateWidget = undefined;\n }\n else {\n var apiKey = _QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AITranslateWidgetConfig.apiKey;\n var token = '';\n if (apiKey) {\n token = apiKey;\n }\n else {\n token =\n _QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AITranslateWidgetConfig.proxyConfig.sessionToken ||\n sessionToken ||\n '';\n }\n var proxyConfig = _QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AITranslateWidgetConfig.proxyConfig ||\n _Data_DefaultConfigurations__WEBPACK_IMPORTED_MODULE_13__.DefaultConfigurations.getDefaultProxyConfig();\n defaultAITranslateWidget = (0,_UI_Dialogs_MessagesView_AIWidgets_UseDefaultAITranslateWidget__WEBPACK_IMPORTED_MODULE_11__[\"default\"])(__assign(__assign({}, proxyConfig), { sessionToken: token, apiKey: apiKey }));\n }\n }\n };\n var getAIRephrase = function () {\n if ((AIRephrase === null || AIRephrase === void 0 ? void 0 : AIRephrase.enabled) && !(AIRephrase === null || AIRephrase === void 0 ? void 0 : AIRephrase.default)) {\n defaultAIEditMessageWidget = AIRephrase.AIWidget;\n }\n else if ((AIRephrase === null || AIRephrase === void 0 ? void 0 : AIRephrase.enabled) ||\n _QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AIRephraseWidgetConfig.useDefault) {\n if (!_QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AIRephraseWidgetConfig.useDefault ||\n (AIRephrase && !(AIRephrase === null || AIRephrase === void 0 ? void 0 : AIRephrase.default))) {\n defaultAIEditMessageWidget = undefined;\n }\n else {\n var apiKey = _QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AIRephraseWidgetConfig.apiKey;\n var token = '';\n if (apiKey) {\n token = apiKey;\n }\n else {\n token =\n _QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AIRephraseWidgetConfig.proxyConfig.sessionToken ||\n sessionToken ||\n '';\n }\n var proxyConfig = _QBconfig__WEBPACK_IMPORTED_MODULE_9__.QBConfig.configAIApi.AIRephraseWidgetConfig.proxyConfig ||\n _Data_DefaultConfigurations__WEBPACK_IMPORTED_MODULE_13__.DefaultConfigurations.getDefaultProxyConfig();\n defaultAIEditMessageWidget = (0,_UI_Dialogs_MessagesView_AIWidgets_UseDefaultAIRephraseMessageWidget__WEBPACK_IMPORTED_MODULE_12__[\"default\"])(__assign(__assign({}, proxyConfig), { sessionToken: token, apiKey: apiKey }));\n }\n }\n };\n getAITranslate();\n getAIRephrase();\n getAIAssistAnswer();\n var selectDialogActions = function (item) {\n if (!dialogsViewModel.loading) {\n setSelectedDialog(item);\n }\n };\n // const subscribeToDialogEventsUseCase: SubscribeToDialogEventsUseCase =\n // new SubscribeToDialogEventsUseCase(eventMessaging, 'TestStage');\n // инициализация СДК и загрузка тестовых данных, запуск пинга - может не быть\n // todo: добавить метод в контекст\n var isAuthProcessed = function () {\n console.log('call isAuthProcessed');\n var result = currentContext.storage.REMOTE_DATA_SOURCE.needInit === false &&\n currentContext.storage.REMOTE_DATA_SOURCE.authProcessed &&\n currentContext.storage.CONNECTION_REPOSITORY.needInit === false;\n console.log(\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n \"initialValue.REMOTE_DATA_SOURCE_MOCK.needInit: \".concat(currentContext.storage.REMOTE_DATA_SOURCE.needInit));\n console.log(\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n \"initialValue.REMOTE_DATA_SOURCE_MOCK.authProcessed: \".concat(currentContext.storage.REMOTE_DATA_SOURCE.authProcessed));\n console.log(\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n \"initialValue.CONNECTION_REPOSITORY.needInit: \".concat(currentContext.storage.CONNECTION_REPOSITORY.needInit));\n return result;\n };\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {\n console.log('TestStage: GET DATA ');\n console.log(\"auth data: \".concat(JSON.stringify(currentContext.InitParams.loginData), \" at \").concat(new Date().toLocaleTimeString()));\n if (isAuthProcessed()) {\n console.log('auth is completed, CAN GET DATA');\n var pagination = new _Domain_repository_Pagination__WEBPACK_IMPORTED_MODULE_8__.Pagination();\n dialogsViewModel === null || dialogsViewModel === void 0 ? void 0 : dialogsViewModel.getDialogs(pagination);\n }\n return function () {\n console.log('TestStage: USE EFFECT release');\n dialogsViewModel.release();\n };\n }, []); // сейчас это выполняется один раз при старте, а нужно каждый раз при смене пользователя\n // const dialogsEventHandler = (dialogInfo: DialogEventInfo) => {\n // console.log('call dialogsEventHandler in QuickBloxUIKitDesktopLayout');\n // if (dialogInfo.eventMessageType === EventMessageType.SystemMessage) {\n // switch (dialogInfo.notificationTypes) {\n // case NotificationTypes.DELETE_LEAVE_DIALOG: {\n // if (\n // dialogInfo.messageInfo &&\n // dialogInfo.messageInfo.sender_id === userId\n // ) {\n // setSelectedDialog(undefined);\n // }\n //\n // break;\n // }\n // default: {\n // const pagination: Pagination = new Pagination();\n //\n // dialogsViewModel?.getDialogs(pagination);\n // break;\n // }\n // }\n // }\n // };\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {\n console.log('TestStage: GET DATA AFTER User data has CHANGED');\n console.log(\"auth is \".concat(JSON.stringify(currentContext.InitParams.loginData), \" at \").concat(new Date().toLocaleTimeString()));\n if (isAuthProcessed()) {\n console.log('auth is completed, FETCH DATA');\n var pagination = new _Domain_repository_Pagination__WEBPACK_IMPORTED_MODULE_8__.Pagination();\n dialogsViewModel === null || dialogsViewModel === void 0 ? void 0 : dialogsViewModel.getDialogs(pagination);\n //\n // console.log('auth is completed, subscribe');\n //\n // subscribeToDialogEventsUseCase\n // .execute(dialogsEventHandler)\n // .catch((reason) => {\n // console.log(stringifyError(reason));\n // });\n // //\n // console.log('subscribe is completed, go');\n }\n }, [currentContext.InitParams]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {\n var _a;\n console.log(\"TestStage: selectedDialog: \".concat(((_a = selectedDialog === null || selectedDialog === void 0 ? void 0 : selectedDialog.entity) === null || _a === void 0 ? void 0 : _a.name) || 'Dialog Name is empty'));\n if (selectedDialog && selectedDialog.entity) {\n dialogsViewModel.entity = selectedDialog.entity;\n }\n }, [selectedDialog]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {\n var _a;\n console.log(\"Clear selected dialog: \".concat(((_a = selectedDialog === null || selectedDialog === void 0 ? void 0 : selectedDialog.entity) === null || _a === void 0 ? void 0 : _a.name) || 'Dialog Name is empty'));\n if (!dialogsViewModel.entity) {\n setSelectedDialog(undefined);\n }\n }, [dialogsViewModel.entity]);\n var _k = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(true), needDialogInformation = _k[0], setNeedDialogInformation = _k[1];\n var informationCloseHandler = function () {\n setNeedDialogInformation(false);\n };\n var informationOpenHandler = function () {\n setNeedDialogInformation(true);\n };\n return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_DesktopLayout__WEBPACK_IMPORTED_MODULE_5__[\"default\"], { theme: theme, dialogsView: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_Views_Dialogs_Dialogs__WEBPACK_IMPORTED_MODULE_3__[\"default\"]\n // subHeaderContent={<CompanyLogo />}\n // upHeaderContent={<CompanyLogo />}\n , { \n // subHeaderContent={<CompanyLogo />}\n // upHeaderContent={<CompanyLogo />}\n dialogsViewModel: dialogsViewModel, onDialogSelectHandler: selectDialogActions, additionalSettings: {\n withoutHeader: false,\n themeHeader: theme,\n themePreview: theme,\n useSubHeader: false,\n useUpHeader: false,\n } }), dialogMessagesView: selectedDialog && selectedDialog.entity && dialogsViewModel.entity ? ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_UI_Dialogs_MessagesView_MessagesView__WEBPACK_IMPORTED_MODULE_6__[\"default\"]\n // subHeaderContent={<CompanyLogo />}\n // upHeaderContent={<CompanyLogo />}\n , { \n // subHeaderContent={<CompanyLogo />}\n // upHeaderContent={<CompanyLogo />}\n dialogsViewModel: dialogsViewModel, onDialogInformationHandler: informationOpenHandler, maxWidthToResize: selectedDialog && needDialogInformation ? undefined : '1040px', AIRephrase: defaultAIEditMessageWidget, AITranslate: defaultAITranslateWidget, AIAssist: defaultAIAnswerToMessageWidget, theme: theme }) // 1 Get Messages + 1 Get User by Id\n ) : ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(\"div\", __assign({ style: {\n minHeight: '799px',\n minWidth: '1040px',\n border: '1px solid var(--divider)',\n margin: '0 auto',\n } }, { children: [\"You login as \", userName, \"(\", userId, \"). Select chat to start conversation.\"] }))), dialogInfoView: \n // 1 Get User by 1 + Get user by name\n (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(\"div\", { children: selectedDialog && needDialogInformation && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_UI_Dialogs_DialogInformation_DialogInformation__WEBPACK_IMPORTED_MODULE_4__[\"default\"]\n // subHeaderContent={<CompanyLogo />}\n // upHeaderContent={<CompanyLogo />}\n , { \n // subHeaderContent={<CompanyLogo />}\n // upHeaderContent={<CompanyLogo />}\n dialog: selectedDialog.entity, dialogViewModel: dialogsViewModel, onCloseDialogInformationHandler: informationCloseHandler })) }) }));\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (QuickBloxUIKitDesktopLayout);\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/Presentation/components/layouts/Desktop/QuickBloxUIKitDesktopLayout.tsx?");
2701
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _providers_QuickBloxUIKitProvider_useQbInitializedDataContext__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../providers/QuickBloxUIKitProvider/useQbInitializedDataContext */ \"./src/Presentation/components/providers/QuickBloxUIKitProvider/useQbInitializedDataContext.ts\");\n/* harmony import */ var _Views_Dialogs_Dialogs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../Views/Dialogs/Dialogs */ \"./src/Presentation/Views/Dialogs/Dialogs.tsx\");\n/* harmony import */ var _UI_Dialogs_DialogInformation_DialogInformation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../UI/Dialogs/DialogInformation/DialogInformation */ \"./src/Presentation/components/UI/Dialogs/DialogInformation/DialogInformation.tsx\");\n/* harmony import */ var _DesktopLayout__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./DesktopLayout */ \"./src/Presentation/components/layouts/Desktop/DesktopLayout.tsx\");\n/* harmony import */ var _UI_Dialogs_MessagesView_MessagesView__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../UI/Dialogs/MessagesView/MessagesView */ \"./src/Presentation/components/UI/Dialogs/MessagesView/MessagesView.tsx\");\n/* harmony import */ var _Views_Dialogs_useDialogsViewModel__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../Views/Dialogs/useDialogsViewModel */ \"./src/Presentation/Views/Dialogs/useDialogsViewModel.ts\");\n/* harmony import */ var _Domain_repository_Pagination__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../Domain/repository/Pagination */ \"./src/Domain/repository/Pagination.ts\");\n/* harmony import */ var _UI_Dialogs_MessagesView_AIWidgets_UseDefaultAIAssistAnswerWidget__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIAssistAnswerWidget */ \"./src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIAssistAnswerWidget.tsx\");\n/* harmony import */ var _UI_Dialogs_MessagesView_AIWidgets_UseDefaultAITranslateWidget__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../UI/Dialogs/MessagesView/AIWidgets/UseDefaultAITranslateWidget */ \"./src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/UseDefaultAITranslateWidget.tsx\");\n/* harmony import */ var _UI_Dialogs_MessagesView_AIWidgets_UseDefaultAIRephraseMessageWidget__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIRephraseMessageWidget */ \"./src/Presentation/components/UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIRephraseMessageWidget.tsx\");\n/* harmony import */ var _Data_DefaultConfigurations__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../Data/DefaultConfigurations */ \"./src/Data/DefaultConfigurations.ts\");\nvar __assign = (undefined && undefined.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar QuickBloxUIKitDesktopLayout = function (_a) {\n var _b, _c, _d;\n var _e = _a.theme, theme = _e === void 0 ? undefined : _e, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _f = _a.AITranslate, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n AITranslate = _f === void 0 ? undefined : _f, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _g = _a.AIRephrase, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n AIRephrase = _g === void 0 ? undefined : _g, _h = _a.AIAssist, AIAssist = _h === void 0 ? undefined : _h;\n console.log('create QuickBloxUIKitDesktopLayout');\n var _j = react__WEBPACK_IMPORTED_MODULE_1___default().useState(), selectedDialog = _j[0], setSelectedDialog = _j[1];\n var currentContext = (0,_providers_QuickBloxUIKitProvider_useQbInitializedDataContext__WEBPACK_IMPORTED_MODULE_2__[\"default\"])();\n var QBConfig = currentContext.InitParams.qbConfig ||\n _Data_DefaultConfigurations__WEBPACK_IMPORTED_MODULE_12__.DefaultConfigurations.getDefaultQBConfig();\n // const eventMessaging = useEventMessagesRepository();\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n var userName = (_b = currentContext.storage.REMOTE_DATA_SOURCE.authInformation) === null || _b === void 0 ? void 0 : _b.userName;\n var userId = (_c = currentContext.storage.REMOTE_DATA_SOURCE.authInformation) === null || _c === void 0 ? void 0 : _c.userId;\n var sessionToken = (_d = currentContext.storage.REMOTE_DATA_SOURCE.authInformation) === null || _d === void 0 ? void 0 : _d.sessionToken;\n var dialogsViewModel = (0,_Views_Dialogs_useDialogsViewModel__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(currentContext);\n var defaultAIEditMessageWidget = AIRephrase === null || AIRephrase === void 0 ? void 0 : AIRephrase.AIWidget; // useDefaultTextInputWidget();\n var defaultAITranslateWidget = AITranslate === null || AITranslate === void 0 ? void 0 : AITranslate.AIWidget;\n var defaultAIAnswerToMessageWidget = AIAssist === null || AIAssist === void 0 ? void 0 : AIAssist.AIWidget;\n var getAIAssistAnswer = function () {\n if ((AIAssist === null || AIAssist === void 0 ? void 0 : AIAssist.enabled) && !(AIAssist === null || AIAssist === void 0 ? void 0 : AIAssist.default)) {\n defaultAIAnswerToMessageWidget = AIAssist.AIWidget;\n }\n else if ((AIAssist === null || AIAssist === void 0 ? void 0 : AIAssist.enabled) ||\n QBConfig.configAIApi.AIAnswerAssistWidgetConfig.useDefault) {\n if (!QBConfig.configAIApi.AIAnswerAssistWidgetConfig.useDefault ||\n (AIAssist && !(AIAssist === null || AIAssist === void 0 ? void 0 : AIAssist.default))) {\n defaultAIAnswerToMessageWidget = undefined;\n }\n else {\n var apiKey = QBConfig.configAIApi.AIAnswerAssistWidgetConfig.apiKey;\n var token = '';\n if (apiKey) {\n token = apiKey;\n }\n else {\n token =\n QBConfig.configAIApi.AIAnswerAssistWidgetConfig.proxyConfig\n .sessionToken ||\n sessionToken ||\n '';\n }\n var proxyConfig = QBConfig.configAIApi.AIAnswerAssistWidgetConfig.proxyConfig ||\n _Data_DefaultConfigurations__WEBPACK_IMPORTED_MODULE_12__.DefaultConfigurations.getDefaultProxyConfig();\n defaultAIAnswerToMessageWidget = (0,_UI_Dialogs_MessagesView_AIWidgets_UseDefaultAIAssistAnswerWidget__WEBPACK_IMPORTED_MODULE_9__[\"default\"])(__assign(__assign({}, proxyConfig), { sessionToken: token, apiKey: apiKey }));\n }\n }\n };\n var getAITranslate = function () {\n if ((AITranslate === null || AITranslate === void 0 ? void 0 : AITranslate.enabled) && !(AITranslate === null || AITranslate === void 0 ? void 0 : AITranslate.default)) {\n defaultAITranslateWidget = AITranslate.AIWidget;\n }\n else if ((AITranslate === null || AITranslate === void 0 ? void 0 : AITranslate.enabled) ||\n QBConfig.configAIApi.AITranslateWidgetConfig.useDefault) {\n if (!QBConfig.configAIApi.AITranslateWidgetConfig.useDefault ||\n (AITranslate && !(AITranslate === null || AITranslate === void 0 ? void 0 : AITranslate.default))) {\n defaultAITranslateWidget = undefined;\n }\n else {\n var apiKey = QBConfig.configAIApi.AITranslateWidgetConfig.apiKey;\n var token = '';\n if (apiKey) {\n token = apiKey;\n }\n else {\n token =\n QBConfig.configAIApi.AITranslateWidgetConfig.proxyConfig\n .sessionToken ||\n sessionToken ||\n '';\n }\n var proxyConfig = QBConfig.configAIApi.AITranslateWidgetConfig.proxyConfig ||\n _Data_DefaultConfigurations__WEBPACK_IMPORTED_MODULE_12__.DefaultConfigurations.getDefaultProxyConfig();\n defaultAITranslateWidget = (0,_UI_Dialogs_MessagesView_AIWidgets_UseDefaultAITranslateWidget__WEBPACK_IMPORTED_MODULE_10__[\"default\"])(__assign(__assign({}, proxyConfig), { sessionToken: token, apiKey: apiKey }));\n }\n }\n };\n var getAIRephrase = function () {\n if ((AIRephrase === null || AIRephrase === void 0 ? void 0 : AIRephrase.enabled) && !(AIRephrase === null || AIRephrase === void 0 ? void 0 : AIRephrase.default)) {\n defaultAIEditMessageWidget = AIRephrase.AIWidget;\n }\n else if ((AIRephrase === null || AIRephrase === void 0 ? void 0 : AIRephrase.enabled) ||\n QBConfig.configAIApi.AIRephraseWidgetConfig.useDefault) {\n if (!QBConfig.configAIApi.AIRephraseWidgetConfig.useDefault ||\n (AIRephrase && !(AIRephrase === null || AIRephrase === void 0 ? void 0 : AIRephrase.default))) {\n defaultAIEditMessageWidget = undefined;\n }\n else {\n var apiKey = QBConfig.configAIApi.AIRephraseWidgetConfig.apiKey;\n var token = '';\n if (apiKey) {\n token = apiKey;\n }\n else {\n token =\n QBConfig.configAIApi.AIRephraseWidgetConfig.proxyConfig\n .sessionToken ||\n sessionToken ||\n '';\n }\n var proxyConfig = QBConfig.configAIApi.AIRephraseWidgetConfig.proxyConfig ||\n _Data_DefaultConfigurations__WEBPACK_IMPORTED_MODULE_12__.DefaultConfigurations.getDefaultProxyConfig();\n defaultAIEditMessageWidget = (0,_UI_Dialogs_MessagesView_AIWidgets_UseDefaultAIRephraseMessageWidget__WEBPACK_IMPORTED_MODULE_11__[\"default\"])(__assign(__assign({}, proxyConfig), { sessionToken: token, apiKey: apiKey }));\n }\n }\n };\n getAITranslate();\n getAIRephrase();\n getAIAssistAnswer();\n var selectDialogActions = function (item) {\n if (!dialogsViewModel.loading) {\n setSelectedDialog(item);\n }\n };\n // const subscribeToDialogEventsUseCase: SubscribeToDialogEventsUseCase =\n // new SubscribeToDialogEventsUseCase(eventMessaging, 'TestStage');\n // инициализация СДК и загрузка тестовых данных, запуск пинга - может не быть\n // todo: добавить метод в контекст\n var isAuthProcessed = function () {\n console.log('call isAuthProcessed');\n var result = currentContext.storage.REMOTE_DATA_SOURCE.needInit === false &&\n currentContext.storage.REMOTE_DATA_SOURCE.authProcessed &&\n currentContext.storage.CONNECTION_REPOSITORY.needInit === false;\n console.log(\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n \"initialValue.REMOTE_DATA_SOURCE_MOCK.needInit: \".concat(currentContext.storage.REMOTE_DATA_SOURCE.needInit));\n console.log(\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n \"initialValue.REMOTE_DATA_SOURCE_MOCK.authProcessed: \".concat(currentContext.storage.REMOTE_DATA_SOURCE.authProcessed));\n console.log(\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n \"initialValue.CONNECTION_REPOSITORY.needInit: \".concat(currentContext.storage.CONNECTION_REPOSITORY.needInit));\n return result;\n };\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {\n console.log('TestStage: GET DATA ');\n console.log(\"auth data: \".concat(JSON.stringify(currentContext.InitParams.loginData), \" at \").concat(new Date().toLocaleTimeString()));\n if (isAuthProcessed()) {\n console.log('auth is completed, CAN GET DATA');\n var pagination = new _Domain_repository_Pagination__WEBPACK_IMPORTED_MODULE_8__.Pagination();\n dialogsViewModel === null || dialogsViewModel === void 0 ? void 0 : dialogsViewModel.getDialogs(pagination);\n }\n return function () {\n console.log('TestStage: USE EFFECT release');\n dialogsViewModel.release();\n };\n }, []); // сейчас это выполняется один раз при старте, а нужно каждый раз при смене пользователя\n // const dialogsEventHandler = (dialogInfo: DialogEventInfo) => {\n // console.log('call dialogsEventHandler in QuickBloxUIKitDesktopLayout');\n // if (dialogInfo.eventMessageType === EventMessageType.SystemMessage) {\n // switch (dialogInfo.notificationTypes) {\n // case NotificationTypes.DELETE_LEAVE_DIALOG: {\n // if (\n // dialogInfo.messageInfo &&\n // dialogInfo.messageInfo.sender_id === userId\n // ) {\n // setSelectedDialog(undefined);\n // }\n //\n // break;\n // }\n // default: {\n // const pagination: Pagination = new Pagination();\n //\n // dialogsViewModel?.getDialogs(pagination);\n // break;\n // }\n // }\n // }\n // };\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {\n console.log('TestStage: GET DATA AFTER User data has CHANGED');\n console.log(\"auth is \".concat(JSON.stringify(currentContext.InitParams.loginData), \" at \").concat(new Date().toLocaleTimeString()));\n if (isAuthProcessed()) {\n console.log('auth is completed, FETCH DATA');\n var pagination = new _Domain_repository_Pagination__WEBPACK_IMPORTED_MODULE_8__.Pagination();\n dialogsViewModel === null || dialogsViewModel === void 0 ? void 0 : dialogsViewModel.getDialogs(pagination);\n //\n // console.log('auth is completed, subscribe');\n //\n // subscribeToDialogEventsUseCase\n // .execute(dialogsEventHandler)\n // .catch((reason) => {\n // console.log(stringifyError(reason));\n // });\n // //\n // console.log('subscribe is completed, go');\n }\n }, [currentContext.InitParams]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {\n var _a;\n console.log(\"TestStage: selectedDialog: \".concat(((_a = selectedDialog === null || selectedDialog === void 0 ? void 0 : selectedDialog.entity) === null || _a === void 0 ? void 0 : _a.name) || 'Dialog Name is empty'));\n if (selectedDialog && selectedDialog.entity) {\n dialogsViewModel.entity = selectedDialog.entity;\n }\n }, [selectedDialog]);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {\n var _a;\n console.log(\"Clear selected dialog: \".concat(((_a = selectedDialog === null || selectedDialog === void 0 ? void 0 : selectedDialog.entity) === null || _a === void 0 ? void 0 : _a.name) || 'Dialog Name is empty'));\n if (!dialogsViewModel.entity) {\n setSelectedDialog(undefined);\n }\n }, [dialogsViewModel.entity]);\n var _k = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(true), needDialogInformation = _k[0], setNeedDialogInformation = _k[1];\n var informationCloseHandler = function () {\n setNeedDialogInformation(false);\n };\n var informationOpenHandler = function () {\n setNeedDialogInformation(true);\n };\n return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_DesktopLayout__WEBPACK_IMPORTED_MODULE_5__[\"default\"], { theme: theme, dialogsView: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_Views_Dialogs_Dialogs__WEBPACK_IMPORTED_MODULE_3__[\"default\"]\n // subHeaderContent={<CompanyLogo />}\n // upHeaderContent={<CompanyLogo />}\n , { \n // subHeaderContent={<CompanyLogo />}\n // upHeaderContent={<CompanyLogo />}\n dialogsViewModel: dialogsViewModel, onDialogSelectHandler: selectDialogActions, additionalSettings: {\n withoutHeader: false,\n themeHeader: theme,\n themePreview: theme,\n useSubHeader: false,\n useUpHeader: false,\n } }), dialogMessagesView: selectedDialog && selectedDialog.entity && dialogsViewModel.entity ? ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_UI_Dialogs_MessagesView_MessagesView__WEBPACK_IMPORTED_MODULE_6__[\"default\"]\n // subHeaderContent={<CompanyLogo />}\n // upHeaderContent={<CompanyLogo />}\n , { \n // subHeaderContent={<CompanyLogo />}\n // upHeaderContent={<CompanyLogo />}\n dialogsViewModel: dialogsViewModel, onDialogInformationHandler: informationOpenHandler, maxWidthToResize: selectedDialog && needDialogInformation ? undefined : '1040px', AIRephrase: defaultAIEditMessageWidget, AITranslate: defaultAITranslateWidget, AIAssist: defaultAIAnswerToMessageWidget, theme: theme }) // 1 Get Messages + 1 Get User by Id\n ) : ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(\"div\", __assign({ style: {\n minHeight: '799px',\n minWidth: '1040px',\n border: '1px solid var(--divider)',\n margin: '0 auto',\n } }, { children: [\"You login as \", userName, \"(\", userId, \"). Select chat to start conversation.\"] }))), dialogInfoView: \n // 1 Get User by 1 + Get user by name\n (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(\"div\", { children: selectedDialog && needDialogInformation && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_UI_Dialogs_DialogInformation_DialogInformation__WEBPACK_IMPORTED_MODULE_4__[\"default\"]\n // subHeaderContent={<CompanyLogo />}\n // upHeaderContent={<CompanyLogo />}\n , { \n // subHeaderContent={<CompanyLogo />}\n // upHeaderContent={<CompanyLogo />}\n dialog: selectedDialog.entity, dialogViewModel: dialogsViewModel, onCloseDialogInformationHandler: informationCloseHandler })) }) }));\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (QuickBloxUIKitDesktopLayout);\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/Presentation/components/layouts/Desktop/QuickBloxUIKitDesktopLayout.tsx?");
2702
2702
 
2703
2703
  /***/ }),
2704
2704
 
@@ -2742,7 +2742,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var reac
2742
2742
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
2743
2743
 
2744
2744
  "use strict";
2745
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"qbDataContext\": function() { return /* binding */ qbDataContext; }\n/* harmony export */ });\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _ModalContextProvider_ModalContextProvider__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../ModalContextProvider/ModalContextProvider */ \"./src/Presentation/components/providers/ModalContextProvider/ModalContextProvider.tsx\");\n/* harmony import */ var _Data_source_local_LocalDataSource__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../Data/source/local/LocalDataSource */ \"./src/Data/source/local/LocalDataSource.ts\");\n/* harmony import */ var _Data_source_remote_RemoteDataSource__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../Data/source/remote/RemoteDataSource */ \"./src/Data/source/remote/RemoteDataSource.ts\");\n/* harmony import */ var _Data_repository_DialogsRepository__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../Data/repository/DialogsRepository */ \"./src/Data/repository/DialogsRepository.ts\");\n/* harmony import */ var _Domain_use_cases_SyncDialogsUseCase__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../Domain/use_cases/SyncDialogsUseCase */ \"./src/Domain/use_cases/SyncDialogsUseCase.ts\");\n/* harmony import */ var _QBconfig__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../QBconfig */ \"./src/QBconfig.ts\");\n/* harmony import */ var _Data_repository_ConnectionRepository__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../Data/repository/ConnectionRepository */ \"./src/Data/repository/ConnectionRepository.ts\");\n/* harmony import */ var _Data_repository_EventMessagesRepository__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../Data/repository/EventMessagesRepository */ \"./src/Data/repository/EventMessagesRepository.ts\");\nvar __assign = (undefined && undefined.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (undefined && undefined.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar _this = undefined;\n\n\n\n\n\n\n\n\n\n\n// import packageInfo from '../../../../../package.json';\nvar initialValues = {\n LOCAL_DATA_SOURCE: new _Data_source_local_LocalDataSource__WEBPACK_IMPORTED_MODULE_3__.LocalDataSource(),\n REMOTE_DATA_SOURCE: new _Data_source_remote_RemoteDataSource__WEBPACK_IMPORTED_MODULE_4__.RemoteDataSource(),\n CONNECTION_REPOSITORY: new _Data_repository_ConnectionRepository__WEBPACK_IMPORTED_MODULE_8__[\"default\"](),\n};\nvar initialEvent = {\n EVENT_MESSAGE_REPOSITORY: new _Data_repository_EventMessagesRepository__WEBPACK_IMPORTED_MODULE_9__[\"default\"](initialValues.REMOTE_DATA_SOURCE, initialValues.LOCAL_DATA_SOURCE, initialValues.CONNECTION_REPOSITORY),\n};\nvar initialSync = {\n SYNC_DIALOGS_USE_CASE: new _Domain_use_cases_SyncDialogsUseCase__WEBPACK_IMPORTED_MODULE_6__.SyncDialogsUseCase(new _Data_repository_DialogsRepository__WEBPACK_IMPORTED_MODULE_5__[\"default\"](initialValues.LOCAL_DATA_SOURCE, initialValues.REMOTE_DATA_SOURCE), initialValues.CONNECTION_REPOSITORY, initialEvent.EVENT_MESSAGE_REPOSITORY),\n};\nvar initDataContext = {\n // authProcessed: false,\n storage: {\n LOCAL_DATA_SOURCE: initialValues.LOCAL_DATA_SOURCE,\n REMOTE_DATA_SOURCE: initialValues.REMOTE_DATA_SOURCE,\n CONNECTION_REPOSITORY: initialValues.CONNECTION_REPOSITORY,\n EVENT_MESSAGE_REPOSITORY: initialEvent.EVENT_MESSAGE_REPOSITORY,\n SYNC_DIALOGS_USE_CASE: initialSync.SYNC_DIALOGS_USE_CASE,\n // SYNC_DIALOGS_USE_CASE: new SyncDialogsUseCase(\n // new DialogsRepository(\n // initialValues.LOCAL_DATA_SOURCE,\n // initialValues.REMOTE_DATA_SOURCE,\n // ),\n // initialValues.CONNECTION_REPOSITORY,\n // initialEvent.EVENT_MESSAGE_REPOSITORY,\n // ),\n },\n InitParams: {\n accountData: _QBconfig__WEBPACK_IMPORTED_MODULE_7__.QBConfig.credentials,\n maxFileSize: _QBconfig__WEBPACK_IMPORTED_MODULE_7__.QBConfig.appConfig.maxFileSize,\n },\n updateQBInitParams: function (InitParams) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n console.log(\"call function updateQBInitParams with param \".concat(JSON.stringify(InitParams)));\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n _this.InitParams = InitParams;\n },\n updateStorage: function (storage) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n console.log(\"empty function with param \".concat(storage));\n },\n release: function () {\n console.log(\"function release start\");\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialSync.SYNC_DIALOGS_USE_CASE.release();\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialValues.CONNECTION_REPOSITORY.stopKeepAlive();\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialValues.REMOTE_DATA_SOURCE.disconnectAndLogoutUser().catch();\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialValues.LOCAL_DATA_SOURCE.clearAll().catch();\n console.log(\"function release end\");\n },\n authorize: function (authorizationData) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n console.log('UI Kit authorize');\n initialValues.REMOTE_DATA_SOURCE.authInformation = authorizationData;\n initialValues.REMOTE_DATA_SOURCE.setAuthProcessedSuccessed();\n //\n initialValues.REMOTE_DATA_SOURCE.initEventsHandlers();\n //\n console.log('UI Kit authorize event handler has initialized');\n //\n return [4 /*yield*/, initialValues.CONNECTION_REPOSITORY.initializeStates()];\n case 1:\n //\n _a.sent();\n if (!initialValues.CONNECTION_REPOSITORY.needInit) {\n initialValues.CONNECTION_REPOSITORY.keepALiveChatConnection();\n }\n return [4 /*yield*/, initialSync.SYNC_DIALOGS_USE_CASE.execute(function () {\n console.log('sync dialogs has started');\n }).catch(function () {\n console.log('sync dialogs has exception');\n })];\n case 2:\n _a.sent();\n //\n console.log(\"function authorize end\");\n return [2 /*return*/];\n }\n });\n }); },\n setSubscribeOnSessionExpiredListener: function (callback) {\n initialValues.REMOTE_DATA_SOURCE.subscribeOnSessionExpiredListener(callback);\n },\n};\nvar qbDataContext = react__WEBPACK_IMPORTED_MODULE_1___default().createContext(initDataContext);\nvar Provider = qbDataContext.Provider;\nfunction QuickBloxUIKitProvider(_a) {\n var children = _a.children, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n accountData = _a.accountData, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n qbConfig = _a.qbConfig, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n loginData = _a.loginData, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n maxFileSize = _a.maxFileSize;\n console.log('QuickBloxUIKitProvider with account data: ', JSON.stringify(accountData));\n console.log('QuickBloxUIKitProvider with login data: ', JSON.stringify(loginData));\n var initStorageState = {\n LOCAL_DATA_SOURCE: initialValues.LOCAL_DATA_SOURCE,\n REMOTE_DATA_SOURCE: initialValues.REMOTE_DATA_SOURCE,\n CONNECTION_REPOSITORY: initialValues.CONNECTION_REPOSITORY,\n EVENT_MESSAGE_REPOSITORY: initialEvent.EVENT_MESSAGE_REPOSITORY,\n SYNC_DIALOGS_USE_CASE: initialSync.SYNC_DIALOGS_USE_CASE,\n // SYNC_DIALOGS_USE_CASE: new SyncDialogsUseCase(\n // new DialogsRepository(\n // initialValues.LOCAL_DATA_SOURCE,\n // initialValues.REMOTE_DATA_SOURCE,\n // ),\n // initialValues.CONNECTION_REPOSITORY,\n // initialEvent.EVENT_MESSAGE_REPOSITORY,\n // ),\n };\n console.log('QuickBloxUIKitProvider with storage init data: ', JSON.stringify(initStorageState));\n var _b = react__WEBPACK_IMPORTED_MODULE_1___default().useState(initStorageState), storage = _b[0], setStorage = _b[1];\n console.log('have storage useState completed');\n var updateStorage = function (dataStorage) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n setStorage(dataStorage);\n };\n // todo: must use accountData if we haves\n var _c = react__WEBPACK_IMPORTED_MODULE_1___default().useState({\n accountData: {\n appId: accountData.appId,\n accountKey: accountData.accountKey,\n authKey: accountData.authKey,\n authSecret: accountData.authSecret,\n sessionToken: accountData.sessionToken,\n },\n loginData: {\n login: (loginData === null || loginData === void 0 ? void 0 : loginData.login) || '',\n password: (loginData === null || loginData === void 0 ? void 0 : loginData.password) || '',\n },\n maxFileSize: maxFileSize,\n }), InitParams = _c[0], setInitParams = _c[1];\n console.log('have InitParams useState completed');\n var updateQBInitParams = function (initParams) {\n console.log(\"log updateQBInitParams \".concat(JSON.stringify(initParams)));\n setInitParams(initParams);\n };\n var release = function () {\n console.log(\"function release start\");\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialSync.SYNC_DIALOGS_USE_CASE.release();\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialValues.CONNECTION_REPOSITORY.stopKeepAlive();\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialValues.REMOTE_DATA_SOURCE.disconnectAndLogoutUser().catch();\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialValues.LOCAL_DATA_SOURCE.clearAll().catch();\n console.log(\"function release end\");\n };\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n var authorize = function (authorizationData) {\n initialValues.REMOTE_DATA_SOURCE.authInformation = authorizationData;\n initialValues.REMOTE_DATA_SOURCE.setAuthProcessedSuccessed();\n };\n var setSubscribeOnSessionExpiredListener = function (callback) {\n initialValues.REMOTE_DATA_SOURCE.subscribeOnSessionExpiredListener(callback);\n };\n // todo: temporary off, must turn on\n // todo: cause of recycle v1\n // storage.CONNECTION_REPOSITORY.keepALiveChatConnection();\n // todo: temporary off, must turn on\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n // storage.SYNC_DIALOGS_USE_CASE.execute(() => {});\n // todo: MUST use sessionToken or login/pass to re-init\n // const remoteDataSourceMock: RemoteDataSource =\n // storage.REMOTE_DATA_SOURCE as RemoteDataSource;\n // // remoteDataSourceMock\n // .initSDK({\n // appIdOrToken: QBInitParams.accountData.appId,\n // authKeyOrAppId: QBInitParams.accountData.authKey,\n // authSecret: QBInitParams.accountData.authSecret,\n // accountKey: QBInitParams.accountData.accountKey,\n // })\n // .catch(() => {\n // console.log('EXCEPTION remoteDataSourceMock.initSDK');\n // });\n // console.log('!!!-3-after initSDK');\n // // todo: temporary off, must turn on and reorganize code rows\n // storage.CONNECTION_REPOSITORY.initializeStates();\n // // todo: must delete it\n // remoteDataSourceMock.setUpMockStorage();\n // // START SYNC MOCK\n // storage.SYNC_DIALOGS_USE_CASE.execute(() => {\n // console.log('SYNC_DIALOGS_USE_CASE_MOCK.execute');\n // }).catch(() => {\n // console.log('EXCEPTION SYNC_DIALOGS_USE_CASE_MOCK.execute');\n // });\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n // const [authProcessed, setAuthProcessed] = React.useState(false);\n // const updateAuthProcessedStatus = (status: boolean) => {\n // console.log('updateAuthProcessedStatus, set ', status);\n // setAuthProcessed(status);\n // };\n return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(Provider, __assign({ value: {\n InitParams: InitParams,\n updateQBInitParams: updateQBInitParams,\n // authProcessed,\n release: release,\n authorize: authorize,\n setSubscribeOnSessionExpiredListener: setSubscribeOnSessionExpiredListener,\n storage: storage,\n updateStorage: updateStorage,\n } }, { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_ModalContextProvider_ModalContextProvider__WEBPACK_IMPORTED_MODULE_2__[\"default\"], { children: children }) })));\n}\n/* harmony default export */ __webpack_exports__[\"default\"] = (QuickBloxUIKitProvider);\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/Presentation/components/providers/QuickBloxUIKitProvider/QuickBloxUIKitProvider.tsx?");
2745
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"qbDataContext\": function() { return /* binding */ qbDataContext; }\n/* harmony export */ });\n/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-runtime */ \"./node_modules/react/jsx-runtime.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _ModalContextProvider_ModalContextProvider__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../ModalContextProvider/ModalContextProvider */ \"./src/Presentation/components/providers/ModalContextProvider/ModalContextProvider.tsx\");\n/* harmony import */ var _Data_source_local_LocalDataSource__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../Data/source/local/LocalDataSource */ \"./src/Data/source/local/LocalDataSource.ts\");\n/* harmony import */ var _Data_source_remote_RemoteDataSource__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../Data/source/remote/RemoteDataSource */ \"./src/Data/source/remote/RemoteDataSource.ts\");\n/* harmony import */ var _Data_repository_DialogsRepository__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../Data/repository/DialogsRepository */ \"./src/Data/repository/DialogsRepository.ts\");\n/* harmony import */ var _Domain_use_cases_SyncDialogsUseCase__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../Domain/use_cases/SyncDialogsUseCase */ \"./src/Domain/use_cases/SyncDialogsUseCase.ts\");\n/* harmony import */ var _Data_repository_ConnectionRepository__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../Data/repository/ConnectionRepository */ \"./src/Data/repository/ConnectionRepository.ts\");\n/* harmony import */ var _Data_repository_EventMessagesRepository__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../Data/repository/EventMessagesRepository */ \"./src/Data/repository/EventMessagesRepository.ts\");\n/* harmony import */ var _Data_DefaultConfigurations__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../Data/DefaultConfigurations */ \"./src/Data/DefaultConfigurations.ts\");\nvar __assign = (undefined && undefined.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (undefined && undefined.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar _this = undefined;\n\n\n\n\n\n\n\n\n\n\nvar initialValues = {\n LOCAL_DATA_SOURCE: new _Data_source_local_LocalDataSource__WEBPACK_IMPORTED_MODULE_3__.LocalDataSource(),\n REMOTE_DATA_SOURCE: new _Data_source_remote_RemoteDataSource__WEBPACK_IMPORTED_MODULE_4__.RemoteDataSource(),\n CONNECTION_REPOSITORY: new _Data_repository_ConnectionRepository__WEBPACK_IMPORTED_MODULE_7__[\"default\"](),\n};\nvar initialEvent = {\n EVENT_MESSAGE_REPOSITORY: new _Data_repository_EventMessagesRepository__WEBPACK_IMPORTED_MODULE_8__[\"default\"](initialValues.REMOTE_DATA_SOURCE, initialValues.LOCAL_DATA_SOURCE, initialValues.CONNECTION_REPOSITORY),\n};\nvar initialSync = {\n SYNC_DIALOGS_USE_CASE: new _Domain_use_cases_SyncDialogsUseCase__WEBPACK_IMPORTED_MODULE_6__.SyncDialogsUseCase(new _Data_repository_DialogsRepository__WEBPACK_IMPORTED_MODULE_5__[\"default\"](initialValues.LOCAL_DATA_SOURCE, initialValues.REMOTE_DATA_SOURCE), initialValues.CONNECTION_REPOSITORY, initialEvent.EVENT_MESSAGE_REPOSITORY),\n};\nvar initDataContext = {\n // authProcessed: false,\n storage: {\n LOCAL_DATA_SOURCE: initialValues.LOCAL_DATA_SOURCE,\n REMOTE_DATA_SOURCE: initialValues.REMOTE_DATA_SOURCE,\n CONNECTION_REPOSITORY: initialValues.CONNECTION_REPOSITORY,\n EVENT_MESSAGE_REPOSITORY: initialEvent.EVENT_MESSAGE_REPOSITORY,\n SYNC_DIALOGS_USE_CASE: initialSync.SYNC_DIALOGS_USE_CASE,\n // SYNC_DIALOGS_USE_CASE: new SyncDialogsUseCase(\n // new DialogsRepository(\n // initialValues.LOCAL_DATA_SOURCE,\n // initialValues.REMOTE_DATA_SOURCE,\n // ),\n // initialValues.CONNECTION_REPOSITORY,\n // initialEvent.EVENT_MESSAGE_REPOSITORY,\n // ),\n },\n InitParams: {\n accountData: _Data_DefaultConfigurations__WEBPACK_IMPORTED_MODULE_9__.DefaultConfigurations.getDefaultQBConfig().credentials,\n maxFileSize: _Data_DefaultConfigurations__WEBPACK_IMPORTED_MODULE_9__.DefaultConfigurations.getDefaultQBConfig().appConfig.maxFileSize,\n qbConfig: _Data_DefaultConfigurations__WEBPACK_IMPORTED_MODULE_9__.DefaultConfigurations.getDefaultQBConfig(),\n },\n updateQBInitParams: function (InitParams) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n console.log(\"call function updateQBInitParams with param \".concat(JSON.stringify(InitParams)));\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n _this.InitParams = InitParams;\n },\n updateStorage: function (storage) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n console.log(\"empty function with param \".concat(storage));\n },\n release: function () {\n console.log(\"function release start\");\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialSync.SYNC_DIALOGS_USE_CASE.release();\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialValues.CONNECTION_REPOSITORY.stopKeepAlive();\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialValues.REMOTE_DATA_SOURCE.disconnectAndLogoutUser().catch();\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialValues.LOCAL_DATA_SOURCE.clearAll().catch();\n console.log(\"function release end\");\n },\n authorize: function (authorizationData) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n console.log('UI Kit authorize');\n initialValues.REMOTE_DATA_SOURCE.authInformation = authorizationData;\n initialValues.REMOTE_DATA_SOURCE.setAuthProcessedSuccessed();\n //\n initialValues.REMOTE_DATA_SOURCE.initEventsHandlers();\n //\n console.log('UI Kit authorize event handler has initialized');\n //\n return [4 /*yield*/, initialValues.CONNECTION_REPOSITORY.initializeStates()];\n case 1:\n //\n _a.sent();\n if (!initialValues.CONNECTION_REPOSITORY.needInit) {\n initialValues.CONNECTION_REPOSITORY.keepALiveChatConnection();\n }\n return [4 /*yield*/, initialSync.SYNC_DIALOGS_USE_CASE.execute(function () {\n console.log('sync dialogs has started');\n }).catch(function () {\n console.log('sync dialogs has exception');\n })];\n case 2:\n _a.sent();\n //\n console.log(\"function authorize end\");\n return [2 /*return*/];\n }\n });\n }); },\n setSubscribeOnSessionExpiredListener: function (callback) {\n initialValues.REMOTE_DATA_SOURCE.subscribeOnSessionExpiredListener(callback);\n },\n};\nvar qbDataContext = react__WEBPACK_IMPORTED_MODULE_1___default().createContext(initDataContext);\nvar Provider = qbDataContext.Provider;\nfunction QuickBloxUIKitProvider(_a) {\n var children = _a.children, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n accountData = _a.accountData, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n qbConfig = _a.qbConfig, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n loginData = _a.loginData, \n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n maxFileSize = _a.maxFileSize;\n console.log('QuickBloxUIKitProvider with account data: ', JSON.stringify(accountData));\n console.log('QuickBloxUIKitProvider with login data: ', JSON.stringify(loginData));\n var initStorageState = {\n LOCAL_DATA_SOURCE: initialValues.LOCAL_DATA_SOURCE,\n REMOTE_DATA_SOURCE: initialValues.REMOTE_DATA_SOURCE,\n CONNECTION_REPOSITORY: initialValues.CONNECTION_REPOSITORY,\n EVENT_MESSAGE_REPOSITORY: initialEvent.EVENT_MESSAGE_REPOSITORY,\n SYNC_DIALOGS_USE_CASE: initialSync.SYNC_DIALOGS_USE_CASE,\n // SYNC_DIALOGS_USE_CASE: new SyncDialogsUseCase(\n // new DialogsRepository(\n // initialValues.LOCAL_DATA_SOURCE,\n // initialValues.REMOTE_DATA_SOURCE,\n // ),\n // initialValues.CONNECTION_REPOSITORY,\n // initialEvent.EVENT_MESSAGE_REPOSITORY,\n // ),\n };\n console.log('QuickBloxUIKitProvider with storage init data: ', JSON.stringify(initStorageState));\n var _b = react__WEBPACK_IMPORTED_MODULE_1___default().useState(initStorageState), storage = _b[0], setStorage = _b[1];\n console.log('have storage useState completed');\n var updateStorage = function (dataStorage) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n setStorage(dataStorage);\n };\n // todo: must use accountData if we haves\n var _c = react__WEBPACK_IMPORTED_MODULE_1___default().useState({\n accountData: {\n appId: accountData.appId,\n accountKey: accountData.accountKey,\n authKey: accountData.authKey,\n authSecret: accountData.authSecret,\n sessionToken: accountData.sessionToken,\n },\n loginData: {\n login: (loginData === null || loginData === void 0 ? void 0 : loginData.login) || '',\n password: (loginData === null || loginData === void 0 ? void 0 : loginData.password) || '',\n },\n maxFileSize: maxFileSize,\n qbConfig: qbConfig,\n }), InitParams = _c[0], setInitParams = _c[1];\n console.log('have InitParams useState completed');\n var updateQBInitParams = function (initParams) {\n console.log(\"log updateQBInitParams \".concat(JSON.stringify(initParams)));\n setInitParams(initParams);\n };\n var release = function () {\n console.log(\"function release start\");\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialSync.SYNC_DIALOGS_USE_CASE.release();\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialValues.CONNECTION_REPOSITORY.stopKeepAlive();\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialValues.REMOTE_DATA_SOURCE.disconnectAndLogoutUser().catch();\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n initialValues.LOCAL_DATA_SOURCE.clearAll().catch();\n console.log(\"function release end\");\n };\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n var authorize = function (authorizationData) {\n initialValues.REMOTE_DATA_SOURCE.authInformation = authorizationData;\n initialValues.REMOTE_DATA_SOURCE.setAuthProcessedSuccessed();\n };\n var setSubscribeOnSessionExpiredListener = function (callback) {\n initialValues.REMOTE_DATA_SOURCE.subscribeOnSessionExpiredListener(callback);\n };\n // todo: temporary off, must turn on\n // todo: cause of recycle v1\n // storage.CONNECTION_REPOSITORY.keepALiveChatConnection();\n // todo: temporary off, must turn on\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n // storage.SYNC_DIALOGS_USE_CASE.execute(() => {});\n // todo: MUST use sessionToken or login/pass to re-init\n // const remoteDataSourceMock: RemoteDataSource =\n // storage.REMOTE_DATA_SOURCE as RemoteDataSource;\n // // remoteDataSourceMock\n // .initSDK({\n // appIdOrToken: QBInitParams.accountData.appId,\n // authKeyOrAppId: QBInitParams.accountData.authKey,\n // authSecret: QBInitParams.accountData.authSecret,\n // accountKey: QBInitParams.accountData.accountKey,\n // })\n // .catch(() => {\n // console.log('EXCEPTION remoteDataSourceMock.initSDK');\n // });\n // console.log('!!!-3-after initSDK');\n // // todo: temporary off, must turn on and reorganize code rows\n // storage.CONNECTION_REPOSITORY.initializeStates();\n // // todo: must delete it\n // remoteDataSourceMock.setUpMockStorage();\n // // START SYNC MOCK\n // storage.SYNC_DIALOGS_USE_CASE.execute(() => {\n // console.log('SYNC_DIALOGS_USE_CASE_MOCK.execute');\n // }).catch(() => {\n // console.log('EXCEPTION SYNC_DIALOGS_USE_CASE_MOCK.execute');\n // });\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n // const [authProcessed, setAuthProcessed] = React.useState(false);\n // const updateAuthProcessedStatus = (status: boolean) => {\n // console.log('updateAuthProcessedStatus, set ', status);\n // setAuthProcessed(status);\n // };\n return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(Provider, __assign({ value: {\n InitParams: InitParams,\n updateQBInitParams: updateQBInitParams,\n // authProcessed,\n release: release,\n authorize: authorize,\n setSubscribeOnSessionExpiredListener: setSubscribeOnSessionExpiredListener,\n storage: storage,\n updateStorage: updateStorage,\n } }, { children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_ModalContextProvider_ModalContextProvider__WEBPACK_IMPORTED_MODULE_2__[\"default\"], { children: children }) })));\n}\n/* harmony default export */ __webpack_exports__[\"default\"] = (QuickBloxUIKitProvider);\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/Presentation/components/providers/QuickBloxUIKitProvider/QuickBloxUIKitProvider.tsx?");
2746
2746
 
2747
2747
  /***/ }),
2748
2748
 
@@ -2797,7 +2797,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var reac
2797
2797
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
2798
2798
 
2799
2799
  "use strict";
2800
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"QBConfig\": function() { return /* binding */ QBConfig; }\n/* harmony export */ });\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (undefined && undefined.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar QBConfig = {\n credentials: {\n appId: -1,\n accountKey: '',\n authKey: '',\n authSecret: '',\n sessionToken: '',\n },\n configAIApi: {\n AIAnswerAssistWidgetConfig: {\n apiKey: '',\n useDefault: true,\n proxyConfig: {\n api: 'v1/chat/completions',\n servername: 'http://localhost',\n port: '3001',\n sessionToken: '',\n },\n },\n AITranslateWidgetConfig: {\n apiKey: '',\n useDefault: true,\n defaultLanguage: 'English',\n languages: [\n 'English',\n 'Spanish',\n 'French',\n 'Portuguese',\n 'German',\n 'Ukrainian',\n ],\n proxyConfig: {\n api: 'v1/chat/completions',\n servername: 'http://localhost',\n port: '3001',\n sessionToken: '',\n },\n },\n AIRephraseWidgetConfig: {\n apiKey: '',\n useDefault: true,\n proxyConfig: {\n api: 'v1/chat/completions',\n servername: 'http://localhost',\n port: '3001',\n sessionToken: '',\n },\n },\n },\n appConfig: {\n maxFileSize: 10 * 1024 * 1024,\n sessionTimeOut: 122,\n chatProtocol: {\n active: 2,\n },\n debug: true,\n endpoints: {\n api: 'api.quickblox.com',\n chat: 'chat.quickblox.com',\n },\n on: {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars,@typescript-eslint/require-await\n sessionExpired: function (handleResponse, retry) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n console.log(\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n \"QBconfig sessionExpired handle: \".concat(handleResponse, \" \").concat(retry));\n return [2 /*return*/];\n });\n });\n },\n },\n streamManagement: {\n enable: true,\n },\n },\n};\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/QBconfig.ts?");
2800
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"QBConfig\": function() { return /* binding */ QBConfig; }\n/* harmony export */ });\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (undefined && undefined.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar QBConfig = {\n credentials: {\n appId: -1,\n accountKey: '',\n authKey: '',\n authSecret: '',\n sessionToken: '',\n },\n configAIApi: {\n AIAnswerAssistWidgetConfig: {\n apiKey: '',\n useDefault: true,\n proxyConfig: {\n api: 'v1/chat/completions',\n servername: 'http://localhost',\n port: '3011',\n sessionToken: '',\n },\n },\n AITranslateWidgetConfig: {\n apiKey: '',\n useDefault: true,\n defaultLanguage: 'English',\n languages: [\n 'English',\n 'Spanish',\n 'French',\n 'Portuguese',\n 'German',\n 'Ukrainian',\n ],\n proxyConfig: {\n api: 'v1/chat/completions',\n servername: 'http://localhost',\n port: '3011',\n sessionToken: '',\n },\n },\n AIRephraseWidgetConfig: {\n apiKey: '',\n useDefault: true,\n defaultTone: 'Professional',\n proxyConfig: {\n api: 'v1/chat/completions',\n servername: 'http://localhost',\n port: '3011',\n sessionToken: '',\n },\n },\n },\n appConfig: {\n maxFileSize: 10 * 1024 * 1024,\n sessionTimeOut: 122,\n chatProtocol: {\n active: 2,\n },\n debug: true,\n endpoints: {\n api: 'api.quickblox.com',\n chat: 'chat.quickblox.com',\n },\n on: {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars,@typescript-eslint/require-await\n sessionExpired: function (handleResponse, retry) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n console.log(\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n \"QBconfig sessionExpired handle: \".concat(handleResponse, \" \").concat(retry));\n return [2 /*return*/];\n });\n });\n },\n },\n streamManagement: {\n enable: true,\n },\n },\n};\n\n\n//# sourceURL=webpack://quickblox-react-ui-kit/./src/QBconfig.ts?");
2801
2801
 
2802
2802
  /***/ }),
2803
2803
 
package/global.d.ts CHANGED
@@ -17,14 +17,56 @@ interface DateRange {
17
17
  to: Date;
18
18
  }
19
19
 
20
+ type ProxyConfig = {
21
+ api: string;
22
+ servername: string;
23
+ port: string;
24
+ sessionToken: string;
25
+ };
26
+ interface WidgetConfig {
27
+ apiKey: string;
28
+ useDefault: boolean;
29
+ proxyConfig: ProxyConfig;
30
+ }
31
+
32
+ interface AITranslateWidgetConfig extends WidgetConfig{
33
+ defaultLanguage: string; languages: string[];
34
+ }
35
+
36
+ interface AIRephraseWidgetConfig extends WidgetConfig {
37
+ defaultTone: string
38
+ }
39
+
20
40
  interface QBConfig {
21
- debug: boolean;
22
- endpoints: {
23
- chat?: string;
24
- api?: string;
41
+ credentials: {
42
+ appId: number;
43
+ accountKey: string;
44
+ authKey: string;
45
+ authSecret: string;
46
+ sessionToken: string;
47
+ };
48
+ configAIApi: {
49
+ AIAnswerAssistWidgetConfig: WidgetConfig;
50
+ AITranslateWidgetConfig: AITranslateWidgetConfig;
51
+ AIRephraseWidgetConfig: AIRephraseWidgetConfig;
25
52
  };
26
- webrtc?: {
27
- iceServers?: RTCIceServer[];
53
+ appConfig: {
54
+ maxFileSize: number;
55
+ sessionTimeOut: number;
56
+ chatProtocol: {
57
+ active: number;
58
+ };
59
+ debug: boolean;
60
+ endpoints: {
61
+ api: string;
62
+ chat: string;
63
+ };
64
+ // on: {
65
+ // sessionExpired: (handleResponse: any, retry: any) => Promise<void>;
66
+ // };
67
+ streamManagement: {
68
+ enable: boolean;
69
+ };
28
70
  };
29
71
  }
30
72
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "quickblox-react-ui-kit",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "main": "dist/index-ui.js",
5
5
  "license": "MIT",
6
6
  "dependencies": {
package/src/App.tsx CHANGED
@@ -1,7 +1,6 @@
1
1
  import React, { useEffect } from 'react';
2
2
  import './App.scss';
3
3
  import { Route, Routes, useNavigate } from 'react-router-dom';
4
- import { QBConfig } from './QBconfig';
5
4
  import useQBConnection from './Presentation/components/providers/QuickBloxUIKitProvider/useQBConnection';
6
5
  import { LocalDataSource } from './Data/source/local/LocalDataSource';
7
6
  import Login from './Presentation/components/layouts/TestStage/LoginView/Login';
@@ -15,6 +14,7 @@ import {
15
14
  import QuickBloxUIKitDesktopLayout from './Presentation/components/layouts/Desktop/QuickBloxUIKitDesktopLayout';
16
15
  import DefaultTheme from './Presentation/assets/DefaultThemes/DefaultTheme';
17
16
  import useQbUIKitDataContext from './Presentation/components/providers/QuickBloxUIKitProvider/useQbUIKitDataContext';
17
+ import { QBConfig } from './QBconfig';
18
18
 
19
19
  function App() {
20
20
  // const currentContext = React.useContext(qbDataContext);
@@ -28,8 +28,8 @@ function App() {
28
28
  const { connectionRepository } = useQBConnection();
29
29
 
30
30
  const initLoginData: LoginData = {
31
- login: '',
32
- password: '',
31
+ login: 'artimed', // vit1
32
+ password: 'quickblox',
33
33
  };
34
34
 
35
35
  const [currentUser, setCurrentUser] = React.useState(initLoginData);
@@ -70,7 +70,7 @@ function App() {
70
70
  authKeyOrAppId: currentContext.InitParams.accountData.authKey,
71
71
  authSecret: currentContext.InitParams.accountData.authSecret,
72
72
  accountKey: currentContext.InitParams.accountData.accountKey,
73
- config: QBConfig.appConfig,
73
+ config: QBConfig,
74
74
  },
75
75
  authData,
76
76
  );
@@ -175,7 +175,7 @@ function App() {
175
175
  authKeyOrAppId: currentContext.InitParams.accountData.authKey,
176
176
  authSecret: currentContext.InitParams.accountData.authSecret,
177
177
  accountKey: currentContext.InitParams.accountData.accountKey,
178
- config: QBConfig.appConfig,
178
+ config: QBConfig,
179
179
  },
180
180
  data,
181
181
  );
@@ -206,14 +206,7 @@ function App() {
206
206
  maxFileSize={QBConfig.appConfig.maxFileSize}
207
207
  // SDK={QB} //init SDK
208
208
  accountData={{ ...QBConfig.credentials, sessionToken: '' }}
209
- // qbConfig={{
210
- // debug: true,
211
- // endpoints: {
212
- // api: 'apilpsgdev.quickblox.com',
213
- // chat: 'chatlpsgdev.quickblox.com',
214
- // },
215
- // webrtc: {},
216
- // }}
209
+ qbConfig={{ ...QBConfig }}
217
210
  loginData={{
218
211
  login: currentUser.login,
219
212
  password: currentUser.password,
@@ -2,3 +2,57 @@ export type FunctionResult<T> = {
2
2
  result: T | T[] | boolean;
3
3
  error: any;
4
4
  };
5
+
6
+ export type ProxyConfig = {
7
+ api: string;
8
+ servername: string;
9
+ port: string;
10
+ sessionToken: string;
11
+ };
12
+ export interface WidgetConfig {
13
+ apiKey: string;
14
+ useDefault: boolean;
15
+ proxyConfig: ProxyConfig;
16
+ }
17
+
18
+ export interface AITranslateWidgetConfig extends WidgetConfig {
19
+ defaultLanguage: string;
20
+ languages: string[];
21
+ }
22
+
23
+ export interface AIRephraseWidgetConfig extends WidgetConfig {
24
+ defaultTone: string;
25
+ }
26
+
27
+ export interface QBConfig {
28
+ credentials: {
29
+ appId: number;
30
+ accountKey: string;
31
+ authKey: string;
32
+ authSecret: string;
33
+ sessionToken: string;
34
+ };
35
+ configAIApi: {
36
+ AIAnswerAssistWidgetConfig: WidgetConfig;
37
+ AITranslateWidgetConfig: AITranslateWidgetConfig;
38
+ AIRephraseWidgetConfig: AIRephraseWidgetConfig;
39
+ };
40
+ appConfig: {
41
+ maxFileSize: number;
42
+ sessionTimeOut: number;
43
+ chatProtocol: {
44
+ active: number;
45
+ };
46
+ debug: boolean;
47
+ endpoints: {
48
+ api: string;
49
+ chat: string;
50
+ };
51
+ // on: {
52
+ // sessionExpired: (handleResponse: any, retry: any) => Promise<void>;
53
+ // };
54
+ streamManagement: {
55
+ enable: boolean;
56
+ };
57
+ };
58
+ }
@@ -1,4 +1,4 @@
1
- import { QBConfig } from '../QBconfig';
1
+ import { ProxyConfig, QBConfig } from '../CommonTypes/FunctionResult';
2
2
 
3
3
  const supportedLanguagesForIATranslate: string[] = [
4
4
  'English',
@@ -74,13 +74,6 @@ const getDefaultSystemLanguage = () => {
74
74
  return language;
75
75
  };
76
76
 
77
- export type ProxyConfig = {
78
- api: string;
79
- servername: string;
80
- port: string;
81
- sessionToken: string;
82
- };
83
-
84
77
  export class DefaultConfigurations {
85
78
  static getDefaultProxyConfig(): ProxyConfig {
86
79
  return {
@@ -93,7 +86,9 @@ export class DefaultConfigurations {
93
86
 
94
87
  static getDefaultLanguageForAITranslate(): string {
95
88
  let languageForAITranslate = 'English';
96
- const { defaultLanguage } = QBConfig.configAIApi.AITranslateWidgetConfig;
89
+ const { defaultLanguage } =
90
+ DefaultConfigurations.getDefaultQBConfig().configAIApi
91
+ .AITranslateWidgetConfig;
97
92
 
98
93
  if (
99
94
  defaultLanguage.length > 0 &&
@@ -113,7 +108,9 @@ export class DefaultConfigurations {
113
108
 
114
109
  static getAdditionalLanguagesForAITranslate(): string[] {
115
110
  const additionalLanguages: string[] = [];
116
- const { languages } = QBConfig.configAIApi.AITranslateWidgetConfig;
111
+ const { languages } =
112
+ DefaultConfigurations.getDefaultQBConfig().configAIApi
113
+ .AITranslateWidgetConfig;
117
114
 
118
115
  languages.forEach((item) => {
119
116
  if (supportedLanguagesForIATranslate.includes(item)) {
@@ -125,4 +122,76 @@ export class DefaultConfigurations {
125
122
 
126
123
  return additionalLanguages;
127
124
  }
125
+
126
+ //
127
+ static getDefaultQBConfig(): QBConfig {
128
+ return {
129
+ credentials: {
130
+ appId: -1,
131
+ accountKey: '',
132
+ authKey: '',
133
+ authSecret: '',
134
+ sessionToken: '',
135
+ },
136
+ configAIApi: {
137
+ AIAnswerAssistWidgetConfig: {
138
+ apiKey: '',
139
+ useDefault: true,
140
+ proxyConfig: {
141
+ api: 'v1/chat/completions',
142
+ servername: 'https://api.openai.com/',
143
+ port: '',
144
+ sessionToken: '',
145
+ },
146
+ },
147
+ AITranslateWidgetConfig: {
148
+ apiKey: '',
149
+ useDefault: true,
150
+ defaultLanguage: 'English',
151
+ languages: [
152
+ 'English',
153
+ 'Spanish',
154
+ 'French',
155
+ 'Portuguese',
156
+ 'German',
157
+ 'Ukrainian',
158
+ ],
159
+ proxyConfig: {
160
+ api: 'v1/chat/completions',
161
+ servername: 'https://api.openai.com/',
162
+ port: '',
163
+ sessionToken: '',
164
+ },
165
+ },
166
+ AIRephraseWidgetConfig: {
167
+ apiKey: '',
168
+ useDefault: true,
169
+ defaultTone: 'Professional',
170
+ proxyConfig: {
171
+ api: 'v1/chat/completions',
172
+ servername: 'https://api.openai.com/',
173
+ port: '',
174
+ sessionToken: '',
175
+ },
176
+ },
177
+ },
178
+ appConfig: {
179
+ maxFileSize: 10 * 1024 * 1024,
180
+ sessionTimeOut: 122,
181
+ chatProtocol: {
182
+ active: 2,
183
+ },
184
+ debug: true,
185
+ endpoints: {
186
+ api: 'api.quickblox.com',
187
+ chat: 'chat.quickblox.com',
188
+ },
189
+ streamManagement: {
190
+ enable: true,
191
+ },
192
+ },
193
+ };
194
+ }
195
+
196
+ //
128
197
  }
@@ -45,7 +45,7 @@ export class AISource {
45
45
 
46
46
  return outputMessage;
47
47
  } catch (err) {
48
- const outputMessage = stringifyError(err);
48
+ const outputMessage: string = stringifyError(err);
49
49
 
50
50
  throw new RepositoryException(outputMessage, -1);
51
51
  }
@@ -85,7 +85,7 @@ export class AISource {
85
85
 
86
86
  return outputMessage;
87
87
  } catch (err) {
88
- const outputMessage = stringifyError(err);
88
+ const outputMessage: string = stringifyError(err);
89
89
 
90
90
  throw new RepositoryException(outputMessage, -1);
91
91
  }
@@ -125,7 +125,7 @@ export class AISource {
125
125
 
126
126
  return outputMessage;
127
127
  } catch (err) {
128
- const outputMessage = stringifyError(err);
128
+ const outputMessage: string = stringifyError(err);
129
129
 
130
130
  throw new RepositoryException(outputMessage, -1);
131
131
  }
@@ -47,14 +47,14 @@ export class MessageDTOMapper implements IDTOMapper {
47
47
  size: item.size,
48
48
  type: item.type,
49
49
  uid: item.uid,
50
- url: item.id.toString() && QB.content.privateUrl(item.id.toString()),
50
+ url: item.uid && QB.content.privateUrl(item.uid),
51
51
  file: {
52
52
  id: item.id,
53
53
  name: item.name,
54
54
  size: item.size,
55
55
  type: item.type,
56
56
  uid: item.uid || '',
57
- url: item.id.toString() && QB.content.privateUrl(item.id.toString()),
57
+ url: item.uid && QB.content.privateUrl(item.uid),
58
58
  },
59
59
  };
60
60
 
@@ -31,7 +31,7 @@
31
31
  box-sizing: border-box;
32
32
  }
33
33
  .incoming-text-message {
34
- background: var(--primary-primary-a-100, #ffffff);
34
+ background: var(--secondary-background);
35
35
  padding: 0px 16px 8px 8px;
36
36
  display: flex;
37
37
  flex-direction: row;
@@ -241,7 +241,7 @@
241
241
  position: relative;
242
242
  }
243
243
  .chat-bubble-background {
244
- background: var(--secondary-secondary-50, #e4e6e8);
244
+ background: var(--incoming-background);
245
245
  border-radius: 22px 22px 22px 0px;
246
246
  padding: 8px 12px 8px 12px;
247
247
  display: flex;
@@ -295,7 +295,7 @@ export default function useMessagesViewModel(
295
295
  const sendTypingTextMessage = () => {
296
296
  console.log('call release in MessagesViewModelWithMockUseCase');
297
297
  userTypingMessageUseCase.execute().catch((reason) => {
298
- const errorMessage = stringifyError(reason);
298
+ const errorMessage: string = stringifyError(reason);
299
299
 
300
300
  console.log('have exception in sendTypingTextMessage: ', errorMessage);
301
301
 
@@ -344,7 +344,7 @@ export default function useMessagesViewModel(
344
344
  sendTextMessageUseCase
345
345
  .execute()
346
346
  .catch((reason) => {
347
- const errorMessage = stringifyError(reason);
347
+ const errorMessage: string = stringifyError(reason);
348
348
 
349
349
  console.log(
350
350
  'exception in sendMessage in useMessagesViewModel',
@@ -421,11 +421,13 @@ export default function useMessagesViewModel(
421
421
  messageToSend.dialogType = dialog.type;
422
422
  const attachments: ChatMessageAttachmentEntity[] = [
423
423
  {
424
- id: fileMessage.uid,
424
+ id: fileMessage.id as string,
425
+ uid: fileMessage.uid,
425
426
  type: fileMessage.type!,
426
427
  file: fileMessage,
427
428
  name: fileMessage.name,
428
429
  size: fileMessage.size,
430
+ url: fileMessage.url,
429
431
  },
430
432
  ];
431
433
 
@@ -8,23 +8,13 @@ import DesktopLayout from './DesktopLayout';
8
8
  import MessagesView from '../../UI/Dialogs/MessagesView/MessagesView';
9
9
  import useDialogsViewModel from '../../../Views/Dialogs/useDialogsViewModel';
10
10
  import { Pagination } from '../../../../Domain/repository/Pagination';
11
- // import { SubscribeToDialogEventsUseCase } from '../../../../Domain/use_cases/SubscribeToDialogEventsUseCase';
12
- // import useEventMessagesRepository from '../../providers/QuickBloxUIKitProvider/useEventMessagesRepository';
13
- // import EventMessageType from '../../../../Domain/entity/EventMessageType';
14
- // import { NotificationTypes } from '../../../../Domain/entity/NotificationTypes';
15
- // import { stringifyError } from '../../../../utils/parse';
16
- // import { DialogEventInfo } from '../../../../Domain/entity/DialogEventInfo';
17
11
  import UiKitTheme from '../../../assets/UiKitTheme';
18
12
  import BaseViewModel from '../../../Views/Base/BaseViewModel';
19
13
  import { AIMessageWidget } from '../../UI/Dialogs/MessagesView/AIWidgets/AIMessageWidget';
20
- import { QBConfig } from '../../../../QBconfig';
21
14
  import UseDefaultAIAssistAnswerWidget from '../../UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIAssistAnswerWidget';
22
15
  import UseDefaultAITranslateWidget from '../../UI/Dialogs/MessagesView/AIWidgets/UseDefaultAITranslateWidget';
23
16
  import UseDefaultAIRephraseMessageWidget from '../../UI/Dialogs/MessagesView/AIWidgets/UseDefaultAIRephraseMessageWidget';
24
- import {
25
- DefaultConfigurations,
26
- ProxyConfig,
27
- } from '../../../../Data/DefaultConfigurations';
17
+ import { DefaultConfigurations } from '../../../../Data/DefaultConfigurations';
28
18
 
29
19
  type AIWidgetPlaceHolder = {
30
20
  enabled: boolean;
@@ -55,6 +45,9 @@ const QuickBloxUIKitDesktopLayout: React.FC<
55
45
  React.useState<BaseViewModel<DialogEntity>>();
56
46
 
57
47
  const currentContext = useQbInitializedDataContext();
48
+ const QBConfig =
49
+ currentContext.InitParams.qbConfig ||
50
+ DefaultConfigurations.getDefaultQBConfig();
58
51
  // const eventMessaging = useEventMessagesRepository();
59
52
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
60
53
  // @ts-ignore
@@ -10,12 +10,10 @@ import {
10
10
  import DialogsRepository from '../../../../Data/repository/DialogsRepository';
11
11
  import { SyncDialogsUseCase } from '../../../../Domain/use_cases/SyncDialogsUseCase';
12
12
  import { BaseUseCase } from '../../../../Domain/use_cases/base/BaseUseCase';
13
- import { QBConfig } from '../../../../QBconfig';
14
13
  import ConnectionRepository from '../../../../Data/repository/ConnectionRepository';
15
14
  import EventMessagesRepository from '../../../../Data/repository/EventMessagesRepository';
16
15
  import { CallBackFunction } from '../../../../Domain/use_cases/base/IUseCase';
17
-
18
- // import packageInfo from '../../../../../package.json';
16
+ import { DefaultConfigurations } from '../../../../Data/DefaultConfigurations';
19
17
 
20
18
  const initialValues = {
21
19
  LOCAL_DATA_SOURCE: new LocalDataSource(), // localstorage or session storage
@@ -57,7 +55,7 @@ type AccountData = {
57
55
  export type InitParams = {
58
56
  maxFileSize: number;
59
57
  accountData: AccountData;
60
- qbConfig?: QBConfig;
58
+ qbConfig: QBConfig;
61
59
  loginData?: LoginData;
62
60
  };
63
61
 
@@ -106,8 +104,10 @@ const initDataContext: QBDataContextType = {
106
104
  // ),
107
105
  },
108
106
  InitParams: {
109
- accountData: QBConfig.credentials,
110
- maxFileSize: QBConfig.appConfig.maxFileSize,
107
+ accountData: DefaultConfigurations.getDefaultQBConfig().credentials,
108
+ maxFileSize:
109
+ DefaultConfigurations.getDefaultQBConfig().appConfig.maxFileSize,
110
+ qbConfig: DefaultConfigurations.getDefaultQBConfig(),
111
111
  },
112
112
  updateQBInitParams: (InitParams: InitParams) => {
113
113
  // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
@@ -240,6 +240,7 @@ function QuickBloxUIKitProvider({
240
240
  password: loginData?.password || '',
241
241
  },
242
242
  maxFileSize,
243
+ qbConfig,
243
244
  });
244
245
 
245
246
  console.log('have InitParams useState completed');
package/src/QBconfig.ts CHANGED
@@ -13,7 +13,7 @@ export const QBConfig = {
13
13
  proxyConfig: {
14
14
  api: 'v1/chat/completions',
15
15
  servername: 'http://localhost',
16
- port: '3001',
16
+ port: '3011',
17
17
  sessionToken: '',
18
18
  },
19
19
  },
@@ -32,17 +32,18 @@ export const QBConfig = {
32
32
  proxyConfig: {
33
33
  api: 'v1/chat/completions',
34
34
  servername: 'http://localhost',
35
- port: '3001',
35
+ port: '3011',
36
36
  sessionToken: '',
37
37
  },
38
38
  },
39
39
  AIRephraseWidgetConfig: {
40
40
  apiKey: '',
41
41
  useDefault: true,
42
+ defaultTone: 'Professional',
42
43
  proxyConfig: {
43
44
  api: 'v1/chat/completions',
44
45
  servername: 'http://localhost',
45
- port: '3001',
46
+ port: '3011',
46
47
  sessionToken: '',
47
48
  },
48
49
  },
@@ -44,7 +44,7 @@ export function isQBError(error: unknown): error is QBError {
44
44
  return typeof error === 'object' && error !== null && 'message' in error;
45
45
  }
46
46
 
47
- export function stringifyError(error: unknown) {
47
+ export function stringifyError(error: unknown): string {
48
48
  if (typeof error === 'string') return error;
49
49
 
50
50
  if (error && typeof error === 'object') {