@ethora/chat-component 26.7.5 → 26.7.7

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 (174) hide show
  1. package/README.md +72 -16
  2. package/dist/ChatProfileModal-DehQM4Bo.js +2135 -0
  3. package/dist/FilePreviewModal-BcZLtVAy.js +743 -0
  4. package/dist/ManageDataModal-DWabKhSC.js +178 -0
  5. package/dist/MarkdownBody-CSY3YKDh.js +16874 -0
  6. package/dist/SideDrawer-DewJ-iPn.js +270 -0
  7. package/dist/UserProfileModal-BHZ0TULc.js +574 -0
  8. package/dist/UserSettingsModal-BxwVWNKo.js +50 -0
  9. package/dist/{VideoCallOverlay-C4M2I9oV.js → VideoCallOverlay-D5SuimGP.js} +9 -10
  10. package/dist/VisibilityModal-Bd67b4EM.js +132 -0
  11. package/dist/assets/icons.d.ts +30 -0
  12. package/dist/components/ContextMenu/ContextMenuComponents.d.ts +1 -3
  13. package/dist/components/EmojiPicker/LazyEmojiPicker.d.ts +3 -0
  14. package/dist/components/ExampleComponents/CustomMessage.d.ts +3 -3
  15. package/dist/components/Files/FilesList.d.ts +12 -0
  16. package/dist/components/Files/FilesPanel.d.ts +3 -0
  17. package/dist/components/Files/fileCategory.d.ts +13 -0
  18. package/dist/components/InputComponents/AttachmentPreview.d.ts +17 -0
  19. package/dist/components/InputComponents/MentionDropdown.d.ts +13 -0
  20. package/dist/components/InputComponents/MentionPickerModal.d.ts +19 -0
  21. package/dist/components/MainComponents/AttachmentList.d.ts +7 -0
  22. package/dist/components/MainComponents/ChatErrorBoundary.d.ts +53 -0
  23. package/dist/components/MainComponents/ChatErrorScreen.d.ts +24 -0
  24. package/dist/components/MainComponents/ChatRoomOpeningPreview.d.ts +24 -0
  25. package/dist/components/MainComponents/ChatWrapper.d.ts +1 -0
  26. package/dist/components/MainComponents/ChooseChatMessage.d.ts +11 -1
  27. package/dist/components/MainComponents/HeaderLogo.d.ts +18 -0
  28. package/dist/components/MainComponents/MediaMessage.d.ts +5 -0
  29. package/dist/components/MainComponents/MessageContainer.d.ts +2 -2
  30. package/dist/components/MainComponents/ReduxWrapper.d.ts +1 -2
  31. package/dist/components/MainComponents/SystemMessage.d.ts +1 -2
  32. package/dist/components/MenuRoom/MenuRoom.d.ts +1 -0
  33. package/dist/components/MessageBubble/CustomDivider.d.ts +3 -3
  34. package/dist/components/MessageBubble/Message.d.ts +2 -2
  35. package/dist/components/MessageBubble/MessageTranslate.d.ts +28 -10
  36. package/dist/components/MessageBubble/QuickReplies.d.ts +6 -5
  37. package/dist/components/Modals/ChatProfileModal/ChatProfileMemberRow.d.ts +18 -0
  38. package/dist/components/Modals/FilePreviewModal/FilePreviewModal.d.ts +17 -0
  39. package/dist/components/Modals/FilePreviewModal/ImageLightbox.d.ts +35 -0
  40. package/dist/components/Modals/FilePreviewModal/PdfView.d.ts +14 -3
  41. package/dist/components/Modals/Modal/Modal.d.ts +10 -0
  42. package/dist/components/Modals/Modal/ModalContent.d.ts +21 -0
  43. package/dist/components/Modals/ModalBox/ModalBox.d.ts +9 -0
  44. package/dist/components/Modals/ModalReportChat/ModalReportChat.d.ts +6 -1
  45. package/dist/components/Modals/ModalWrapper/ModalWrapper.d.ts +8 -0
  46. package/dist/components/Modals/NewChatModal/styledNewChatComponents.d.ts +12 -0
  47. package/dist/components/Modals/SettingsModals/SharedStyledComponents.d.ts +12 -0
  48. package/dist/components/Modals/SettingsModals/Visibility/StyledComponents.d.ts +1 -1
  49. package/dist/components/Modals/SideDrawer/DrawerProfileParts.d.ts +42 -0
  50. package/dist/components/Modals/SideDrawer/SideDrawer.d.ts +64 -0
  51. package/dist/components/Modals/SidePanel/SidePanel.d.ts +31 -0
  52. package/dist/components/Modals/UserProfileModal/EditUserModal.d.ts +5 -1
  53. package/dist/components/Modals/modalComponents.d.ts +6 -0
  54. package/dist/components/Modals/motionVariants.d.ts +37 -0
  55. package/dist/components/Modals/styledModalComponents.d.ts +13 -3
  56. package/dist/components/RoomComponents/ChatRoomItem.d.ts +0 -1
  57. package/dist/components/RoomComponents/OnlineUsersPopover.d.ts +0 -1
  58. package/dist/components/UsersList/StyledComponents.d.ts +5 -1
  59. package/dist/components/UsersList/UsersList.d.ts +23 -0
  60. package/dist/components/styled/Button.d.ts +11 -1
  61. package/dist/components/styled/ChatWrapperBox.d.ts +3 -1
  62. package/dist/components/styled/PdfMessage.d.ts +13 -0
  63. package/dist/components/styled/RoomListComponents/index.d.ts +22 -1
  64. package/dist/components/styled/SendInput.d.ts +19 -5
  65. package/dist/components/styled/StyledComponents.d.ts +1 -1
  66. package/dist/components/styled/StyledInputComponents/MediaComponents.d.ts +18 -0
  67. package/dist/components/styled/StyledInputComponents/StyledInputComponents.d.ts +21 -0
  68. package/dist/components/styled/TreadLabel.d.ts +2 -2
  69. package/dist/components/styled/UnsupportedType.d.ts +1 -1
  70. package/dist/context/ModalTransitionContext.d.ts +2 -0
  71. package/dist/examples/quiz/QuizDemo.d.ts +3 -0
  72. package/dist/examples/quiz/quizScript.d.ts +38 -0
  73. package/dist/examples/quiz/useDemoSession.d.ts +42 -0
  74. package/dist/examples/quiz/useQuizFlow.d.ts +47 -0
  75. package/dist/firebase-config.d.ts +2 -4
  76. package/dist/handleCopyClick-BoZWTBLC.js +108 -0
  77. package/dist/helpers/MarkdownBody.d.ts +7 -0
  78. package/dist/helpers/attachments.d.ts +33 -0
  79. package/dist/helpers/botMarkup.d.ts +30 -0
  80. package/dist/helpers/buildChatShareLink.d.ts +20 -0
  81. package/dist/helpers/cacheScope.d.ts +15 -1
  82. package/dist/helpers/constants/MODAL_TYPES.d.ts +13 -7
  83. package/dist/helpers/createRoomFromApi.d.ts +1 -1
  84. package/dist/helpers/ethoraLogger.d.ts +8 -0
  85. package/dist/helpers/fileKind.d.ts +17 -0
  86. package/dist/helpers/formatNumberWithCommas.d.ts +1 -1
  87. package/dist/helpers/hiddenRooms.d.ts +1 -1
  88. package/dist/helpers/historyPreloadScheduler.d.ts +1 -0
  89. package/dist/helpers/lazyEmoji.d.ts +3 -0
  90. package/dist/helpers/localStorageUser.d.ts +1 -1
  91. package/dist/helpers/markdownSanitizeSchema.d.ts +3 -0
  92. package/dist/helpers/mentions.d.ts +63 -0
  93. package/dist/helpers/parseMessageBody.d.ts +12 -2
  94. package/dist/helpers/pdf/loadPdfjs.d.ts +64 -0
  95. package/dist/helpers/remarkLineBreaks.d.ts +42 -0
  96. package/dist/helpers/resolveMessageTranslation.d.ts +34 -0
  97. package/dist/helpers/roomImageGallery.d.ts +53 -0
  98. package/dist/helpers/secureFileUrl.d.ts +8 -0
  99. package/dist/helpers/sendFailureWatchdog.d.ts +62 -0
  100. package/dist/helpers/transformTranslatations.d.ts +1 -2
  101. package/dist/hooks/pushSubscriptionSweep.d.ts +41 -0
  102. package/dist/hooks/useChatOpenPhase.d.ts +21 -0
  103. package/dist/hooks/useChatWrapperInit.d.ts +1 -0
  104. package/dist/hooks/useDelayedAction.d.ts +22 -0
  105. package/dist/hooks/useExclusiveRightPane.d.ts +25 -0
  106. package/dist/hooks/useExitTransition.d.ts +24 -0
  107. package/dist/hooks/useFilesEndpointSupport.d.ts +9 -0
  108. package/dist/hooks/useGetNewArchRoom.d.ts +3 -1
  109. package/dist/hooks/useInView.d.ts +17 -0
  110. package/dist/hooks/useMentionComposer.d.ts +45 -0
  111. package/dist/hooks/useMessageHeapState.d.ts +1 -1
  112. package/dist/hooks/useMessageTranslation.d.ts +4 -3
  113. package/dist/hooks/useModalDismiss.d.ts +27 -0
  114. package/dist/hooks/useMyFiles.d.ts +16 -0
  115. package/dist/hooks/usePdfThumbnail.d.ts +22 -0
  116. package/dist/hooks/useQRCodeChatHandler.d.ts +29 -1
  117. package/dist/hooks/useRoomMute.d.ts +19 -0
  118. package/dist/hooks/useRoomState.d.ts +1 -1
  119. package/dist/hooks/useSendMessage.d.ts +4 -3
  120. package/dist/hooks/useTypography.d.ts +1 -1
  121. package/dist/hooks/useUnreadMessagesCounter.d.ts +11 -2
  122. package/dist/index.esm-B-3fyDHY.js +28 -0
  123. package/dist/index.esm-CRM4VCRa.js +943 -0
  124. package/dist/index.esm-msbp26WN.js +3352 -0
  125. package/dist/index.esm2017-CL0mvq6y.js +1578 -0
  126. package/dist/main-C2FKeV6y.js +32375 -0
  127. package/dist/main.css +1 -1
  128. package/dist/main.d.ts +14 -0
  129. package/dist/main.js +18 -18
  130. package/dist/module-DGXkb0R_.js +2960 -0
  131. package/dist/native-CDi4YD_s.js +13 -0
  132. package/dist/networking/api-requests/files.api.d.ts +19 -0
  133. package/dist/networking/api-requests/rooms.api.d.ts +10 -2
  134. package/dist/networking/api-requests/translate.api.d.ts +15 -0
  135. package/dist/networking/api-requests/user.api.d.ts +2 -0
  136. package/dist/networking/sharedRequest.d.ts +4 -0
  137. package/dist/networking/xmpp/allRoomPresences.xmpp.d.ts +3 -1
  138. package/dist/networking/xmpp/createTimeoutPromise.xmpp.d.ts +14 -0
  139. package/dist/networking/xmpp/sendTextMessage.xmpp.d.ts +2 -1
  140. package/dist/networking/xmpp/sendTextMessageWithTranslateTag.xmpp.d.ts +2 -1
  141. package/dist/networking/xmppClient.d.ts +12 -3
  142. package/dist/pdf-B5b7qHu6.js +17130 -0
  143. package/dist/pdf.worker.min-COYn-gId.js +24385 -0
  144. package/dist/roomStore/index.d.ts +20 -0
  145. package/dist/roomStore/persistEncryption.d.ts +51 -0
  146. package/dist/roomStore/roomsSlice.d.ts +49 -6
  147. package/dist/styles/classNames.d.ts +35 -0
  148. package/dist/styles/motion.d.ts +71 -0
  149. package/dist/styles/tokens.d.ts +27 -0
  150. package/dist/testIds.d.ts +1 -1
  151. package/dist/types/models/attachment.model.d.ts +33 -0
  152. package/dist/types/models/config.model.d.ts +160 -19
  153. package/dist/types/models/file.model.d.ts +20 -0
  154. package/dist/types/models/message.model.d.ts +15 -6
  155. package/dist/types/models/room.model.d.ts +40 -2
  156. package/dist/types/types.d.ts +3 -1
  157. package/dist/utils/resendMessage.d.ts +22 -1
  158. package/dist/utils/translateModePolicy.d.ts +1 -0
  159. package/dist/wavesurfer.esm-D_a19qBW.js +952 -0
  160. package/package.json +22 -2
  161. package/dist/VideoCallOverlay-C4M2I9oV.js.map +0 -1
  162. package/dist/components/MainComponents/VirtualList.d.ts +0 -10
  163. package/dist/components/Modals/SettingsModals/BlockedUsers/BlockedUsersModal.d.ts +0 -6
  164. package/dist/components/Modals/SettingsModals/DocumentShares/DocumentSharesModal.d.ts +0 -6
  165. package/dist/components/Modals/SettingsModals/ManageDataModal/StyledComponents.d.ts +0 -0
  166. package/dist/components/Modals/SettingsModals/ProfileShares/ProfileShares.d.ts +0 -6
  167. package/dist/components/Modals/SettingsModals/Referrals/Referrals.d.ts +0 -6
  168. package/dist/hooks/useMessageQueue.d.ts +0 -4
  169. package/dist/main-DeiuFYsl.js +0 -55812
  170. package/dist/main-DeiuFYsl.js.map +0 -1
  171. package/dist/main.js.map +0 -1
  172. package/dist/networking/xmpp/getHistory.xmpp.d.ts +0 -3
  173. package/dist/networking/xmpp/listenerManager.d.ts +0 -17
  174. package/dist/utils/xmppMemoryMonitor.d.ts +0 -16
