agx-chat-web 1.2.2 → 1.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/README.md +49 -49
  2. package/dist/agx-chat.esm.js +2 -0
  3. package/dist/agx-chat.esm.js.map +1 -0
  4. package/dist/agx-chat.umd.js +2 -0
  5. package/dist/agx-chat.umd.js.map +1 -0
  6. package/dist/esm/__tests__/app/Messenger/classes/slaCalculations.spec.d.ts +1 -0
  7. package/dist/esm/__tests__/app/Messenger/classes/slaCalculations.spec.js +46 -0
  8. package/dist/esm/__tests__/app/Messenger/classes/slaCalculations.spec.js.map +1 -0
  9. package/dist/esm/app/ChatProvider/ChatProvider.d.ts +7 -0
  10. package/dist/esm/app/ChatProvider/ChatProvider.js +14 -0
  11. package/dist/esm/app/ChatProvider/ChatProvider.js.map +1 -0
  12. package/dist/esm/app/Messenger/classes/slaCalculations.d.ts +30 -0
  13. package/dist/esm/app/Messenger/classes/slaCalculations.js +144 -0
  14. package/dist/esm/app/Messenger/classes/slaCalculations.js.map +1 -0
  15. package/dist/esm/app/Messenger/components/ChatButton/ChatButton.d.ts +14 -0
  16. package/dist/esm/app/Messenger/components/ChatButton/ChatButton.js +31 -0
  17. package/dist/esm/app/Messenger/components/ChatButton/ChatButton.js.map +1 -0
  18. package/dist/esm/app/Messenger/components/ChatTabs/ChatTabs.d.ts +10 -0
  19. package/dist/esm/app/Messenger/components/ChatTabs/ChatTabs.js +15 -0
  20. package/dist/esm/app/Messenger/components/ChatTabs/ChatTabs.js.map +1 -0
  21. package/dist/esm/app/Messenger/components/DocMessage/DocMessage.d.ts +5 -0
  22. package/dist/esm/app/Messenger/components/DocMessage/DocMessage.js +35 -0
  23. package/dist/esm/app/Messenger/components/DocMessage/DocMessage.js.map +1 -0
  24. package/dist/esm/app/Messenger/components/ImagesContainer/ImagesContainer.d.ts +4 -0
  25. package/dist/esm/app/Messenger/components/ImagesContainer/ImagesContainer.js +39 -0
  26. package/dist/esm/app/Messenger/components/ImagesContainer/ImagesContainer.js.map +1 -0
  27. package/dist/esm/app/Messenger/components/IncomingMessage/IncomingMessage.d.ts +7 -0
  28. package/dist/esm/app/Messenger/components/IncomingMessage/IncomingMessage.js +53 -0
  29. package/dist/esm/app/Messenger/components/IncomingMessage/IncomingMessage.js.map +1 -0
  30. package/dist/esm/app/Messenger/components/InfiniteScroll/InfiniteScroll.d.ts +13 -0
  31. package/dist/esm/app/Messenger/components/InfiniteScroll/InfiniteScroll.js +43 -0
  32. package/dist/esm/app/Messenger/components/InfiniteScroll/InfiniteScroll.js.map +1 -0
  33. package/dist/esm/app/Messenger/components/InputFile/InputFile.d.ts +11 -0
  34. package/dist/esm/app/Messenger/components/InputFile/InputFile.js +74 -0
  35. package/dist/esm/app/Messenger/components/InputFile/InputFile.js.map +1 -0
  36. package/dist/esm/app/Messenger/components/MessageBallon/MessageBalloon.d.ts +9 -0
  37. package/dist/esm/app/Messenger/components/MessageBallon/MessageBalloon.js +34 -0
  38. package/dist/esm/app/Messenger/components/MessageBallon/MessageBalloon.js.map +1 -0
  39. package/dist/esm/app/Messenger/components/MessengerAvatar/MessengerAvatar.d.ts +4 -0
  40. package/dist/esm/app/Messenger/components/MessengerAvatar/MessengerAvatar.js +13 -0
  41. package/dist/esm/app/Messenger/components/MessengerAvatar/MessengerAvatar.js.map +1 -0
  42. package/dist/esm/app/Messenger/components/MessengerThemeWrapper/MessengerThemeWrapper.d.ts +41 -0
  43. package/dist/esm/app/Messenger/components/MessengerThemeWrapper/MessengerThemeWrapper.js +40 -0
  44. package/dist/esm/app/Messenger/components/MessengerThemeWrapper/MessengerThemeWrapper.js.map +1 -0
  45. package/dist/esm/app/Messenger/components/RenderFileIcon/RenderFileIcon.d.ts +6 -0
  46. package/dist/esm/app/Messenger/components/RenderFileIcon/RenderFileIcon.js +29 -0
  47. package/dist/esm/app/Messenger/components/RenderFileIcon/RenderFileIcon.js.map +1 -0
  48. package/dist/esm/app/Messenger/components/SearchInput/SearchInput.d.ts +11 -0
  49. package/dist/esm/app/Messenger/components/SearchInput/SearchInput.js +33 -0
  50. package/dist/esm/app/Messenger/components/SearchInput/SearchInput.js.map +1 -0
  51. package/dist/esm/app/Messenger/components/Select/Select.d.ts +14 -0
  52. package/dist/esm/app/Messenger/components/Select/Select.js +16 -0
  53. package/dist/esm/app/Messenger/components/Select/Select.js.map +1 -0
  54. package/dist/esm/app/Messenger/components/SendMessageForm/SendMessageForm.d.ts +13 -0
  55. package/dist/esm/app/Messenger/components/SendMessageForm/SendMessageForm.js +143 -0
  56. package/dist/esm/app/Messenger/components/SendMessageForm/SendMessageForm.js.map +1 -0
  57. package/dist/esm/app/Messenger/components/SenderMessages/SenderMessages.d.ts +4 -0
  58. package/dist/esm/app/Messenger/components/SenderMessages/SenderMessages.js +43 -0
  59. package/dist/esm/app/Messenger/components/SenderMessages/SenderMessages.js.map +1 -0
  60. package/dist/esm/app/Messenger/components/SystemMessage/SystemMessage.d.ts +4 -0
  61. package/dist/esm/app/Messenger/components/SystemMessage/SystemMessage.js +14 -0
  62. package/dist/esm/app/Messenger/components/SystemMessage/SystemMessage.js.map +1 -0
  63. package/dist/esm/app/Messenger/components/TextArea/TextArea.d.ts +9 -0
  64. package/dist/esm/app/Messenger/components/TextArea/TextArea.js +14 -0
  65. package/dist/esm/app/Messenger/components/TextArea/TextArea.js.map +1 -0
  66. package/dist/esm/app/Messenger/components/Tooltip/Tooltip.d.ts +7 -0
  67. package/dist/esm/app/Messenger/components/Tooltip/Tooltip.js +9 -0
  68. package/dist/esm/app/Messenger/components/Tooltip/Tooltip.js.map +1 -0
  69. package/dist/esm/app/Messenger/hooks/useConversations.d.ts +21 -0
  70. package/dist/esm/app/Messenger/hooks/useConversations.js +105 -0
  71. package/dist/esm/app/Messenger/hooks/useConversations.js.map +1 -0
  72. package/dist/esm/app/Messenger/hooks/useMessages.d.ts +9 -0
  73. package/dist/esm/app/Messenger/hooks/useMessages.js +37 -0
  74. package/dist/esm/app/Messenger/hooks/useMessages.js.map +1 -0
  75. package/dist/esm/app/Messenger/hooks/useThemes.d.ts +32 -0
  76. package/dist/esm/app/Messenger/hooks/useThemes.js +11 -0
  77. package/dist/esm/app/Messenger/hooks/useThemes.js.map +1 -0
  78. package/dist/esm/app/Messenger/icons/AttachFileIcon.d.ts +4 -0
  79. package/dist/esm/app/Messenger/icons/AttachFileIcon.js +10 -0
  80. package/dist/esm/app/Messenger/icons/AttachFileIcon.js.map +1 -0
  81. package/dist/esm/app/Messenger/icons/CSVFileIcon.d.ts +4 -0
  82. package/dist/esm/app/Messenger/icons/CSVFileIcon.js +7 -0
  83. package/dist/esm/app/Messenger/icons/CSVFileIcon.js.map +1 -0
  84. package/dist/esm/app/Messenger/icons/CloseIcon.d.ts +2 -0
  85. package/dist/esm/app/Messenger/icons/CloseIcon.js +9 -0
  86. package/dist/esm/app/Messenger/icons/CloseIcon.js.map +1 -0
  87. package/dist/esm/app/Messenger/icons/DOCFileIcon.d.ts +4 -0
  88. package/dist/esm/app/Messenger/icons/DOCFileIcon.js +18 -0
  89. package/dist/esm/app/Messenger/icons/DOCFileIcon.js.map +1 -0
  90. package/dist/esm/app/Messenger/icons/DownloadMinimalistIcon.d.ts +7 -0
  91. package/dist/esm/app/Messenger/icons/DownloadMinimalistIcon.js +12 -0
  92. package/dist/esm/app/Messenger/icons/DownloadMinimalistIcon.js.map +1 -0
  93. package/dist/esm/app/Messenger/icons/EmptyIcon.d.ts +2 -0
  94. package/dist/esm/app/Messenger/icons/EmptyIcon.js +8 -0
  95. package/dist/esm/app/Messenger/icons/EmptyIcon.js.map +1 -0
  96. package/dist/esm/app/Messenger/icons/MP4FileIcon.d.ts +4 -0
  97. package/dist/esm/app/Messenger/icons/MP4FileIcon.js +7 -0
  98. package/dist/esm/app/Messenger/icons/MP4FileIcon.js.map +1 -0
  99. package/dist/esm/app/Messenger/icons/MessageIcon.d.ts +6 -0
  100. package/dist/esm/app/Messenger/icons/MessageIcon.js +12 -0
  101. package/dist/esm/app/Messenger/icons/MessageIcon.js.map +1 -0
  102. package/dist/esm/app/Messenger/icons/PDFFileIcon.d.ts +4 -0
  103. package/dist/esm/app/Messenger/icons/PDFFileIcon.js +18 -0
  104. package/dist/esm/app/Messenger/icons/PDFFileIcon.js.map +1 -0
  105. package/dist/esm/app/Messenger/icons/ReadIcon.d.ts +4 -0
  106. package/dist/esm/app/Messenger/icons/ReadIcon.js +7 -0
  107. package/dist/esm/app/Messenger/icons/ReadIcon.js.map +1 -0
  108. package/dist/esm/app/Messenger/icons/SearchIcon.d.ts +2 -0
  109. package/dist/esm/app/Messenger/icons/SearchIcon.js +8 -0
  110. package/dist/esm/app/Messenger/icons/SearchIcon.js.map +1 -0
  111. package/dist/esm/app/Messenger/icons/TimerIcon.d.ts +4 -0
  112. package/dist/esm/app/Messenger/icons/TimerIcon.js +7 -0
  113. package/dist/esm/app/Messenger/icons/TimerIcon.js.map +1 -0
  114. package/dist/esm/app/Messenger/icons/TrashIcon.d.ts +6 -0
  115. package/dist/esm/app/Messenger/icons/TrashIcon.js +7 -0
  116. package/dist/esm/app/Messenger/icons/TrashIcon.js.map +1 -0
  117. package/dist/esm/app/Messenger/views/MessengerList.d.ts +40 -0
  118. package/dist/esm/app/Messenger/views/MessengerList.js +46 -0
  119. package/dist/esm/app/Messenger/views/MessengerList.js.map +1 -0
  120. package/dist/esm/app/Messenger/views/MessengerListItem.d.ts +12 -0
  121. package/dist/esm/app/Messenger/views/MessengerListItem.js +99 -0
  122. package/dist/esm/app/Messenger/views/MessengerListItem.js.map +1 -0
  123. package/dist/esm/app/Messenger/views/MessengerMessages.d.ts +35 -0
  124. package/dist/esm/app/Messenger/views/MessengerMessages.js +181 -0
  125. package/dist/esm/app/Messenger/views/MessengerMessages.js.map +1 -0
  126. package/dist/esm/app/Messenger/views/NewFormChat.d.ts +13 -0
  127. package/dist/esm/app/Messenger/views/NewFormChat.js +68 -0
  128. package/dist/esm/app/Messenger/views/NewFormChat.js.map +1 -0
  129. package/dist/esm/app/i18n/index.d.ts +3 -0
  130. package/dist/esm/app/i18n/index.js +32 -0
  131. package/dist/esm/app/i18n/index.js.map +1 -0
  132. package/dist/esm/index.d.ts +11 -0
  133. package/dist/esm/index.js +12 -0
  134. package/dist/esm/index.js.map +1 -0
  135. package/dist/esm/setupTests.d.ts +1 -0
  136. package/{src/setupTests.ts → dist/esm/setupTests.js} +2 -1
  137. package/dist/esm/setupTests.js.map +1 -0
  138. package/dist/esm/types.d.ts +140 -0
  139. package/dist/esm/types.js +2 -0
  140. package/dist/esm/types.js.map +1 -0
  141. package/package.json +90 -91
  142. package/src/__tests__/app/Messenger/classes/slaCalculations.spec.ts +0 -122
  143. package/src/app/ChatProvider/ChatProvider.tsx +0 -20
  144. package/src/app/Messenger/classes/slaCalculations.ts +0 -197
  145. package/src/app/Messenger/components/ChatButton/ChatButton.tsx +0 -64
  146. package/src/app/Messenger/components/ChatTabs/ChatTabs.less +0 -18
  147. package/src/app/Messenger/components/ChatTabs/ChatTabs.tsx +0 -32
  148. package/src/app/Messenger/components/DocMessage/DocMessage.less +0 -71
  149. package/src/app/Messenger/components/DocMessage/DocMessage.tsx +0 -50
  150. package/src/app/Messenger/components/ImagesContainer/ImagesContainer.less +0 -79
  151. package/src/app/Messenger/components/ImagesContainer/ImagesContainer.tsx +0 -51
  152. package/src/app/Messenger/components/IncomingMessage/IncomingMessage.tsx +0 -170
  153. package/src/app/Messenger/components/InfiniteScroll/InfiniteScroll.tsx +0 -80
  154. package/src/app/Messenger/components/InputFile/InputFile.tsx +0 -147
  155. package/src/app/Messenger/components/InputFile/inputFile.less +0 -59
  156. package/src/app/Messenger/components/MessageBallon/MessageBalloon.tsx +0 -100
  157. package/src/app/Messenger/components/MessengerAvatar/MessengerAvatar.tsx +0 -29
  158. package/src/app/Messenger/components/MessengerThemeWrapper/MessengerThemeWrapper.tsx +0 -62
  159. package/src/app/Messenger/components/RenderFileIcon/RenderFileIcon.tsx +0 -40
  160. package/src/app/Messenger/components/SearchInput/SearchInput.less +0 -45
  161. package/src/app/Messenger/components/SearchInput/SearchInput.tsx +0 -77
  162. package/src/app/Messenger/components/Select/Select.less +0 -22
  163. package/src/app/Messenger/components/Select/Select.tsx +0 -56
  164. package/src/app/Messenger/components/SendMessageForm/SendMessageForm.tsx +0 -254
  165. package/src/app/Messenger/components/SenderMessages/SenderMessages.tsx +0 -91
  166. package/src/app/Messenger/components/SystemMessage/SystemMessage.tsx +0 -25
  167. package/src/app/Messenger/components/TextArea/TextArea.tsx +0 -35
  168. package/src/app/Messenger/components/TextArea/Textarea.less +0 -22
  169. package/src/app/Messenger/components/Tooltip/Tooltip.less +0 -27
  170. package/src/app/Messenger/components/Tooltip/Tooltip.tsx +0 -17
  171. package/src/app/Messenger/hooks/useConversations.tsx +0 -143
  172. package/src/app/Messenger/hooks/useMessages.tsx +0 -49
  173. package/src/app/Messenger/hooks/useThemes.tsx +0 -14
  174. package/src/app/Messenger/icons/AttachFileIcon.tsx +0 -20
  175. package/src/app/Messenger/icons/CSVFileIcon.tsx +0 -26
  176. package/src/app/Messenger/icons/CloseIcon.tsx +0 -20
  177. package/src/app/Messenger/icons/DOCFileIcon.tsx +0 -54
  178. package/src/app/Messenger/icons/DownloadMinimalistIcon.tsx +0 -37
  179. package/src/app/Messenger/icons/EmptyIcon.tsx +0 -20
  180. package/src/app/Messenger/icons/MP4FileIcon.tsx +0 -26
  181. package/src/app/Messenger/icons/MessageIcon.tsx +0 -27
  182. package/src/app/Messenger/icons/PDFFileIcon.tsx +0 -54
  183. package/src/app/Messenger/icons/ReadIcon.tsx +0 -18
  184. package/src/app/Messenger/icons/SearchIcon.tsx +0 -20
  185. package/src/app/Messenger/icons/TimerIcon.tsx +0 -18
  186. package/src/app/Messenger/icons/TrashIcon.tsx +0 -21
  187. package/src/app/Messenger/views/Messenger.less +0 -623
  188. package/src/app/Messenger/views/MessengerList.tsx +0 -170
  189. package/src/app/Messenger/views/MessengerListItem.tsx +0 -178
  190. package/src/app/Messenger/views/MessengerMessages.tsx +0 -414
  191. package/src/app/Messenger/views/NewFormChat.tsx +0 -145
  192. package/src/app/i18n/index.ts +0 -36
  193. package/src/app/i18n/locales/en.json +0 -64
  194. package/src/app/i18n/locales/pt.json +0 -64
  195. package/src/assets/right-arrow.svg +0 -10
  196. package/src/index.ts +0 -23
  197. package/src/react-app-env.d.ts +0 -19
  198. package/src/styles/abstracts/animations.less +0 -8
  199. package/src/styles/abstracts/mixins.less +0 -5
  200. package/src/styles/abstracts/variables.less +0 -31
  201. package/src/styles/base/base.less +0 -6
  202. package/src/styles/index.less +0 -5
  203. package/src/types.ts +0 -174
@@ -0,0 +1,46 @@
1
+ import { describe, expect, it } from '@jest/globals';
2
+ import { SlaDates, timeAsDayjs, } from '../../../../app/Messenger/classes/slaCalculations';
3
+ var workingHours = { start: 9, end: 18 };
4
+ describe('slaCalculations class', function () {
5
+ it('Should return true seconds in working hour', function () {
6
+ var sla = new SlaDates(1300);
7
+ expect(sla.canUpdateClock(timeAsDayjs('2023-07-21T10:19:29.224+00:00', { applyTimezone: false }))).toBeTruthy();
8
+ });
9
+ it('Should return false seconds from canUpdateClock', function () {
10
+ var sla = new SlaDates(1300);
11
+ expect(sla.canUpdateClock(timeAsDayjs('2023-07-21T20:19:29.224+00:00', { applyTimezone: false }))).toBeFalsy();
12
+ });
13
+ it('Should return false in holiday', function () {
14
+ var sla = new SlaDates(1300);
15
+ expect(sla.canUpdateClock(timeAsDayjs('2023-10-12T10:19:29.224+00:00', { applyTimezone: false }))).toBeFalsy();
16
+ });
17
+ it('Should return 3600 seconds diffence', function () {
18
+ var sla = new SlaDates(3600);
19
+ expect(sla.getDifferenceInSeconds(timeAsDayjs('2023-07-19T09:19:29.224+00:00', { applyTimezone: false }), timeAsDayjs('2023-07-19T10:19:29.224+00:00', { applyTimezone: false }), workingHours)).toBe(3600);
20
+ });
21
+ it('Should return 7200 seconds diffence', function () {
22
+ var sla = new SlaDates(3600);
23
+ expect(sla.getDifferenceInSeconds(timeAsDayjs('2023-10-12T09:19:29.224+00:00', { applyTimezone: false }), timeAsDayjs('2023-10-12T11:19:29.224+00:00', { applyTimezone: false }), workingHours)).toBe(0);
24
+ });
25
+ it('Should return 7200 seconds diffence', function () {
26
+ var sla = new SlaDates(3600);
27
+ expect(sla.getDifferenceInSeconds(timeAsDayjs('2023-07-21T17:00:00.000+00:00', { applyTimezone: false }), timeAsDayjs('2023-07-24T10:00:00.000+00:00', { applyTimezone: false }), workingHours)).toBe(7200);
28
+ });
29
+ it('Should return 64800 seconds diffence', function () {
30
+ var sla = new SlaDates(3600);
31
+ expect(sla.getDifferenceInSeconds(timeAsDayjs('2023-07-21T09:00:00.000+00:00', { applyTimezone: false }), timeAsDayjs('2023-07-24T18:00:00.000+00:00', { applyTimezone: false }), workingHours)).toBe(64800);
32
+ });
33
+ it('Should return 43200 seconds diffence', function () {
34
+ var sla = new SlaDates(3600);
35
+ expect(sla.getDifferenceInSeconds(timeAsDayjs('2023-07-21T09:00:00.000+00:00', { applyTimezone: false }), timeAsDayjs('2023-07-24T12:00:00.000+00:00', { applyTimezone: false }), workingHours)).toBe(43200);
36
+ });
37
+ it('Should return 1800 seconds diffence', function () {
38
+ var sla = new SlaDates(3600);
39
+ expect(sla.getDifferenceInSeconds(timeAsDayjs('2023-07-24T07:00:00.000+00:00', { applyTimezone: false }), timeAsDayjs('2023-07-24T09:30:00.000+00:00', { applyTimezone: false }), workingHours)).toBe(1800);
40
+ });
41
+ it('Should return 3600 seconds diffence', function () {
42
+ var sla = new SlaDates(3600);
43
+ expect(sla.getDifferenceInSeconds(timeAsDayjs('2023-07-24T22:00:00.000+00:00', { applyTimezone: false }), timeAsDayjs('2023-07-25T10:00:00.000+00:00', { applyTimezone: false }), workingHours)).toBe(3600);
44
+ });
45
+ });
46
+ //# sourceMappingURL=slaCalculations.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slaCalculations.spec.js","sourceRoot":"","sources":["../../../../../../src/__tests__/app/Messenger/classes/slaCalculations.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import React, { ReactNode } from 'react';
2
+ interface ChatProviderProps {
3
+ children: ReactNode;
4
+ locale?: string;
5
+ }
6
+ declare function ChatProvider({ children, locale }: ChatProviderProps): React.JSX.Element;
7
+ export default ChatProvider;
@@ -0,0 +1,14 @@
1
+ import React, { useEffect } from 'react';
2
+ import { I18nextProvider } from 'react-i18next';
3
+ import defaultI18n from '../i18n';
4
+ function ChatProvider(_a) {
5
+ var children = _a.children, locale = _a.locale;
6
+ useEffect(function () {
7
+ if (locale) {
8
+ defaultI18n.changeLanguage(locale);
9
+ }
10
+ }, [locale]);
11
+ return React.createElement(I18nextProvider, { i18n: defaultI18n }, children);
12
+ }
13
+ export default ChatProvider;
14
+ //# sourceMappingURL=ChatProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatProvider.js","sourceRoot":"","sources":["../../../../src/app/ChatProvider/ChatProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAa,SAAS,EAAE,MAAM,OAAO,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,WAAW,MAAM,SAAS,CAAA;AAOjC,SAAS,YAAY,CAAE,EAAuC;QAArC,QAAQ,cAAA,EAAE,MAAM,YAAA;IACvC,SAAS,CAAC;QACR,IAAI,MAAM,EAAE,CAAC;YACX,WAAW,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;QACpC,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;IAEZ,OAAO,oBAAC,eAAe,IAAC,IAAI,EAAE,WAAW,IAAG,QAAQ,CAAmB,CAAA;AACzE,CAAC;AAED,eAAe,YAAY,CAAA"}
@@ -0,0 +1,30 @@
1
+ import dayjs, { ConfigType, Dayjs } from 'dayjs';
2
+ export declare const timeAsDayjs: (value?: ConfigType, options?: {
3
+ server?: boolean;
4
+ applyTimezone?: boolean;
5
+ }) => Dayjs;
6
+ export declare const time: (value?: ConfigType, options?: {
7
+ server?: boolean;
8
+ applyTimezone?: boolean;
9
+ }) => Date;
10
+ export declare class SlaDates {
11
+ seconds: number | null;
12
+ constructor(seconds: number);
13
+ private holidays;
14
+ private isWorkingDay;
15
+ private isWorkingHour;
16
+ isWeekendOrHoliday(date: Dayjs | Date | string): boolean;
17
+ private isHoliday;
18
+ canUpdateClock(date: Dayjs): boolean;
19
+ getDiffInSeconds(startDate: dayjs.Dayjs, endDate: dayjs.Dayjs): number;
20
+ calculateWorkingTime(startDate: Dayjs, endDate: Dayjs, workingHours: {
21
+ start: number;
22
+ end: number;
23
+ }): number;
24
+ getDifferenceInSeconds(startDate: Dayjs, endDate: Dayjs, workingHours: {
25
+ start: number;
26
+ end: number;
27
+ }): number;
28
+ static secondsInHours(currentSeconds: number): string;
29
+ static getColorsByTime(seconds: number): "#DD4E4E" | "#00CF7B" | "#FF9838" | "#151919";
30
+ }
@@ -0,0 +1,144 @@
1
+ import dayjs from 'dayjs';
2
+ import dayjsBR from 'dayjs/locale/pt-br';
3
+ import utc from 'dayjs/plugin/utc';
4
+ import timezone from 'dayjs/plugin/timezone';
5
+ import isToday from 'dayjs/plugin/isToday';
6
+ var serverTz = 'America/Sao_Paulo';
7
+ dayjs.extend(utc);
8
+ dayjs.extend(timezone);
9
+ dayjs.extend(isToday);
10
+ dayjs.locale(dayjsBR);
11
+ export var timeAsDayjs = function (value, options) {
12
+ if (value === void 0) { value = new Date(); }
13
+ var server = options === null || options === void 0 ? void 0 : options.server;
14
+ var applyTimezone = options === null || options === void 0 ? void 0 : options.applyTimezone;
15
+ var timezone = dayjs.tz.guess();
16
+ if (!(applyTimezone !== null && applyTimezone !== void 0 ? applyTimezone : true))
17
+ timezone = 'GMT';
18
+ else if (server !== null && server !== void 0 ? server : false)
19
+ timezone = serverTz;
20
+ return dayjs.tz(value, timezone);
21
+ };
22
+ export var time = function (value, options) {
23
+ if (value === void 0) { value = new Date(); }
24
+ var server = options === null || options === void 0 ? void 0 : options.server;
25
+ var applyTimezone = options === null || options === void 0 ? void 0 : options.applyTimezone;
26
+ var aux;
27
+ if (!(applyTimezone !== null && applyTimezone !== void 0 ? applyTimezone : true))
28
+ aux = dayjs.tz(value, 'GMT'); // Set applyTimezone to false when timezone is applied incorrectly (usually when working with JSDate and timestamps)
29
+ else if (server !== null && server !== void 0 ? server : false)
30
+ aux = dayjs.tz(value, serverTz);
31
+ else
32
+ aux = dayjs.tz(value, dayjs.tz.guess());
33
+ return new Date(Date.UTC(aux.year(), aux.month(), aux.date(), aux.hour(), aux.minute(), aux.second(), aux.millisecond()));
34
+ };
35
+ var SlaDates = /** @class */ (function () {
36
+ function SlaDates(seconds) {
37
+ this.holidays = {
38
+ 2023: ['09-07', '10-12', '10-17', '11-02', '11-15', '11-20', '12-25'],
39
+ };
40
+ this.seconds = seconds;
41
+ }
42
+ SlaDates.prototype.isWorkingDay = function (date) {
43
+ var dayOfWeek = date.day();
44
+ return dayOfWeek >= 1 && dayOfWeek <= 5; // Monday to Friday (1 to 5)
45
+ };
46
+ SlaDates.prototype.isWorkingHour = function (date) {
47
+ var hour = date.hour();
48
+ return hour >= 9 && hour <= 18; // Between 9 AM and 5 PM (inclusive)
49
+ };
50
+ SlaDates.prototype.isWeekendOrHoliday = function (date) {
51
+ var weekDay = timeAsDayjs(date, { applyTimezone: false }).day();
52
+ if ([6, 0].includes(weekDay))
53
+ return true;
54
+ var formatedDate = timeAsDayjs(date).format('MM-DD');
55
+ var isHollyday = this.holidays[2023].includes(formatedDate);
56
+ return isHollyday;
57
+ };
58
+ SlaDates.prototype.isHoliday = function (date) {
59
+ var formatedDate = timeAsDayjs(date, { applyTimezone: false }).format('MM-DD');
60
+ var isHollyday = this.holidays[2023].includes(formatedDate);
61
+ return isHollyday;
62
+ };
63
+ SlaDates.prototype.canUpdateClock = function (date) {
64
+ var isWorking = this.isWorkingDay(date) && this.isWorkingHour(date);
65
+ return !this.isWeekendOrHoliday(date) && isWorking;
66
+ };
67
+ SlaDates.prototype.getDiffInSeconds = function (startDate, endDate) {
68
+ var diffInSeconds = endDate.diff(startDate, 'second');
69
+ return diffInSeconds;
70
+ };
71
+ SlaDates.prototype.calculateWorkingTime = function (startDate, endDate, workingHours) {
72
+ var current = startDate.clone();
73
+ var workingTime = 0;
74
+ while (current.isBefore(endDate)) {
75
+ // Skip weekends (Saturday and Sunday) and Holydays
76
+ if (this.isWorkingDay(current) && !this.isHoliday(current)) {
77
+ var startOfDay = current
78
+ .clone()
79
+ .startOf('day')
80
+ .add(workingHours.start, 'hour');
81
+ var endOfDay = current
82
+ .clone()
83
+ .startOf('day')
84
+ .add(workingHours.end, 'hour');
85
+ if (current.isBefore(startOfDay)) {
86
+ // If current time is before the start of working hours, move to the start of working hours
87
+ current = startOfDay.clone();
88
+ }
89
+ if (current.isAfter(endOfDay)) {
90
+ current = current.clone().add(1, 'day').startOf('day');
91
+ }
92
+ else if (endDate.isAfter(endOfDay)) {
93
+ // If end date is after the end of working hours, add a full working day
94
+ workingTime += Math.abs(endOfDay.clone().diff(current, 'second'));
95
+ current = current
96
+ .clone()
97
+ .add(1, 'day')
98
+ .startOf('day')
99
+ .add(workingHours.start, 'hour');
100
+ }
101
+ else {
102
+ // Calculate working time for the last day (end date)
103
+ workingTime += Math.abs(endDate.clone().diff(current, 'second'));
104
+ break;
105
+ }
106
+ }
107
+ else {
108
+ // Move to the next day
109
+ current = current.clone().add(1, 'day').startOf('day');
110
+ }
111
+ }
112
+ return workingTime;
113
+ };
114
+ // Function to calculate the difference in seconds between two dates considering working hours
115
+ SlaDates.prototype.getDifferenceInSeconds = function (startDate, endDate, workingHours) {
116
+ if (endDate.isBefore(startDate)) {
117
+ throw new Error('End date should be after the start date.');
118
+ }
119
+ var workingTimeInSeconds = this.calculateWorkingTime(startDate, endDate, workingHours);
120
+ return workingTimeInSeconds;
121
+ };
122
+ SlaDates.secondsInHours = function (currentSeconds) {
123
+ var hours = Math.floor(currentSeconds / 3600);
124
+ var minutes = Math.floor((currentSeconds % 3600) / 60);
125
+ var seconds = currentSeconds % 60;
126
+ return "".concat(hours.toString().padStart(2, '0'), ":").concat(minutes.toString().padStart(2, '0'), ":").concat(seconds.toString().padStart(2, '0'));
127
+ };
128
+ SlaDates.getColorsByTime = function (seconds) {
129
+ var hours = seconds / 3600;
130
+ if (hours <= 2) {
131
+ return '#00CF7B';
132
+ }
133
+ if (hours >= 2 && hours < 3) {
134
+ return '#FF9838';
135
+ }
136
+ if (hours >= 3 && hours < 4) {
137
+ return '#DD4E4E';
138
+ }
139
+ return '#151919';
140
+ };
141
+ return SlaDates;
142
+ }());
143
+ export { SlaDates };
144
+ //# sourceMappingURL=slaCalculations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slaCalculations.js","sourceRoot":"","sources":["../../../../../src/app/Messenger/classes/slaCalculations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import React from 'react';
2
+ interface INewChatButton {
3
+ removeActiveItem: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void;
4
+ messegerView: 'empty' | 'messages' | 'newChat';
5
+ chatButtons: {
6
+ label: string;
7
+ onClick: () => void;
8
+ type: string;
9
+ canSee: boolean;
10
+ disabled?: boolean;
11
+ }[];
12
+ }
13
+ declare function ChatButtons({ chatButtons, removeActiveItem }: INewChatButton): React.JSX.Element;
14
+ export default ChatButtons;
@@ -0,0 +1,31 @@
1
+ import React from 'react';
2
+ import useTheme from '../../hooks/useThemes';
3
+ function ChatButtons(_a) {
4
+ var chatButtons = _a.chatButtons, removeActiveItem = _a.removeActiveItem;
5
+ var theme = useTheme().theme;
6
+ var getButtonType = function (type, disabled) {
7
+ if (type === 'primary')
8
+ return {
9
+ background: disabled ? theme === null || theme === void 0 ? void 0 : theme.buttonsDisabled : theme === null || theme === void 0 ? void 0 : theme.buttonPrimary,
10
+ color: theme === null || theme === void 0 ? void 0 : theme.buttonPrimaryText,
11
+ };
12
+ if (type === 'outlined')
13
+ return {
14
+ background: 'transparent',
15
+ color: theme === null || theme === void 0 ? void 0 : theme.asideFontColor,
16
+ border: "".concat(theme === null || theme === void 0 ? void 0 : theme.asideFontColor, " 1px solid"),
17
+ };
18
+ return;
19
+ };
20
+ return (React.createElement(React.Fragment, null, chatButtons.map(function (button) {
21
+ return (button.canSee && (React.createElement(React.Fragment, null,
22
+ React.createElement("button", { key: "button-".concat(button.label), className: button.disabled
23
+ ? 'messenger__chat-button messenger__chat-button--disabled'
24
+ : 'messenger__chat-button', onClick: function (event) {
25
+ button.onClick();
26
+ removeActiveItem(event);
27
+ }, style: getButtonType(button.type, button.disabled) }, button.label))));
28
+ })));
29
+ }
30
+ export default ChatButtons;
31
+ //# sourceMappingURL=ChatButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatButton.js","sourceRoot":"","sources":["../../../../../../src/app/Messenger/components/ChatButton/ChatButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,QAAQ,MAAM,uBAAuB,CAAA;AAc5C,SAAS,WAAW,CAAE,EAAiD;QAA/C,WAAW,iBAAA,EAAE,gBAAgB,sBAAA;IAC3C,IAAA,KAAK,GAAK,QAAQ,EAAE,MAAf,CAAe;IAE5B,IAAM,aAAa,GAAG,UAAC,IAAY,EAAE,QAAkB;QACrD,IAAI,IAAI,KAAK,SAAS;YACpB,OAAO;gBACL,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,CAAC,CAAC,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa;gBACpE,KAAK,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,iBAAiB;aAChC,CAAA;QAEH,IAAI,IAAI,KAAK,UAAU;YACrB,OAAO;gBACL,UAAU,EAAE,aAAa;gBACzB,KAAK,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc;gBAC5B,MAAM,EAAE,UAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,eAAY;aAC7C,CAAA;QACH,OAAM;IACR,CAAC,CAAA;IAED,OAAO,CACL,0CACG,WAAW,CAAC,GAAG,CAAC,UAAC,MAAM;QACtB,OAAO,CACL,MAAM,CAAC,MAAM,IAAI,CACf;YACE,gCACE,GAAG,EAAE,iBAAU,MAAM,CAAC,KAAK,CAAE,EAC7B,SAAS,EACP,MAAM,CAAC,QAAQ;oBACb,CAAC,CAAC,yDAAyD;oBAC3D,CAAC,CAAC,wBAAwB,EAE9B,OAAO,EAAE,UAAC,KAAK;oBACb,MAAM,CAAC,OAAO,EAAE,CAAA;oBAChB,gBAAgB,CAAC,KAAK,CAAC,CAAA;gBACzB,CAAC,EACD,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAEjD,MAAM,CAAC,KAAK,CACN,CACR,CACJ,CACF,CAAA;IACH,CAAC,CAAC,CACD,CACJ,CAAA;AACH,CAAC;AAED,eAAe,WAAW,CAAA"}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ interface IProps {
3
+ handleChangeTickets: (tab: string) => void;
4
+ chatListTabs: {
5
+ value: string;
6
+ label: string;
7
+ }[];
8
+ }
9
+ declare function ChatTabs({ handleChangeTickets, chatListTabs }: IProps): React.JSX.Element;
10
+ export default ChatTabs;
@@ -0,0 +1,15 @@
1
+ import useTheme from '../../hooks/useThemes';
2
+ import { activeItem } from '../../views/MessengerListItem';
3
+ import React from 'react';
4
+ function ChatTabs(_a) {
5
+ var handleChangeTickets = _a.handleChangeTickets, chatListTabs = _a.chatListTabs;
6
+ var theme = useTheme().theme;
7
+ return (React.createElement("div", { className: 'chat-tabs', style: { color: theme.asideFontColor } }, chatListTabs.map(function (tab, index) {
8
+ return (React.createElement("button", { key: "chatListTab-".concat(index), className: "chat-tabs__button ".concat(index === 0 && 'chat-tabs__button--active'), onClick: function (e) {
9
+ handleChangeTickets(tab.value);
10
+ activeItem(e, 'chat-tabs__button', 'chat-tabs__button--active');
11
+ } }, tab.label));
12
+ })));
13
+ }
14
+ export default ChatTabs;
15
+ //# sourceMappingURL=ChatTabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatTabs.js","sourceRoot":"","sources":["../../../../../../src/app/Messenger/components/ChatTabs/ChatTabs.tsx"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,uBAAuB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAC1D,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,SAAS,QAAQ,CAAE,EAA6C;QAA3C,mBAAmB,yBAAA,EAAE,YAAY,kBAAA;IAC5C,IAAA,KAAK,GAAK,QAAQ,EAAE,MAAf,CAAe;IAC5B,OAAO,CACL,6BAAK,SAAS,EAAC,WAAW,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,cAAc,EAAE,IAC9D,YAAY,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,KAAK;QAC3B,OAAO,CACL,gCACE,GAAG,EAAE,sBAAe,KAAK,CAAE,EAC3B,SAAS,EAAE,4BAAqB,KAAK,KAAK,CAAC,IAAI,2BAA2B,CAAE,EAC5E,OAAO,EAAE,UAAC,CAAC;gBACT,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBAC9B,UAAU,CAAC,CAAC,EAAE,mBAAmB,EAAE,2BAA2B,CAAC,CAAA;YACjE,CAAC,IAEA,GAAG,CAAC,KAAK,CACH,CACV,CAAA;IACH,CAAC,CAAC,CACE,CACP,CAAA;AACH,CAAC;AAED,eAAe,QAAQ,CAAA"}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { IMessagesBalloon } from 'types';
3
+ export declare function formatFileSize(size?: number): string;
4
+ declare function DocMessage({ file }: IMessagesBalloon): React.JSX.Element;
5
+ export default DocMessage;
@@ -0,0 +1,35 @@
1
+ import React from 'react';
2
+ import DownloadMinimalistIcon from '../../icons/DownloadMinimalistIcon';
3
+ import RenderFileIcon from '../RenderFileIcon/RenderFileIcon';
4
+ export function formatFileSize(size) {
5
+ if (size === void 0) { size = 0; }
6
+ if (size % 1 === 0) {
7
+ return "".concat(size.toFixed(0), " MB");
8
+ }
9
+ return "".concat(size.toFixed(2), " MB");
10
+ }
11
+ function DocMessage(_a) {
12
+ var _b, _c;
13
+ var file = _a.file;
14
+ var fileType = (_c = (_b = file === null || file === void 0 ? void 0 : file.location) === null || _b === void 0 ? void 0 : _b.split('.').pop()) === null || _c === void 0 ? void 0 : _c.toUpperCase();
15
+ var fileName = file && file.originalname;
16
+ var filePages = file && file.pages;
17
+ var fileSize = file && formatFileSize(file === null || file === void 0 ? void 0 : file.size);
18
+ return (React.createElement("div", { className: 'messenger__messages-row--sender' },
19
+ React.createElement("span", null, React.createElement("div", { className: 'messenger__file-card' },
20
+ React.createElement("div", { className: 'messenger__file-icon' },
21
+ React.createElement(RenderFileIcon, { fileType: file === null || file === void 0 ? void 0 : file.mimetype })),
22
+ React.createElement("div", { className: 'messenger__file-details' },
23
+ React.createElement("p", { className: 'messenger__file-name' }, fileName),
24
+ React.createElement("p", { className: 'messenger__file-info' },
25
+ filePages && filePages + ' página(s) •',
26
+ " ",
27
+ fileSize,
28
+ " \u2022",
29
+ ' ',
30
+ fileType)),
31
+ React.createElement("a", { href: file === null || file === void 0 ? void 0 : file.location, target: '_blank', rel: 'noopener noreferrer', className: 'messenger__file-download', style: { color: 'blue' } },
32
+ React.createElement(DownloadMinimalistIcon, { width: '24', height: '24', color: 'white' }))))));
33
+ }
34
+ export default DocMessage;
35
+ //# sourceMappingURL=DocMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocMessage.js","sourceRoot":"","sources":["../../../../../../src/app/Messenger/components/DocMessage/DocMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,sBAAsB,MAAM,oCAAoC,CAAA;AAEvE,OAAO,cAAc,MAAM,kCAAkC,CAAA;AAE7D,MAAM,UAAU,cAAc,CAAE,IAAQ;IAAR,qBAAA,EAAA,QAAQ;IACtC,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,UAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAK,CAAA;IAChC,CAAC;IACD,OAAO,UAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAK,CAAA;AAChC,CAAC;AAED,SAAS,UAAU,CAAE,EAA0B;;QAAxB,IAAI,UAAA;IACzB,IAAM,QAAQ,GAAG,MAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,0CAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,0CAAE,WAAW,EAAE,CAAA;IAChE,IAAM,QAAQ,GAAG,IAAI,IAAI,IAAI,CAAC,YAAY,CAAA;IAC1C,IAAM,SAAS,GAAG,IAAI,IAAI,IAAI,CAAC,KAAK,CAAA;IACpC,IAAM,QAAQ,GAAG,IAAI,IAAI,cAAc,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,CAAC,CAAA;IAEnD,OAAO,CACL,6BAAK,SAAS,EAAC,iCAAiC;QAC9C,kCAEI,6BAAK,SAAS,EAAC,sBAAsB;YACnC,6BAAK,SAAS,EAAC,sBAAsB;gBACnC,oBAAC,cAAc,IAAC,QAAQ,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,GAAI,CACxC;YACN,6BAAK,SAAS,EAAC,yBAAyB;gBACtC,2BAAG,SAAS,EAAC,sBAAsB,IAAE,QAAQ,CAAK;gBAClD,2BAAG,SAAS,EAAC,sBAAsB;oBAChC,SAAS,IAAI,SAAS,GAAG,cAAc;;oBAAG,QAAQ;;oBAAI,GAAG;oBACzD,QAAQ,CACP,CACA;YACN,2BACE,IAAI,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,EACpB,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,EACzB,SAAS,EAAC,0BAA0B,EACpC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;gBAExB,oBAAC,sBAAsB,IAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,KAAK,EAAC,OAAO,GAAG,CAC7D,CACA,CAEH,CACH,CACP,CAAA;AACH,CAAC;AAED,eAAe,UAAU,CAAA"}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { IImagesContainer } from 'types';
3
+ declare function ImagesContainer({ file, onClose }: IImagesContainer): React.JSX.Element;
4
+ export default ImagesContainer;
@@ -0,0 +1,39 @@
1
+ import React, { useEffect, useState } from 'react';
2
+ import RenderFileIcon from '../RenderFileIcon/RenderFileIcon';
3
+ function ImagesContainer(_a) {
4
+ var file = _a.file, onClose = _a.onClose;
5
+ var _b = useState({
6
+ name: '',
7
+ type: '',
8
+ }), fileInfo = _b[0], setFileInfo = _b[1];
9
+ var _c = useState(''), b64 = _c[0], setB64 = _c[1];
10
+ useEffect(function () {
11
+ function getBase64(file) {
12
+ return new Promise(function (resolve, reject) {
13
+ var reader = new FileReader();
14
+ reader.readAsDataURL(file);
15
+ reader.onload = function () { return resolve(reader.result); };
16
+ reader.onerror = function (error) { return reject(error); };
17
+ });
18
+ }
19
+ if (file)
20
+ getBase64(file).then(function (base64) { return setB64(base64); });
21
+ }, [file]);
22
+ useEffect(function () {
23
+ if (file) {
24
+ setFileInfo({
25
+ name: file.name,
26
+ type: file.type,
27
+ });
28
+ }
29
+ }, [file]);
30
+ return (React.createElement("div", { className: 'images-container' },
31
+ React.createElement("div", { className: 'images-container__close' },
32
+ React.createElement("button", { className: 'images-container__close--icon', onClick: onClose })),
33
+ React.createElement("div", { className: 'images-container__container' },
34
+ React.createElement("div", { className: 'images-container__image' },
35
+ React.createElement(RenderFileIcon, { fileType: fileInfo.type, b64: b64 }),
36
+ React.createElement("span", { className: 'images-container__title-img' }, fileInfo.name)))));
37
+ }
38
+ export default ImagesContainer;
39
+ //# sourceMappingURL=ImagesContainer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImagesContainer.js","sourceRoot":"","sources":["../../../../../../src/app/Messenger/components/ImagesContainer/ImagesContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAElD,OAAO,cAAc,MAAM,kCAAkC,CAAA;AAE7D,SAAS,eAAe,CAAE,EAAmC;QAAjC,IAAI,UAAA,EAAE,OAAO,aAAA;IACjC,IAAA,KAA0B,QAAQ,CAAiC;QACvE,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,EAAE;KACT,CAAC,EAHK,QAAQ,QAAA,EAAE,WAAW,QAG1B,CAAA;IAEI,IAAA,KAAgB,QAAQ,CAAS,EAAE,CAAC,EAAnC,GAAG,QAAA,EAAE,MAAM,QAAwB,CAAA;IAE1C,SAAS,CAAC;QACR,SAAS,SAAS,CAAE,IAAU;YAC5B,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;gBACjC,IAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAA;gBAC/B,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;gBAC1B,MAAM,CAAC,MAAM,GAAG,cAAM,OAAA,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAtB,CAAsB,CAAA;gBAC5C,MAAM,CAAC,OAAO,GAAG,UAAC,KAAK,IAAK,OAAA,MAAM,CAAC,KAAK,CAAC,EAAb,CAAa,CAAA;YAC3C,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,IAAI;YAAE,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,MAAgB,CAAC,EAAxB,CAAwB,CAAC,CAAA;IACtE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IAEV,SAAS,CAAC;QACR,IAAI,IAAI,EAAE,CAAC;YACT,WAAW,CAAC;gBACV,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI;aAChB,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IAEV,OAAO,CACL,6BAAK,SAAS,EAAC,kBAAkB;QAC/B,6BAAK,SAAS,EAAC,yBAAyB;YACtC,gCAAQ,SAAS,EAAC,+BAA+B,EAAC,OAAO,EAAE,OAAO,GAAI,CAClE;QAEN,6BAAK,SAAS,EAAC,6BAA6B;YAC1C,6BAAK,SAAS,EAAC,yBAAyB;gBACtC,oBAAC,cAAc,IAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAI;gBACrD,8BAAM,SAAS,EAAC,6BAA6B,IAAE,QAAQ,CAAC,IAAI,CAAQ,CAChE,CACF,CACF,CACP,CAAA;AACH,CAAC;AAED,eAAe,eAAe,CAAA"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { IInconmingMessage } from 'types';
3
+ export declare const MessageImage: ({ ...rest }: {
4
+ [x: string]: any;
5
+ }) => React.JSX.Element;
6
+ declare function IncomingMessage({ date, message, user, hasFile, file, isSystemMessage, formatDate, id, }: IInconmingMessage): React.JSX.Element;
7
+ export default IncomingMessage;
@@ -0,0 +1,53 @@
1
+ import { __assign, __rest } from "tslib";
2
+ import useTheme from '../../hooks/useThemes';
3
+ import React, { useCallback, useState } from 'react';
4
+ import MessengerAvatar from '../MessengerAvatar/MessengerAvatar';
5
+ import ReactSimpleImageViewer from '../../../../../node_modules/react-simple-image-viewer';
6
+ import DocMessage from '../DocMessage/DocMessage';
7
+ import { useTranslation } from 'react-i18next';
8
+ export var MessageImage = function (_a) {
9
+ var rest = __rest(_a, []);
10
+ var t = useTranslation('messengerMessages').t;
11
+ return (React.createElement("div", { className: 'messenger__message--file' },
12
+ React.createElement("img", __assign({}, rest, { width: 200, height: 200, alt: t('incommingMessage.messageImage') }))));
13
+ };
14
+ var MessageWithFile = function (_a) {
15
+ var file = _a.file, message = _a.message, date = _a.date, openImageViewer = _a.openImageViewer, id = _a.id, formatDate = _a.formatDate, currentImage = _a.currentImage;
16
+ var isImage = function (file) {
17
+ var _a;
18
+ if (!file)
19
+ return false;
20
+ if (['image/png', 'image/jpeg'].includes((_a = file === null || file === void 0 ? void 0 : file.mimetype) !== null && _a !== void 0 ? _a : '')) {
21
+ return true;
22
+ }
23
+ return false;
24
+ };
25
+ return (React.createElement(React.Fragment, null, isImage(file) ? (React.createElement(MessageImage, { src: file === null || file === void 0 ? void 0 : file.location, onClick: function () { return openImageViewer(currentImage); } })) : (file && (React.createElement(DocMessage, { file: file, message: message, date: date, read: false, id: id, formatDate: formatDate })))));
26
+ };
27
+ function IncomingMessage(_a) {
28
+ var _b;
29
+ var date = _a.date, message = _a.message, user = _a.user, hasFile = _a.hasFile, file = _a.file, isSystemMessage = _a.isSystemMessage, formatDate = _a.formatDate, id = _a.id;
30
+ var theme = useTheme().theme;
31
+ var _c = useState(0), currentImage = _c[0], setCurrentImage = _c[1];
32
+ var _d = useState(false), isViewerOpen = _d[0], setIsViewerOpen = _d[1];
33
+ var openImageViewer = useCallback(function (index) {
34
+ setCurrentImage(index);
35
+ setIsViewerOpen(true);
36
+ }, []);
37
+ var closeImageViewer = function () {
38
+ setCurrentImage(0);
39
+ setIsViewerOpen(false);
40
+ };
41
+ return (React.createElement("div", { className: 'messenger__messages-row--received', id: id },
42
+ (user.avatar || user.name) && !isSystemMessage && (React.createElement("div", { className: 'messenger__message-avatar mr-2' },
43
+ React.createElement(MessengerAvatar, { image: user.avatar }, user.name.slice(0, 1)))),
44
+ React.createElement("div", { className: 'messenger__messages-received', style: { background: theme === null || theme === void 0 ? void 0 : theme.messengerIncomerColor } },
45
+ !isSystemMessage && (React.createElement("p", { className: 'messenger__message-title' }, user.name)),
46
+ React.createElement("span", null,
47
+ hasFile && (React.createElement(MessageWithFile, { file: file, message: message, date: date, openImageViewer: openImageViewer, id: id, formatDate: formatDate, currentImage: currentImage })),
48
+ message && React.createElement("p", { className: 'messenger__message' }, message),
49
+ React.createElement("p", { className: 'messenger__message--date' }, (_b = formatDate(date)) !== null && _b !== void 0 ? _b : new Date(date).toLocaleString()))),
50
+ file && isViewerOpen && (React.createElement(ReactSimpleImageViewer, { src: [file.location], currentIndex: 0, disableScroll: false, closeOnClickOutside: true, onClose: closeImageViewer }))));
51
+ }
52
+ export default IncomingMessage;
53
+ //# sourceMappingURL=IncomingMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IncomingMessage.js","sourceRoot":"","sources":["../../../../../../src/app/Messenger/components/IncomingMessage/IncomingMessage.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import React, { ReactNode } from 'react';
2
+ interface IInfiniteScroll {
3
+ loading: boolean;
4
+ more: boolean;
5
+ fetch: () => void;
6
+ children: ReactNode;
7
+ loadingCover: React.ReactElement;
8
+ root: Element | null;
9
+ reverse?: boolean;
10
+ rootMargin?: number;
11
+ }
12
+ declare function InfiniteScroll({ loading, loadingCover, more, fetch, children, root, reverse, rootMargin, }: IInfiniteScroll): React.JSX.Element;
13
+ export default InfiniteScroll;
@@ -0,0 +1,43 @@
1
+ import React from 'react';
2
+ var intersectDivStyle = {
3
+ width: 25,
4
+ height: 25,
5
+ visibility: 'hidden',
6
+ };
7
+ function InfiniteScroll(_a) {
8
+ var loading = _a.loading, loadingCover = _a.loadingCover, more = _a.more, fetch = _a.fetch, children = _a.children, root = _a.root, _b = _a.reverse, reverse = _b === void 0 ? false : _b, _c = _a.rootMargin, rootMargin = _c === void 0 ? 400 : _c;
9
+ var _d = React.useState(null), infiniteElement = _d[0], setInfiniteElement = _d[1];
10
+ React.useEffect(function () {
11
+ if (!root)
12
+ return;
13
+ var currentElement = infiniteElement;
14
+ var observer = new IntersectionObserver(function (entries) {
15
+ var first = entries[0];
16
+ if (first.isIntersecting === true)
17
+ fetch();
18
+ }, {
19
+ root: root,
20
+ rootMargin: rootMargin.toString() + 'px',
21
+ threshold: 0.5,
22
+ });
23
+ if (currentElement) {
24
+ observer.observe(currentElement);
25
+ }
26
+ return function () {
27
+ if (currentElement)
28
+ observer.unobserve(currentElement);
29
+ };
30
+ }, [infiniteElement]);
31
+ if (reverse) {
32
+ return (React.createElement(React.Fragment, null,
33
+ more && !loading && (React.createElement("div", { ref: setInfiniteElement, style: intersectDivStyle })),
34
+ loading && loadingCover,
35
+ children));
36
+ }
37
+ return (React.createElement(React.Fragment, null,
38
+ children,
39
+ loading && loadingCover,
40
+ more && !loading && (React.createElement("div", { ref: setInfiniteElement, style: intersectDivStyle }))));
41
+ }
42
+ export default InfiniteScroll;
43
+ //# sourceMappingURL=InfiniteScroll.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InfiniteScroll.js","sourceRoot":"","sources":["../../../../../../src/app/Messenger/components/InfiniteScroll/InfiniteScroll.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmC,MAAM,OAAO,CAAA;AAavD,IAAM,iBAAiB,GAAkB;IACvC,KAAK,EAAE,EAAE;IACT,MAAM,EAAE,EAAE;IACV,UAAU,EAAE,QAAQ;CACrB,CAAA;AAED,SAAS,cAAc,CAAE,EASP;QARhB,OAAO,aAAA,EACP,YAAY,kBAAA,EACZ,IAAI,UAAA,EACJ,KAAK,WAAA,EACL,QAAQ,cAAA,EACR,IAAI,UAAA,EACJ,eAAe,EAAf,OAAO,mBAAG,KAAK,KAAA,EACf,kBAAgB,EAAhB,UAAU,mBAAG,GAAG,KAAA;IAEV,IAAA,KACJ,KAAK,CAAC,QAAQ,CAAwB,IAAI,CAAC,EADtC,eAAe,QAAA,EAAE,kBAAkB,QACG,CAAA;IAE7C,KAAK,CAAC,SAAS,CAAC;QACd,IAAI,CAAC,IAAI;YAAE,OAAM;QACjB,IAAM,cAAc,GAAG,eAAe,CAAA;QACtC,IAAM,QAAQ,GAAG,IAAI,oBAAoB,CACvC,UAAC,OAAO;YACN,IAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YACxB,IAAI,KAAK,CAAC,cAAc,KAAK,IAAI;gBAAE,KAAK,EAAE,CAAA;QAC5C,CAAC,EACD;YACE,IAAI,MAAA;YACJ,UAAU,EAAE,UAAU,CAAC,QAAQ,EAAE,GAAG,IAAI;YACxC,SAAS,EAAE,GAAG;SACf,CACF,CAAA;QAED,IAAI,cAAc,EAAE,CAAC;YACnB,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QAClC,CAAC;QAED,OAAO;YACL,IAAI,cAAc;gBAAE,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC,CAAA;QACxD,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAA;IAErB,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL;YACG,IAAI,IAAI,CAAC,OAAO,IAAI,CACnB,6BAAK,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,iBAAiB,GAAQ,CAC/D;YACA,OAAO,IAAI,YAAY;YACvB,QAAQ,CACR,CACJ,CAAA;IACH,CAAC;IAED,OAAO,CACL;QACG,QAAQ;QACR,OAAO,IAAI,YAAY;QACvB,IAAI,IAAI,CAAC,OAAO,IAAI,CACnB,6BAAK,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,iBAAiB,GAAQ,CAC/D,CACA,CACJ,CAAA;AACH,CAAC;AAED,eAAe,cAAc,CAAA"}
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ interface IProps {
3
+ fileList: File[];
4
+ onUpdateFile: (files: File) => void;
5
+ label: string;
6
+ onRemoveFile: (files: File) => void;
7
+ maxSize: string;
8
+ loading: boolean;
9
+ }
10
+ declare function InputFile({ fileList, onUpdateFile, label, onRemoveFile, maxSize, loading, }: IProps): React.JSX.Element;
11
+ export default InputFile;