@@ -0,0 +1,270 @@
1
+ import { jsxs as i, jsx as o } from "react/jsx-runtime";
2
+ import { useId as f, useRef as v } from "react";
3
+ import { n as u, w as g, aF as m, aG as w, B as b, aH as y, v as e, aI as D, aJ as k } from "./main-C2FKeV6y.js";
4
+ const c = 767, R = `${c}px`, z = e.div`
5
+ position: relative;
6
+ pointer-events: auto;
7
+ display: flex;
8
+ flex-direction: column;
9
+ box-sizing: border-box;
10
+ width: 100%;
11
+ height: 100%;
12
+ background-color: var(--ethora-color-bg, #fff);
13
+ overflow: hidden;
14
+ ${({ $closing: r }) => r ? D : k}
15
+
16
+ /* The width belongs to the column (SidePanel), not to the panel: this is
17
+ in-layout furniture now, so it takes the space it is given. A hairline
18
+ separates it from the chat; the drop shadow it used to carry belonged to
19
+ a floating overlay and read as wrong once the panel stopped floating. */
20
+ @media (min-width: 768px) {
21
+ border-left: 1px solid var(--ethora-color-border, #e6e8ec);
22
+ }
23
+ `, B = e.header`
24
+ display: flex;
25
+ align-items: center;
26
+ gap: var(--ethora-space-2, 8px);
27
+ flex: 0 0 auto;
28
+ padding: var(--ethora-space-2, 8px) var(--ethora-space-3, 12px);
29
+ border-bottom: 1px solid var(--ethora-color-border, #e6e8ec);
30
+ background-color: var(--ethora-color-bg, #fff);
31
+ `, I = e.h2`
32
+ flex: 1 1 auto;
33
+ margin: 0;
34
+ min-width: 0;
35
+ font-size: var(--ethora-font-size-lg, 18px);
36
+ font-weight: var(--ethora-font-weight-semibold, 600);
37
+ color: var(--ethora-color-text, #141414);
38
+ overflow: hidden;
39
+ text-overflow: ellipsis;
40
+ white-space: nowrap;
41
+ `, S = e.div`
42
+ display: flex;
43
+ align-items: center;
44
+ gap: var(--ethora-space-1, 4px);
45
+ flex: 0 0 auto;
46
+ `, A = e.div`
47
+ flex: 1 1 auto;
48
+ min-height: 0;
49
+ overflow-y: auto;
50
+ overscroll-behavior: contain;
51
+ display: flex;
52
+ flex-direction: column;
53
+ gap: var(--ethora-space-6, 24px);
54
+ padding: var(--ethora-space-5, 20px) var(--ethora-space-4, 16px)
55
+ var(--ethora-space-6, 24px);
56
+
57
+ @media (max-width: ${R}) {
58
+ padding-left: var(--ethora-space-4, 16px);
59
+ padding-right: var(--ethora-space-4, 16px);
60
+ }
61
+ `, $ = e.section`
62
+ display: flex;
63
+ flex-direction: column;
64
+ gap: var(--ethora-space-2, 8px);
65
+ `, O = e.h3`
66
+ margin: 0;
67
+ padding: 0 var(--ethora-space-1, 4px);
68
+ font-size: var(--ethora-font-size-xs, 12px);
69
+ font-weight: var(--ethora-font-weight-semibold, 600);
70
+ letter-spacing: 0.06em;
71
+ text-transform: uppercase;
72
+ color: var(--ethora-color-text-muted, #8c8c8c);
73
+ `, W = e.div`
74
+ display: flex;
75
+ flex-direction: column;
76
+ box-sizing: border-box;
77
+ width: 100%;
78
+ border: 1px solid var(--ethora-color-border, #e6e8ec);
79
+ border-radius: var(--ethora-radius-md, 12px);
80
+ background-color: var(--ethora-color-bg, #fff);
81
+ overflow: hidden;
82
+ `, _ = e.div`
83
+ display: flex;
84
+ flex-direction: column;
85
+ gap: var(--ethora-space-1, 4px);
86
+ padding: var(--ethora-space-3, 12px) var(--ethora-space-4, 16px);
87
+ `, F = e.div`
88
+ display: flex;
89
+ align-items: baseline;
90
+ justify-content: space-between;
91
+ gap: var(--ethora-space-2, 8px);
92
+ `, K = e.button`
93
+ border: none;
94
+ background: transparent;
95
+ padding: var(--ethora-space-2, 8px) 0;
96
+ cursor: pointer;
97
+ font: inherit;
98
+ font-size: var(--ethora-font-size-xs, 13px);
99
+ font-weight: var(--ethora-font-weight-medium, 500);
100
+ color: var(--ethora-color-primary, #0052cd);
101
+ align-self: center;
102
+
103
+ &:hover {
104
+ text-decoration: underline;
105
+ }
106
+
107
+ &:focus-visible {
108
+ outline: 2px solid var(--ethora-color-primary, #0052cd);
109
+ outline-offset: 2px;
110
+ border-radius: var(--ethora-radius-sm, 8px);
111
+ }
112
+ `, G = e.div`
113
+ height: 1px;
114
+ margin: 0 var(--ethora-space-4, 16px);
115
+ background-color: var(--ethora-color-border, #e6e8ec);
116
+ `, J = e.div`
117
+ display: flex;
118
+ align-items: center;
119
+ gap: var(--ethora-space-2, 8px);
120
+ width: 100%;
121
+ box-sizing: border-box;
122
+ height: 44px;
123
+ padding: 0 var(--ethora-space-3, 12px);
124
+ border-radius: var(--ethora-radius-md, 12px);
125
+ background: var(--ethora-color-bg-subtle, #f5f7fa);
126
+ color: var(--ethora-color-text-muted, #8c8c8c);
127
+ transition: background-color var(--ethora-motion-fast, 150ms)
128
+ var(--ethora-motion-ease, ease);
129
+
130
+ &:focus-within {
131
+ outline: 2px solid var(--ethora-color-primary, #0052cd);
132
+ outline-offset: 1px;
133
+ }
134
+
135
+ & > svg {
136
+ flex: 0 0 auto;
137
+ }
138
+ `, V = e.input`
139
+ flex: 1 1 auto;
140
+ min-width: 0;
141
+ border: none;
142
+ background: transparent;
143
+ outline: none;
144
+ font: inherit;
145
+ font-size: var(--ethora-font-size-sm, 14px);
146
+ color: var(--ethora-color-text, #141414);
147
+
148
+ &::placeholder {
149
+ color: var(--ethora-color-text-muted, #8c8c8c);
150
+ }
151
+ `, X = e.div`
152
+ display: flex;
153
+ flex-direction: column;
154
+ width: 100%;
155
+ `, T = e.div`
156
+ font-size: var(--ethora-font-size-sm, 14px);
157
+ font-weight: var(--ethora-font-weight-medium, 500);
158
+ color: var(--ethora-color-text, #141414);
159
+ text-align: start;
160
+ `, C = e.div`
161
+ font-size: var(--ethora-font-size-xs, 12px);
162
+ font-weight: var(--ethora-font-weight-regular, 400);
163
+ color: var(--ethora-color-text-muted, #8c8c8c);
164
+ text-align: start;
165
+ line-height: 1.4;
166
+ `, E = e.button`
167
+ display: flex;
168
+ align-items: center;
169
+ gap: var(--ethora-space-3, 12px);
170
+ width: 100%;
171
+ min-height: 56px;
172
+ padding: var(--ethora-space-3, 12px) var(--ethora-space-4, 16px);
173
+ border: none;
174
+ background: transparent;
175
+ cursor: pointer;
176
+ text-align: start;
177
+ font: inherit;
178
+ color: inherit;
179
+ transition: background-color var(--ethora-motion-fast, 150ms);
180
+
181
+ &:hover {
182
+ background-color: var(--ethora-color-bg-hover, #f0f2f5);
183
+ }
184
+
185
+ &:focus-visible {
186
+ outline: 2px solid var(--ethora-color-primary, #0052cd);
187
+ outline-offset: -2px;
188
+ }
189
+ `, L = e.span`
190
+ display: flex;
191
+ flex-direction: column;
192
+ gap: var(--ethora-space-1, 4px);
193
+ flex: 1 1 auto;
194
+ min-width: 0;
195
+ `, j = e.span`
196
+ flex: 0 0 auto;
197
+ display: inline-flex;
198
+ color: var(--ethora-color-text-muted, #8c8c8c);
199
+ `, H = () => /* @__PURE__ */ o("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ o(
200
+ "path",
201
+ {
202
+ d: "M6 3.5L10.5 8L6 12.5",
203
+ stroke: "currentColor",
204
+ strokeWidth: "1.75",
205
+ strokeLinecap: "round",
206
+ strokeLinejoin: "round"
207
+ }
208
+ ) }), q = ({
209
+ label: r,
210
+ hint: a,
211
+ onClick: t
212
+ }) => /* @__PURE__ */ i(E, { type: "button", onClick: t, children: [
213
+ /* @__PURE__ */ i(L, { children: [
214
+ /* @__PURE__ */ o(T, { children: r }),
215
+ a && /* @__PURE__ */ o(C, { children: a })
216
+ ] }),
217
+ /* @__PURE__ */ o(j, { "aria-hidden": "true", children: /* @__PURE__ */ o(H, {}) })
218
+ ] }), Q = ({
219
+ title: r,
220
+ onClose: a,
221
+ headerActions: t,
222
+ backLabel: l,
223
+ children: d
224
+ }) => {
225
+ const h = u(), n = f(), s = v(null);
226
+ g({ onClose: a, containerRef: s });
227
+ const p = m(c), x = w();
228
+ return /* @__PURE__ */ i(
229
+ z,
230
+ {
231
+ ref: s,
232
+ role: "dialog",
233
+ "aria-modal": p ? !0 : void 0,
234
+ "aria-labelledby": n,
235
+ "data-testid": "side-drawer",
236
+ $closing: x,
237
+ children: [
238
+ /* @__PURE__ */ i(B, { children: [
239
+ /* @__PURE__ */ o(
240
+ b,
241
+ {
242
+ EndIcon: /* @__PURE__ */ o(y, {}),
243
+ onClick: a,
244
+ "aria-label": l ?? h("action.close")
245
+ }
246
+ ),
247
+ /* @__PURE__ */ o(I, { id: n, children: r }),
248
+ t && /* @__PURE__ */ o(S, { children: t })
249
+ ] }),
250
+ /* @__PURE__ */ o(A, { children: d })
251
+ ]
252
+ }
253
+ );
254
+ };
255
+ export {
256
+ $ as D,
257
+ Q as S,
258
+ O as a,
259
+ W as b,
260
+ G as c,
261
+ q as d,
262
+ _ as e,
263
+ C as f,
264
+ T as g,
265
+ F as h,
266
+ J as i,
267
+ V as j,
268
+ X as k,
269
+ K as l
270
+ };