stream-chat-react 14.4.1 → 14.5.0
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.
- package/dist/cjs/{ReactPlayerWrapper.16cd6fed.js → ReactPlayerWrapper.963d6170.js} +2 -2
- package/dist/cjs/{ReactPlayerWrapper.16cd6fed.js.map → ReactPlayerWrapper.963d6170.js.map} +1 -1
- package/dist/cjs/emojis.js +1 -1
- package/dist/cjs/index.js +489 -119
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/{useNotificationApi.9ffe5761.js → useNotificationApi.e9312774.js} +38 -5
- package/dist/cjs/useNotificationApi.e9312774.js.map +1 -0
- package/dist/css/index.css +186 -0
- package/dist/css/index.css.map +1 -1
- package/dist/es/emojis.mjs +1 -1
- package/dist/es/index.mjs +476 -121
- package/dist/es/index.mjs.map +1 -1
- package/dist/es/{useNotificationApi.88c33caa.mjs → useNotificationApi.4be515a0.mjs} +24 -9
- package/dist/es/useNotificationApi.4be515a0.mjs.map +1 -0
- package/dist/types/components/Avatar/Avatar.d.ts +4 -2
- package/dist/types/components/Avatar/Avatar.d.ts.map +1 -1
- package/dist/types/components/Channel/hooks/useMentionsHandlers.d.ts +8 -3
- package/dist/types/components/Channel/hooks/useMentionsHandlers.d.ts.map +1 -1
- package/dist/types/components/Icons/icons.d.ts +12 -0
- package/dist/types/components/Icons/icons.d.ts.map +1 -1
- package/dist/types/components/ListItemLayout/ListItemLayout.d.ts +34 -0
- package/dist/types/components/ListItemLayout/ListItemLayout.d.ts.map +1 -0
- package/dist/types/components/ListItemLayout/index.d.ts +2 -0
- package/dist/types/components/ListItemLayout/index.d.ts.map +1 -0
- package/dist/types/components/MediaRecorder/classes/MediaRecorderController.d.ts.map +1 -1
- package/dist/types/components/Message/MessageText.d.ts.map +1 -1
- package/dist/types/components/Message/hooks/useMentionsHandler.d.ts +6 -1
- package/dist/types/components/Message/hooks/useMentionsHandler.d.ts.map +1 -1
- package/dist/types/components/Message/renderText/componentRenderers/Mention.d.ts +22 -4
- package/dist/types/components/Message/renderText/componentRenderers/Mention.d.ts.map +1 -1
- package/dist/types/components/Message/renderText/rehypePlugins/mentionsMarkdownPlugin.d.ts +44 -3
- package/dist/types/components/Message/renderText/rehypePlugins/mentionsMarkdownPlugin.d.ts.map +1 -1
- package/dist/types/components/Message/renderText/renderText.d.ts +25 -3
- package/dist/types/components/Message/renderText/renderText.d.ts.map +1 -1
- package/dist/types/components/Message/types.d.ts +2 -3
- package/dist/types/components/Message/types.d.ts.map +1 -1
- package/dist/types/components/MessageComposer/QuotedMessagePreview.d.ts.map +1 -1
- package/dist/types/components/MessageComposer/hooks/useMessageComposerController.d.ts.map +1 -1
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/BroadcastMentionItem.d.ts +5 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/BroadcastMentionItem.d.ts.map +1 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/MentionItem.d.ts +17 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/MentionItem.d.ts.map +1 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/MentionSuggestionTitle.d.ts +6 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/MentionSuggestionTitle.d.ts.map +1 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/RoleItem.d.ts +5 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/RoleItem.d.ts.map +1 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/SpecialMentionItem.d.ts +10 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/SpecialMentionItem.d.ts.map +1 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/UserGroupItem.d.ts +5 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/UserGroupItem.d.ts.map +1 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/UserItem.d.ts +17 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/UserItem.d.ts.map +1 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/index.d.ts +8 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/index.d.ts.map +1 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/types.d.ts +6 -0
- package/dist/types/components/TextareaComposer/SuggestionList/MentionItem/types.d.ts.map +1 -0
- package/dist/types/components/TextareaComposer/SuggestionList/SuggestionList.d.ts.map +1 -1
- package/dist/types/components/TextareaComposer/SuggestionList/SuggestionListItem.d.ts +2 -2
- package/dist/types/components/TextareaComposer/SuggestionList/SuggestionListItem.d.ts.map +1 -1
- package/dist/types/components/TextareaComposer/SuggestionList/TokenizedSuggestionParts.d.ts +9 -0
- package/dist/types/components/TextareaComposer/SuggestionList/TokenizedSuggestionParts.d.ts.map +1 -0
- package/dist/types/components/TextareaComposer/SuggestionList/index.d.ts +2 -1
- package/dist/types/components/TextareaComposer/SuggestionList/index.d.ts.map +1 -1
- package/dist/types/components/TextareaComposer/TextareaComposer.d.ts.map +1 -1
- package/dist/types/components/index.d.ts +1 -0
- package/dist/types/components/index.d.ts.map +1 -1
- package/dist/types/context/MessageContext.d.ts +3 -3
- package/dist/types/context/MessageContext.d.ts.map +1 -1
- package/dist/types/i18n/Streami18n.d.ts +6 -1
- package/dist/types/i18n/Streami18n.d.ts.map +1 -1
- package/package.json +3 -3
- package/dist/cjs/useNotificationApi.9ffe5761.js.map +0 -1
- package/dist/es/useNotificationApi.88c33caa.mjs.map +0 -1
- package/dist/types/components/TextareaComposer/SuggestionList/UserItem.d.ts +0 -25
- package/dist/types/components/TextareaComposer/SuggestionList/UserItem.d.ts.map +0 -1
package/dist/cjs/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_useNotificationApi = require("./useNotificationApi.
|
|
2
|
+
const require_useNotificationApi = require("./useNotificationApi.e9312774.js");
|
|
3
3
|
const require_audioProcessing = require("./audioProcessing.22303d69.js");
|
|
4
4
|
let react = require("react");
|
|
5
5
|
react = require_useNotificationApi.__toESM(react);
|
|
@@ -801,7 +801,7 @@ var getInitials = (name) => {
|
|
|
801
801
|
/**
|
|
802
802
|
* A round avatar image with fallback to username's first letter
|
|
803
803
|
*/
|
|
804
|
-
var Avatar = ({ className, imageUrl, isOnline, size, userName, ...rest }) => {
|
|
804
|
+
var Avatar = ({ className, FallbackIcon = require_useNotificationApi.IconUser, imageUrl, isOnline, size, userName, ...rest }) => {
|
|
805
805
|
const [error, setError] = (0, react.useState)(false);
|
|
806
806
|
(0, react.useEffect)(() => () => setError(false), [imageUrl]);
|
|
807
807
|
const nameString = userName?.toString() || "";
|
|
@@ -836,7 +836,7 @@ var Avatar = ({ className, imageUrl, isOnline, size, userName, ...rest }) => {
|
|
|
836
836
|
className: "str-chat__avatar-initials",
|
|
837
837
|
"data-testid": "avatar-fallback",
|
|
838
838
|
children: sizeAwareInitials
|
|
839
|
-
}), !sizeAwareInitials.length && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
839
|
+
}), !sizeAwareInitials.length && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(FallbackIcon, {})] })]
|
|
840
840
|
});
|
|
841
841
|
};
|
|
842
842
|
//#endregion
|
|
@@ -1724,6 +1724,7 @@ var de_default = {
|
|
|
1724
1724
|
"aria/Load More Channels": "Mehr Kanäle laden",
|
|
1725
1725
|
"aria/Mark Message Unread": "Als ungelesen markieren",
|
|
1726
1726
|
"aria/Mark messages as read": "Nachrichten als gelesen markieren",
|
|
1727
|
+
"aria/Mention Suggestions": "Erwähnungsvorschläge",
|
|
1727
1728
|
"aria/Menu": "Menü",
|
|
1728
1729
|
"aria/Message Actions": "Nachrichtenaktionen",
|
|
1729
1730
|
"aria/Message from {{ user }},": "Nachricht von {{ user }},",
|
|
@@ -1770,14 +1771,13 @@ var de_default = {
|
|
|
1770
1771
|
"aria/Unblock User": "Benutzer entsperren",
|
|
1771
1772
|
"aria/Unmute User": "Stummschaltung aufheben",
|
|
1772
1773
|
"aria/Unpin Message": "Anheftung aufheben",
|
|
1773
|
-
"aria/User Suggestions": "Benutzervorschläge",
|
|
1774
1774
|
"Ask a question": "Eine Frage stellen",
|
|
1775
1775
|
Attach: "Anhängen",
|
|
1776
1776
|
"Attach files": "Dateien anhängen",
|
|
1777
1777
|
Attachment: "Anhang",
|
|
1778
1778
|
"Attachment upload blocked due to {{reason}}": "Anhang-Upload blockiert wegen {{reason}}",
|
|
1779
1779
|
"Attachment upload failed due to {{reason}}": "Anhang-Upload fehlgeschlagen wegen {{reason}}",
|
|
1780
|
-
Back: "
|
|
1780
|
+
Back: "Zurück",
|
|
1781
1781
|
"ban-command-args": "[@Benutzername] [Text]",
|
|
1782
1782
|
"ban-command-description": "Einen Benutzer verbannen",
|
|
1783
1783
|
"Block User": "Benutzer blockieren",
|
|
@@ -1881,7 +1881,7 @@ var de_default = {
|
|
|
1881
1881
|
Image: "Bild",
|
|
1882
1882
|
imageCount_one: "Bild",
|
|
1883
1883
|
imageCount_other: "{{ count }} bilder",
|
|
1884
|
-
"Instant commands": "
|
|
1884
|
+
"Instant commands": "Sofortbefehle",
|
|
1885
1885
|
"language/af": "Afrikaans",
|
|
1886
1886
|
"language/am": "Amharisch",
|
|
1887
1887
|
"language/ar": "Arabisch",
|
|
@@ -1945,7 +1945,7 @@ var de_default = {
|
|
|
1945
1945
|
"Limit votes per person": "Stimmen pro Person begrenzen",
|
|
1946
1946
|
Link: "Link",
|
|
1947
1947
|
linkCount_one: "Link",
|
|
1948
|
-
linkCount_other: "{{ count }}
|
|
1948
|
+
linkCount_other: "{{ count }} Links",
|
|
1949
1949
|
live: "live",
|
|
1950
1950
|
"Live for {{duration}}": "Live für {{duration}}",
|
|
1951
1951
|
"Live location": "Live-Standort",
|
|
@@ -1958,6 +1958,10 @@ var de_default = {
|
|
|
1958
1958
|
"Mark as unread": "Als ungelesen markieren",
|
|
1959
1959
|
"Maximum number of votes (from 2 to 10)": "Maximale Anzahl der Stimmen (von 2 bis 10)",
|
|
1960
1960
|
"Maximum votes per person": "Maximale Stimmen pro Person",
|
|
1961
|
+
"mention/Channel": "Kanal",
|
|
1962
|
+
"mention/Channel Description": "Alle in diesem Kanal benachrichtigen",
|
|
1963
|
+
"mention/Here": "Hier",
|
|
1964
|
+
"mention/Here Description": "Alle Online-Mitglieder in diesem Kanal benachrichtigen",
|
|
1961
1965
|
Menu: "Menü",
|
|
1962
1966
|
"Message deleted": "Nachricht gelöscht",
|
|
1963
1967
|
"Message failed to send": "Nachricht konnte nicht gesendet werden",
|
|
@@ -1983,6 +1987,7 @@ var de_default = {
|
|
|
1983
1987
|
"No results found": "Keine Ergebnisse gefunden",
|
|
1984
1988
|
"Nobody will be able to vote in this poll anymore.": "Niemand kann mehr in dieser Umfrage abstimmen.",
|
|
1985
1989
|
"Nothing yet...": "Noch nichts...",
|
|
1990
|
+
"Notify all {{ role }} members": "Alle Mitglieder mit Rolle {{ role }} benachrichtigen",
|
|
1986
1991
|
Offline: "Offline",
|
|
1987
1992
|
Ok: "OK",
|
|
1988
1993
|
Online: "Online",
|
|
@@ -2039,7 +2044,7 @@ var de_default = {
|
|
|
2039
2044
|
"Save for later": "Für später speichern",
|
|
2040
2045
|
"Saved for later": "Für später gespeichert",
|
|
2041
2046
|
Search: "Suche",
|
|
2042
|
-
"Search GIFs": "
|
|
2047
|
+
"Search GIFs": "GIFs suchen",
|
|
2043
2048
|
"search-results-header-filter-source-button-label--channels": "Kanäle",
|
|
2044
2049
|
"search-results-header-filter-source-button-label--messages": "Nachrichten",
|
|
2045
2050
|
"search-results-header-filter-source-button-label--users": "Benutzer",
|
|
@@ -2097,11 +2102,11 @@ var de_default = {
|
|
|
2097
2102
|
"timestamp/MessageTimestamp": "{{ timestamp | timestampFormatter(calendar: false; format: HH:mm) }}",
|
|
2098
2103
|
"timestamp/PollVote": "{{ timestamp | timestampFormatter(relativeCompact: true) }}",
|
|
2099
2104
|
"timestamp/PollVoteTooltip": "{{ timestamp | timestampFormatter(calendar: true) }}",
|
|
2100
|
-
"timestamp/relativeDaysAgo": "{{ count }}
|
|
2105
|
+
"timestamp/relativeDaysAgo": "vor {{ count }} Tg.",
|
|
2101
2106
|
"timestamp/relativeToday": "Heute",
|
|
2102
|
-
"timestamp/relativeWeeksAgo": "{{ count }}
|
|
2107
|
+
"timestamp/relativeWeeksAgo": "vor {{ count }} Wo.",
|
|
2103
2108
|
"timestamp/relativeYesterday": "Gestern",
|
|
2104
|
-
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[
|
|
2109
|
+
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[Heute] [um] HH:mm\", \"nextDay\": \"[Morgen] [um] HH:mm\", \"lastDay\": \"[Gestern] [um] HH:mm\", \"nextWeek\": \"dddd [um] HH:mm\", \"lastWeek\": \"[letzten] dddd [um] HH:mm\", \"sameElse\": \"ddd, D MMM [um] HH:mm\" }) }}",
|
|
2105
2110
|
"timestamp/SystemMessage": "{{ timestamp | timestampFormatter(format: dddd L) }}",
|
|
2106
2111
|
"To start recording, allow the camera access in your browser": "Um mit der Aufnahme zu beginnen, erlauben Sie den Zugriff auf die Kamera in Ihrem Browser",
|
|
2107
2112
|
"To start recording, allow the microphone access in your browser": "Um mit der Aufnahme zu beginnen, erlauben Sie den Zugriff auf das Mikrofon in Ihrem Browser",
|
|
@@ -2135,7 +2140,7 @@ var de_default = {
|
|
|
2135
2140
|
"User uploaded content": "Vom Benutzer hochgeladener Inhalt",
|
|
2136
2141
|
Video: "Video",
|
|
2137
2142
|
videoCount_one: "Video",
|
|
2138
|
-
videoCount_other: "{{ count }}
|
|
2143
|
+
videoCount_other: "{{ count }} Videos",
|
|
2139
2144
|
View: "Ansehen",
|
|
2140
2145
|
"View {{count}} comments_one": "{{count}} Kommentar anzeigen",
|
|
2141
2146
|
"View {{count}} comments_other": "{{count}} Kommentare anzeigen",
|
|
@@ -2252,6 +2257,7 @@ var en_default = {
|
|
|
2252
2257
|
"aria/Load More Channels": "Load More Channels",
|
|
2253
2258
|
"aria/Mark Message Unread": "Mark Message Unread",
|
|
2254
2259
|
"aria/Mark messages as read": "Mark messages as read",
|
|
2260
|
+
"aria/Mention Suggestions": "Mention Suggestions",
|
|
2255
2261
|
"aria/Menu": "Menu",
|
|
2256
2262
|
"aria/Message Actions": "Message Actions",
|
|
2257
2263
|
"aria/Message from {{ user }},": "Message from {{ user }},",
|
|
@@ -2298,7 +2304,6 @@ var en_default = {
|
|
|
2298
2304
|
"aria/Unblock User": "Unblock User",
|
|
2299
2305
|
"aria/Unmute User": "Unmute User",
|
|
2300
2306
|
"aria/Unpin Message": "Unpin Message",
|
|
2301
|
-
"aria/User Suggestions": "User Suggestions",
|
|
2302
2307
|
"Ask a question": "Ask a Question",
|
|
2303
2308
|
Attach: "Attach",
|
|
2304
2309
|
"Attach files": "Attach files",
|
|
@@ -2486,6 +2491,10 @@ var en_default = {
|
|
|
2486
2491
|
"Mark as unread": "Mark as unread",
|
|
2487
2492
|
"Maximum number of votes (from 2 to 10)": "Maximum number of votes (from 2 to 10)",
|
|
2488
2493
|
"Maximum votes per person": "Maximum votes per person",
|
|
2494
|
+
"mention/Channel": "Channel",
|
|
2495
|
+
"mention/Channel Description": "Notify everyone in this channel",
|
|
2496
|
+
"mention/Here": "Here",
|
|
2497
|
+
"mention/Here Description": "Notify every online member in this channel",
|
|
2489
2498
|
Menu: "Menu",
|
|
2490
2499
|
"Message deleted": "Message deleted",
|
|
2491
2500
|
"Message failed to send": "Message failed to send",
|
|
@@ -2511,6 +2520,7 @@ var en_default = {
|
|
|
2511
2520
|
"No results found": "No results found",
|
|
2512
2521
|
"Nobody will be able to vote in this poll anymore.": "Nobody will be able to vote in this poll anymore.",
|
|
2513
2522
|
"Nothing yet...": "Nothing yet...",
|
|
2523
|
+
"Notify all {{ role }} members": "Notify all {{ role }} members",
|
|
2514
2524
|
Offline: "Offline",
|
|
2515
2525
|
Ok: "Ok",
|
|
2516
2526
|
Online: "Online",
|
|
@@ -2788,6 +2798,7 @@ var es_default = {
|
|
|
2788
2798
|
"aria/Load More Channels": "Cargar más canales",
|
|
2789
2799
|
"aria/Mark Message Unread": "Marcar como no leído",
|
|
2790
2800
|
"aria/Mark messages as read": "Marcar mensajes como leídos",
|
|
2801
|
+
"aria/Mention Suggestions": "Sugerencias de menciones",
|
|
2791
2802
|
"aria/Menu": "Menú",
|
|
2792
2803
|
"aria/Message Actions": "Acciones del mensaje",
|
|
2793
2804
|
"aria/Message from {{ user }},": "Mensaje de {{ user }},",
|
|
@@ -2834,7 +2845,6 @@ var es_default = {
|
|
|
2834
2845
|
"aria/Unblock User": "Desbloquear usuario",
|
|
2835
2846
|
"aria/Unmute User": "Activar sonido",
|
|
2836
2847
|
"aria/Unpin Message": "Desfijar mensaje",
|
|
2837
|
-
"aria/User Suggestions": "Sugerencias de usuarios",
|
|
2838
2848
|
"Ask a question": "Hacer una pregunta",
|
|
2839
2849
|
Attach: "Adjuntar",
|
|
2840
2850
|
"Attach files": "Adjuntar archivos",
|
|
@@ -3025,6 +3035,10 @@ var es_default = {
|
|
|
3025
3035
|
"Mark as unread": "Marcar como no leído",
|
|
3026
3036
|
"Maximum number of votes (from 2 to 10)": "Número máximo de votos (de 2 a 10)",
|
|
3027
3037
|
"Maximum votes per person": "Máximo de votos por persona",
|
|
3038
|
+
"mention/Channel": "Canal",
|
|
3039
|
+
"mention/Channel Description": "Notificar a todos en este canal",
|
|
3040
|
+
"mention/Here": "Aqui",
|
|
3041
|
+
"mention/Here Description": "Notificar a todos los miembros en línea de este canal",
|
|
3028
3042
|
Menu: "Menú",
|
|
3029
3043
|
"Message deleted": "Mensaje eliminado",
|
|
3030
3044
|
"Message failed to send": "No se pudo enviar el mensaje",
|
|
@@ -3050,6 +3064,7 @@ var es_default = {
|
|
|
3050
3064
|
"No results found": "No se han encontrado resultados",
|
|
3051
3065
|
"Nobody will be able to vote in this poll anymore.": "Nadie podrá votar en esta encuesta.",
|
|
3052
3066
|
"Nothing yet...": "Nada aún...",
|
|
3067
|
+
"Notify all {{ role }} members": "Notificar a todos los miembros con rol {{ role }}",
|
|
3053
3068
|
Offline: "Desconectado",
|
|
3054
3069
|
Ok: "Aceptar",
|
|
3055
3070
|
Online: "En línea",
|
|
@@ -3168,11 +3183,11 @@ var es_default = {
|
|
|
3168
3183
|
"timestamp/MessageTimestamp": "{{ timestamp | timestampFormatter(calendar: false; format: HH:mm) }}",
|
|
3169
3184
|
"timestamp/PollVote": "{{ timestamp | timestampFormatter(relativeCompact: true) }}",
|
|
3170
3185
|
"timestamp/PollVoteTooltip": "{{ timestamp | timestampFormatter(calendar: true) }}",
|
|
3171
|
-
"timestamp/relativeDaysAgo": "{{ count }}d
|
|
3186
|
+
"timestamp/relativeDaysAgo": "hace {{ count }} d",
|
|
3172
3187
|
"timestamp/relativeToday": "Hoy",
|
|
3173
|
-
"timestamp/relativeWeeksAgo": "{{ count }}
|
|
3188
|
+
"timestamp/relativeWeeksAgo": "hace {{ count }} sem",
|
|
3174
3189
|
"timestamp/relativeYesterday": "Ayer",
|
|
3175
|
-
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[
|
|
3190
|
+
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[Hoy] [a las] HH:mm\", \"nextDay\": \"[Mañana] [a las] HH:mm\", \"lastDay\": \"[Ayer] [a las] HH:mm\", \"nextWeek\": \"dddd [a las] HH:mm\", \"lastWeek\": \"[Último] dddd [a las] HH:mm\", \"sameElse\": \"ddd, D MMM [a las] HH:mm\" }) }}",
|
|
3176
3191
|
"timestamp/SystemMessage": "{{ timestamp | timestampFormatter(format: dddd L) }}",
|
|
3177
3192
|
"To start recording, allow the camera access in your browser": "Para comenzar a grabar, permita el acceso a la cámara en su navegador",
|
|
3178
3193
|
"To start recording, allow the microphone access in your browser": "Para comenzar a grabar, permita el acceso al micrófono en su navegador",
|
|
@@ -3335,6 +3350,7 @@ var fr_default = {
|
|
|
3335
3350
|
"aria/Load More Channels": "Charger plus de canaux",
|
|
3336
3351
|
"aria/Mark Message Unread": "Marquer comme non lu",
|
|
3337
3352
|
"aria/Mark messages as read": "Marquer les messages comme lus",
|
|
3353
|
+
"aria/Mention Suggestions": "Suggestions de mentions",
|
|
3338
3354
|
"aria/Menu": "Menu",
|
|
3339
3355
|
"aria/Message Actions": "Actions du message",
|
|
3340
3356
|
"aria/Message from {{ user }},": "Message de {{ user }},",
|
|
@@ -3381,7 +3397,6 @@ var fr_default = {
|
|
|
3381
3397
|
"aria/Unblock User": "Débloquer l'utilisateur",
|
|
3382
3398
|
"aria/Unmute User": "Désactiver muet",
|
|
3383
3399
|
"aria/Unpin Message": "Détacher le message",
|
|
3384
|
-
"aria/User Suggestions": "Suggestions d'utilisateurs",
|
|
3385
3400
|
"Ask a question": "Poser une question",
|
|
3386
3401
|
Attach: "Joindre",
|
|
3387
3402
|
"Attach files": "Joindre des fichiers",
|
|
@@ -3572,6 +3587,10 @@ var fr_default = {
|
|
|
3572
3587
|
"Mark as unread": "Marquer comme non lu",
|
|
3573
3588
|
"Maximum number of votes (from 2 to 10)": "Nombre maximum de votes (de 2 à 10)",
|
|
3574
3589
|
"Maximum votes per person": "Nombre maximal de votes par personne",
|
|
3590
|
+
"mention/Channel": "Canal",
|
|
3591
|
+
"mention/Channel Description": "Notifier tout le monde dans ce canal",
|
|
3592
|
+
"mention/Here": "Ici",
|
|
3593
|
+
"mention/Here Description": "Notifier tous les membres en ligne dans ce canal",
|
|
3575
3594
|
Menu: "Menu",
|
|
3576
3595
|
"Message deleted": "Message supprimé",
|
|
3577
3596
|
"Message failed to send": "Échec de l'envoi du message",
|
|
@@ -3597,6 +3616,7 @@ var fr_default = {
|
|
|
3597
3616
|
"No results found": "Aucun résultat trouvé",
|
|
3598
3617
|
"Nobody will be able to vote in this poll anymore.": "Personne ne pourra plus voter dans ce sondage.",
|
|
3599
3618
|
"Nothing yet...": "Rien pour l'instant...",
|
|
3619
|
+
"Notify all {{ role }} members": "Notifier tous les membres ayant le rôle {{ role }}",
|
|
3600
3620
|
Offline: "Hors ligne",
|
|
3601
3621
|
Ok: "D'accord",
|
|
3602
3622
|
Online: "En ligne",
|
|
@@ -3715,11 +3735,11 @@ var fr_default = {
|
|
|
3715
3735
|
"timestamp/MessageTimestamp": "{{ timestamp | timestampFormatter(calendar: false; format: HH:mm) }}",
|
|
3716
3736
|
"timestamp/PollVote": "{{ timestamp | timestampFormatter(relativeCompact: true) }}",
|
|
3717
3737
|
"timestamp/PollVoteTooltip": "{{ timestamp | timestampFormatter(calendar: true) }}",
|
|
3718
|
-
"timestamp/relativeDaysAgo": "{{ count }}
|
|
3738
|
+
"timestamp/relativeDaysAgo": "il y a {{ count }} j",
|
|
3719
3739
|
"timestamp/relativeToday": "Aujourd'hui",
|
|
3720
|
-
"timestamp/relativeWeeksAgo": "{{ count }}
|
|
3740
|
+
"timestamp/relativeWeeksAgo": "il y a {{ count }} sem",
|
|
3721
3741
|
"timestamp/relativeYesterday": "Hier",
|
|
3722
|
-
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[
|
|
3742
|
+
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[Aujourd'hui] [à] HH:mm\", \"nextDay\": \"[Demain] [à] HH:mm\", \"lastDay\": \"[Hier] [à] HH:mm\", \"nextWeek\": \"dddd [à] HH:mm\", \"lastWeek\": \"dddd [dernier à] HH:mm\", \"sameElse\": \"ddd, D MMM [à] HH:mm\" }) }}",
|
|
3723
3743
|
"timestamp/SystemMessage": "{{ timestamp | timestampFormatter(format: dddd L) }}",
|
|
3724
3744
|
"To start recording, allow the camera access in your browser": "Pour commencer l'enregistrement, autorisez l'accès à la caméra dans votre navigateur",
|
|
3725
3745
|
"To start recording, allow the microphone access in your browser": "Pour commencer l'enregistrement, autorisez l'accès au microphone dans votre navigateur",
|
|
@@ -3874,6 +3894,7 @@ var hi_default = {
|
|
|
3874
3894
|
"aria/Load More Channels": "और चैनल लोड करें",
|
|
3875
3895
|
"aria/Mark Message Unread": "अपठित चिह्नित करें",
|
|
3876
3896
|
"aria/Mark messages as read": "संदेशों को पढ़ा हुआ चिह्नित करें",
|
|
3897
|
+
"aria/Mention Suggestions": "उल्लेख सुझाव",
|
|
3877
3898
|
"aria/Menu": "मेन्यू",
|
|
3878
3899
|
"aria/Message Actions": "संदेश कार्रवाइयाँ",
|
|
3879
3900
|
"aria/Message from {{ user }},": "{{ user }} का संदेश,",
|
|
@@ -3920,7 +3941,6 @@ var hi_default = {
|
|
|
3920
3941
|
"aria/Unblock User": "उपयोगकर्ता अनब्लॉक करें",
|
|
3921
3942
|
"aria/Unmute User": "उपयोगकर्ता अनम्यूट करें",
|
|
3922
3943
|
"aria/Unpin Message": "संदेश अनपिन करें",
|
|
3923
|
-
"aria/User Suggestions": "उपयोगकर्ता सुझाव",
|
|
3924
3944
|
"Ask a question": "एक प्रश्न पूछें",
|
|
3925
3945
|
Attach: "संलग्न करें",
|
|
3926
3946
|
"Attach files": "फाइल्स अटैच करे",
|
|
@@ -4109,6 +4129,10 @@ var hi_default = {
|
|
|
4109
4129
|
"Mark as unread": "अपठित चिह्नित करें",
|
|
4110
4130
|
"Maximum number of votes (from 2 to 10)": "अधिकतम वोटों की संख्या (2 से 10)",
|
|
4111
4131
|
"Maximum votes per person": "प्रति व्यक्ति अधिकतम वोट",
|
|
4132
|
+
"mention/Channel": "चैनल",
|
|
4133
|
+
"mention/Channel Description": "इस चैनल में सभी को सूचित करें",
|
|
4134
|
+
"mention/Here": "यहां",
|
|
4135
|
+
"mention/Here Description": "इस चैनल के सभी ऑनलाइन सदस्यों को सूचित करें",
|
|
4112
4136
|
Menu: "मेन्यू",
|
|
4113
4137
|
"Message deleted": "मैसेज हटा दिया गया",
|
|
4114
4138
|
"Message failed to send": "संदेश भेजने में विफल",
|
|
@@ -4134,6 +4158,7 @@ var hi_default = {
|
|
|
4134
4158
|
"No results found": "कोई परिणाम नहीं मिला",
|
|
4135
4159
|
"Nobody will be able to vote in this poll anymore.": "अब कोई भी इस मतदान में मतदान नहीं कर सकेगा।",
|
|
4136
4160
|
"Nothing yet...": "कोई मैसेज नहीं है",
|
|
4161
|
+
"Notify all {{ role }} members": "{{ role }} भूमिका वाले सभी सदस्यों को सूचित करें",
|
|
4137
4162
|
Offline: "ऑफलाइन",
|
|
4138
4163
|
Ok: "ठीक है",
|
|
4139
4164
|
Online: "ऑनलाइन",
|
|
@@ -4248,11 +4273,11 @@ var hi_default = {
|
|
|
4248
4273
|
"timestamp/MessageTimestamp": "{{ timestamp | timestampFormatter(calendar: false; format: HH:mm) }}",
|
|
4249
4274
|
"timestamp/PollVote": "{{ timestamp | timestampFormatter(relativeCompact: true) }}",
|
|
4250
4275
|
"timestamp/PollVoteTooltip": "{{ timestamp | timestampFormatter(calendar: true) }}",
|
|
4251
|
-
"timestamp/relativeDaysAgo": "{{ count }}
|
|
4276
|
+
"timestamp/relativeDaysAgo": "{{ count }} दिन पहले",
|
|
4252
4277
|
"timestamp/relativeToday": "आज",
|
|
4253
|
-
"timestamp/relativeWeeksAgo": "{{ count }}
|
|
4278
|
+
"timestamp/relativeWeeksAgo": "{{ count }} सप्ताह पहले",
|
|
4254
4279
|
"timestamp/relativeYesterday": "बीता कल",
|
|
4255
|
-
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[
|
|
4280
|
+
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[आज] HH:mm\", \"nextDay\": \"[कल] HH:mm\", \"lastDay\": \"[बीता कल] HH:mm\", \"nextWeek\": \"dddd HH:mm\", \"lastWeek\": \"[पिछले] dddd, HH:mm\", \"sameElse\": \"ddd, D MMM HH:mm\" }) }}",
|
|
4256
4281
|
"timestamp/SystemMessage": "{{ timestamp | timestampFormatter(format: dddd L) }}",
|
|
4257
4282
|
"To start recording, allow the camera access in your browser": "रिकॉर्डिंग शुरू करने के लिए, अपने ब्राउज़र में कैमरा तक पहुँच दें",
|
|
4258
4283
|
"To start recording, allow the microphone access in your browser": "रिकॉर्डिंग शुरू करने के लिए, अपने ब्राउज़र में माइक्रोफ़ोन तक पहुँच दें",
|
|
@@ -4411,6 +4436,7 @@ var it_default = {
|
|
|
4411
4436
|
"aria/Load More Channels": "Carica altri canali",
|
|
4412
4437
|
"aria/Mark Message Unread": "Contrassegna come non letto",
|
|
4413
4438
|
"aria/Mark messages as read": "Segna i messaggi come letti",
|
|
4439
|
+
"aria/Mention Suggestions": "Suggerimenti di menzione",
|
|
4414
4440
|
"aria/Menu": "Menu",
|
|
4415
4441
|
"aria/Message Actions": "Azioni del messaggio",
|
|
4416
4442
|
"aria/Message from {{ user }},": "Messaggio di {{ user }},",
|
|
@@ -4457,7 +4483,6 @@ var it_default = {
|
|
|
4457
4483
|
"aria/Unblock User": "Sblocca utente",
|
|
4458
4484
|
"aria/Unmute User": "Riattiva il notifiche",
|
|
4459
4485
|
"aria/Unpin Message": "Rimuovi messaggio appuntato",
|
|
4460
|
-
"aria/User Suggestions": "Suggerimenti utenti",
|
|
4461
4486
|
"Ask a question": "Fai una domanda",
|
|
4462
4487
|
Attach: "Allega",
|
|
4463
4488
|
"Attach files": "Allega file",
|
|
@@ -4648,6 +4673,10 @@ var it_default = {
|
|
|
4648
4673
|
"Mark as unread": "Contrassegna come non letto",
|
|
4649
4674
|
"Maximum number of votes (from 2 to 10)": "Numero massimo di voti (da 2 a 10)",
|
|
4650
4675
|
"Maximum votes per person": "Voti massimi per persona",
|
|
4676
|
+
"mention/Channel": "Canale",
|
|
4677
|
+
"mention/Channel Description": "Notifica tutti in questo canale",
|
|
4678
|
+
"mention/Here": "Qui",
|
|
4679
|
+
"mention/Here Description": "Notifica tutti i membri online in questo canale",
|
|
4651
4680
|
Menu: "Menù",
|
|
4652
4681
|
"Message deleted": "Messaggio cancellato",
|
|
4653
4682
|
"Message failed to send": "Invio del messaggio non riuscito",
|
|
@@ -4673,6 +4702,7 @@ var it_default = {
|
|
|
4673
4702
|
"No results found": "Nessun risultato trovato",
|
|
4674
4703
|
"Nobody will be able to vote in this poll anymore.": "Nessuno potrà più votare in questo sondaggio.",
|
|
4675
4704
|
"Nothing yet...": "Ancora niente...",
|
|
4705
|
+
"Notify all {{ role }} members": "Notifica tutti i membri con ruolo {{ role }}",
|
|
4676
4706
|
Offline: "Offline",
|
|
4677
4707
|
Ok: "OK",
|
|
4678
4708
|
Online: "Online",
|
|
@@ -4791,11 +4821,11 @@ var it_default = {
|
|
|
4791
4821
|
"timestamp/MessageTimestamp": "{{ timestamp | timestampFormatter(calendar: false; format: HH:mm) }}",
|
|
4792
4822
|
"timestamp/PollVote": "{{ timestamp | timestampFormatter(relativeCompact: true) }}",
|
|
4793
4823
|
"timestamp/PollVoteTooltip": "{{ timestamp | timestampFormatter(calendar: true) }}",
|
|
4794
|
-
"timestamp/relativeDaysAgo": "{{ count }}
|
|
4824
|
+
"timestamp/relativeDaysAgo": "{{ count }} g fa",
|
|
4795
4825
|
"timestamp/relativeToday": "Oggi",
|
|
4796
|
-
"timestamp/relativeWeeksAgo": "{{ count }}
|
|
4826
|
+
"timestamp/relativeWeeksAgo": "{{ count }} sett fa",
|
|
4797
4827
|
"timestamp/relativeYesterday": "Ieri",
|
|
4798
|
-
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[
|
|
4828
|
+
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[Oggi] [alle] HH:mm\", \"nextDay\": \"[Domani] [alle] HH:mm\", \"lastDay\": \"[Ieri] [alle] HH:mm\", \"nextWeek\": \"dddd [alle] HH:mm\", \"lastWeek\": \"[lo scorso] dddd [alle] HH:mm\", \"sameElse\": \"ddd, D MMM [alle] HH:mm\" }) }}",
|
|
4799
4829
|
"timestamp/SystemMessage": "{{ timestamp | timestampFormatter(format: dddd L) }}",
|
|
4800
4830
|
"To start recording, allow the camera access in your browser": "Per iniziare a registrare, consenti l'accesso alla fotocamera nel tuo browser",
|
|
4801
4831
|
"To start recording, allow the microphone access in your browser": "Per iniziare a registrare, consenti l'accesso al microfono nel tuo browser",
|
|
@@ -4949,6 +4979,7 @@ var ja_default = {
|
|
|
4949
4979
|
"aria/Load More Channels": "さらにチャンネルを読み込む",
|
|
4950
4980
|
"aria/Mark Message Unread": "未読としてマーク",
|
|
4951
4981
|
"aria/Mark messages as read": "メッセージを既読にする",
|
|
4982
|
+
"aria/Mention Suggestions": "メンション候補",
|
|
4952
4983
|
"aria/Menu": "メニュー",
|
|
4953
4984
|
"aria/Message Actions": "メッセージ操作",
|
|
4954
4985
|
"aria/Message from {{ user }},": "{{ user }}さんからのメッセージ,",
|
|
@@ -4995,7 +5026,6 @@ var ja_default = {
|
|
|
4995
5026
|
"aria/Unblock User": "ユーザーのブロックを解除",
|
|
4996
5027
|
"aria/Unmute User": "無音を解除する",
|
|
4997
5028
|
"aria/Unpin Message": "ピンを解除",
|
|
4998
|
-
"aria/User Suggestions": "ユーザー候補",
|
|
4999
5029
|
"Ask a question": "質問する",
|
|
5000
5030
|
Attach: "添付",
|
|
5001
5031
|
"Attach files": "ファイルを添付する",
|
|
@@ -5180,6 +5210,10 @@ var ja_default = {
|
|
|
5180
5210
|
"Mark as unread": "未読としてマーク",
|
|
5181
5211
|
"Maximum number of votes (from 2 to 10)": "最大投票数(2から10まで)",
|
|
5182
5212
|
"Maximum votes per person": "1人あたりの最大投票数",
|
|
5213
|
+
"mention/Channel": "チャンネル",
|
|
5214
|
+
"mention/Channel Description": "このチャンネルの全員に通知",
|
|
5215
|
+
"mention/Here": "ここ",
|
|
5216
|
+
"mention/Here Description": "このチャンネルのオンライン中の全メンバーに通知",
|
|
5183
5217
|
Menu: "メニュー",
|
|
5184
5218
|
"Message deleted": "メッセージが削除されました",
|
|
5185
5219
|
"Message failed to send": "メッセージの送信に失敗しました",
|
|
@@ -5205,6 +5239,7 @@ var ja_default = {
|
|
|
5205
5239
|
"No results found": "結果が見つかりません",
|
|
5206
5240
|
"Nobody will be able to vote in this poll anymore.": "この投票では、誰も投票できなくなります。",
|
|
5207
5241
|
"Nothing yet...": "まだ何もありません...",
|
|
5242
|
+
"Notify all {{ role }} members": "{{ role }} メンバー全員に通知",
|
|
5208
5243
|
Offline: "オフライン",
|
|
5209
5244
|
Ok: "OK",
|
|
5210
5245
|
Online: "オンライン",
|
|
@@ -5318,11 +5353,11 @@ var ja_default = {
|
|
|
5318
5353
|
"timestamp/MessageTimestamp": "{{ timestamp | timestampFormatter(calendar: false; format: HH:mm) }}",
|
|
5319
5354
|
"timestamp/PollVote": "{{ timestamp | timestampFormatter(relativeCompact: true) }}",
|
|
5320
5355
|
"timestamp/PollVoteTooltip": "{{ timestamp | timestampFormatter(calendar: true) }}",
|
|
5321
|
-
"timestamp/relativeDaysAgo": "{{ count }}
|
|
5356
|
+
"timestamp/relativeDaysAgo": "{{ count }}日前",
|
|
5322
5357
|
"timestamp/relativeToday": "今日",
|
|
5323
|
-
"timestamp/relativeWeeksAgo": "{{ count }}
|
|
5358
|
+
"timestamp/relativeWeeksAgo": "{{ count }}週間前",
|
|
5324
5359
|
"timestamp/relativeYesterday": "昨日",
|
|
5325
|
-
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[
|
|
5360
|
+
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[今日] HH:mm\", \"nextDay\": \"[明日] HH:mm\", \"lastDay\": \"[昨日] HH:mm\", \"nextWeek\": \"dddd HH:mm\", \"lastWeek\": \"dddd HH:mm\", \"sameElse\": \"ddd, D MMM HH:mm\" }) }}",
|
|
5326
5361
|
"timestamp/SystemMessage": "{{ timestamp | timestampFormatter(format: dddd L) }}",
|
|
5327
5362
|
"To start recording, allow the camera access in your browser": "録音を開始するには、ブラウザーでカメラへのアクセスを許可してください",
|
|
5328
5363
|
"To start recording, allow the microphone access in your browser": "録音を開始するには、ブラウザーでマイクロフォンへのアクセスを許可してください",
|
|
@@ -5469,6 +5504,7 @@ var ko_default = {
|
|
|
5469
5504
|
"aria/Load More Channels": "더 많은 채널 불러오기",
|
|
5470
5505
|
"aria/Mark Message Unread": "읽지 않음으로 표시",
|
|
5471
5506
|
"aria/Mark messages as read": "메시지를 읽음으로 표시",
|
|
5507
|
+
"aria/Mention Suggestions": "멘션 제안",
|
|
5472
5508
|
"aria/Menu": "메뉴",
|
|
5473
5509
|
"aria/Message Actions": "메시지 작업",
|
|
5474
5510
|
"aria/Message from {{ user }},": "{{ user }}의 메시지,",
|
|
@@ -5515,7 +5551,6 @@ var ko_default = {
|
|
|
5515
5551
|
"aria/Unblock User": "사용자 차단 해제",
|
|
5516
5552
|
"aria/Unmute User": "음소거 해제",
|
|
5517
5553
|
"aria/Unpin Message": "핀 해제",
|
|
5518
|
-
"aria/User Suggestions": "사용자 제안",
|
|
5519
5554
|
"Ask a question": "질문하기",
|
|
5520
5555
|
Attach: "첨부",
|
|
5521
5556
|
"Attach files": "파일 첨부",
|
|
@@ -5700,6 +5735,10 @@ var ko_default = {
|
|
|
5700
5735
|
"Mark as unread": "읽지 않음으로 표시",
|
|
5701
5736
|
"Maximum number of votes (from 2 to 10)": "최대 투표 수 (2에서 10까지)",
|
|
5702
5737
|
"Maximum votes per person": "1인당 최대 투표 수",
|
|
5738
|
+
"mention/Channel": "채널",
|
|
5739
|
+
"mention/Channel Description": "이 채널의 모두에게 알림",
|
|
5740
|
+
"mention/Here": "여기",
|
|
5741
|
+
"mention/Here Description": "이 채널의 모든 온라인 멤버에게 알림",
|
|
5703
5742
|
Menu: "메뉴",
|
|
5704
5743
|
"Message deleted": "메시지가 삭제되었습니다.",
|
|
5705
5744
|
"Message failed to send": "메시지 전송 실패",
|
|
@@ -5725,6 +5764,7 @@ var ko_default = {
|
|
|
5725
5764
|
"No results found": "검색 결과가 없습니다",
|
|
5726
5765
|
"Nobody will be able to vote in this poll anymore.": "이 투표에 더 이상 아무도 투표할 수 없습니다.",
|
|
5727
5766
|
"Nothing yet...": "아직 아무것도...",
|
|
5767
|
+
"Notify all {{ role }} members": "{{ role }} 역할의 모든 멤버에게 알림",
|
|
5728
5768
|
Offline: "오프라인",
|
|
5729
5769
|
Ok: "확인",
|
|
5730
5770
|
Online: "온라인",
|
|
@@ -5838,11 +5878,11 @@ var ko_default = {
|
|
|
5838
5878
|
"timestamp/MessageTimestamp": "{{ timestamp | timestampFormatter(calendar: false; format: HH:mm) }}",
|
|
5839
5879
|
"timestamp/PollVote": "{{ timestamp | timestampFormatter(relativeCompact: true) }}",
|
|
5840
5880
|
"timestamp/PollVoteTooltip": "{{ timestamp | timestampFormatter(calendar: true) }}",
|
|
5841
|
-
"timestamp/relativeDaysAgo": "{{ count }}
|
|
5881
|
+
"timestamp/relativeDaysAgo": "{{ count }}일 전",
|
|
5842
5882
|
"timestamp/relativeToday": "오늘",
|
|
5843
|
-
"timestamp/relativeWeeksAgo": "{{ count }}
|
|
5883
|
+
"timestamp/relativeWeeksAgo": "{{ count }}주 전",
|
|
5844
5884
|
"timestamp/relativeYesterday": "어제",
|
|
5845
|
-
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[
|
|
5885
|
+
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[오늘] HH:mm\", \"nextDay\": \"[내일] HH:mm\", \"lastDay\": \"[어제] HH:mm\", \"nextWeek\": \"dddd HH:mm\", \"lastWeek\": \"[지난] dddd HH:mm\", \"sameElse\": \"ddd, D MMM HH:mm\" }) }}",
|
|
5846
5886
|
"timestamp/SystemMessage": "{{ timestamp | timestampFormatter(format: dddd L) }}",
|
|
5847
5887
|
"To start recording, allow the camera access in your browser": "브라우저에서 카메라 액세스를 허용하여 녹음을 시작합니다",
|
|
5848
5888
|
"To start recording, allow the microphone access in your browser": "브라우저에서 마이크로폰 액세스를 허용하여 녹음을 시작합니다",
|
|
@@ -5990,6 +6030,7 @@ var nl_default = {
|
|
|
5990
6030
|
"aria/Load More Channels": "Meer kanalen laden",
|
|
5991
6031
|
"aria/Mark Message Unread": "Markeren als ongelezen",
|
|
5992
6032
|
"aria/Mark messages as read": "Markeer berichten als gelezen",
|
|
6033
|
+
"aria/Mention Suggestions": "Vermeldingssuggesties",
|
|
5993
6034
|
"aria/Menu": "Menu",
|
|
5994
6035
|
"aria/Message Actions": "Berichtacties",
|
|
5995
6036
|
"aria/Message from {{ user }},": "Bericht van {{ user }},",
|
|
@@ -6036,7 +6077,6 @@ var nl_default = {
|
|
|
6036
6077
|
"aria/Unblock User": "Gebruiker deblokkeren",
|
|
6037
6078
|
"aria/Unmute User": "Dempen opheffen",
|
|
6038
6079
|
"aria/Unpin Message": "Losmaken",
|
|
6039
|
-
"aria/User Suggestions": "Gebruikerssuggesties",
|
|
6040
6080
|
"Ask a question": "Stel een vraag",
|
|
6041
6081
|
Attach: "Bijvoegen",
|
|
6042
6082
|
"Attach files": "Bijlage toevoegen",
|
|
@@ -6224,6 +6264,10 @@ var nl_default = {
|
|
|
6224
6264
|
"Mark as unread": "Markeren als ongelezen",
|
|
6225
6265
|
"Maximum number of votes (from 2 to 10)": "Maximaal aantal stemmen (van 2 tot 10)",
|
|
6226
6266
|
"Maximum votes per person": "Maximum aantal stemmen per persoon",
|
|
6267
|
+
"mention/Channel": "Kanaal",
|
|
6268
|
+
"mention/Channel Description": "Iedereen in dit kanaal informeren",
|
|
6269
|
+
"mention/Here": "Hier",
|
|
6270
|
+
"mention/Here Description": "Alle online leden in dit kanaal informeren",
|
|
6227
6271
|
Menu: "Menu",
|
|
6228
6272
|
"Message deleted": "Bericht verwijderd",
|
|
6229
6273
|
"Message failed to send": "Bericht kon niet worden verzonden",
|
|
@@ -6249,6 +6293,7 @@ var nl_default = {
|
|
|
6249
6293
|
"No results found": "Geen resultaten gevonden",
|
|
6250
6294
|
"Nobody will be able to vote in this poll anymore.": "Niemand kan meer stemmen in deze peiling.",
|
|
6251
6295
|
"Nothing yet...": "Nog niets ...",
|
|
6296
|
+
"Notify all {{ role }} members": "Alle leden met rol {{ role }} informeren",
|
|
6252
6297
|
Offline: "Offline",
|
|
6253
6298
|
Ok: "Oké",
|
|
6254
6299
|
Online: "Online",
|
|
@@ -6365,11 +6410,11 @@ var nl_default = {
|
|
|
6365
6410
|
"timestamp/MessageTimestamp": "{{ timestamp | timestampFormatter(calendar: false; format: HH:mm) }}",
|
|
6366
6411
|
"timestamp/PollVote": "{{ timestamp | timestampFormatter(relativeCompact: true) }}",
|
|
6367
6412
|
"timestamp/PollVoteTooltip": "{{ timestamp | timestampFormatter(calendar: true) }}",
|
|
6368
|
-
"timestamp/relativeDaysAgo": "{{ count }}d
|
|
6413
|
+
"timestamp/relativeDaysAgo": "{{ count }} d geleden",
|
|
6369
6414
|
"timestamp/relativeToday": "Vandaag",
|
|
6370
|
-
"timestamp/relativeWeeksAgo": "{{ count }}w
|
|
6415
|
+
"timestamp/relativeWeeksAgo": "{{ count }} w geleden",
|
|
6371
6416
|
"timestamp/relativeYesterday": "Gisteren",
|
|
6372
|
-
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[
|
|
6417
|
+
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[Vandaag] [om] HH:mm\", \"nextDay\": \"[Morgen] [om] HH:mm\", \"lastDay\": \"[Gisteren] [om] HH:mm\", \"nextWeek\": \"dddd [om] HH:mm\", \"lastWeek\": \"[afgelopen] dddd [om] HH:mm\", \"sameElse\": \"ddd, D MMM [om] HH:mm\" }) }}",
|
|
6373
6418
|
"timestamp/SystemMessage": "{{ timestamp | timestampFormatter(format: dddd L) }}",
|
|
6374
6419
|
"To start recording, allow the camera access in your browser": "Om te beginnen met opnemen, sta toegang tot de camera toe in uw browser",
|
|
6375
6420
|
"To start recording, allow the microphone access in your browser": "Om te beginnen met opnemen, sta toegang tot de microfoon toe in uw browser",
|
|
@@ -6528,6 +6573,7 @@ var pt_default = {
|
|
|
6528
6573
|
"aria/Load More Channels": "Carregar mais canais",
|
|
6529
6574
|
"aria/Mark Message Unread": "Marcar como não lida",
|
|
6530
6575
|
"aria/Mark messages as read": "Marcar mensagens como lidas",
|
|
6576
|
+
"aria/Mention Suggestions": "Sugestões de menções",
|
|
6531
6577
|
"aria/Menu": "Menu",
|
|
6532
6578
|
"aria/Message Actions": "Ações da mensagem",
|
|
6533
6579
|
"aria/Message from {{ user }},": "Mensagem de {{ user }},",
|
|
@@ -6574,7 +6620,6 @@ var pt_default = {
|
|
|
6574
6620
|
"aria/Unblock User": "Desbloquear usuário",
|
|
6575
6621
|
"aria/Unmute User": "Ativar som",
|
|
6576
6622
|
"aria/Unpin Message": "Desfixar mensagem",
|
|
6577
|
-
"aria/User Suggestions": "Sugestões de usuários",
|
|
6578
6623
|
"Ask a question": "Faça uma pergunta",
|
|
6579
6624
|
Attach: "Anexar",
|
|
6580
6625
|
"Attach files": "Anexar arquivos",
|
|
@@ -6765,6 +6810,10 @@ var pt_default = {
|
|
|
6765
6810
|
"Mark as unread": "Marcar como não lida",
|
|
6766
6811
|
"Maximum number of votes (from 2 to 10)": "Número máximo de votos (de 2 a 10)",
|
|
6767
6812
|
"Maximum votes per person": "Máximo de votos por pessoa",
|
|
6813
|
+
"mention/Channel": "Canal",
|
|
6814
|
+
"mention/Channel Description": "Notificar todos neste canal",
|
|
6815
|
+
"mention/Here": "Aqui",
|
|
6816
|
+
"mention/Here Description": "Notificar todos os membros online neste canal",
|
|
6768
6817
|
Menu: "Menu",
|
|
6769
6818
|
"Message deleted": "Mensagem apagada",
|
|
6770
6819
|
"Message failed to send": "Falha ao enviar a mensagem",
|
|
@@ -6790,6 +6839,7 @@ var pt_default = {
|
|
|
6790
6839
|
"No results found": "Nenhum resultado encontrado",
|
|
6791
6840
|
"Nobody will be able to vote in this poll anymore.": "Ninguém mais poderá votar nesta pesquisa.",
|
|
6792
6841
|
"Nothing yet...": "Nada ainda...",
|
|
6842
|
+
"Notify all {{ role }} members": "Notificar todos os membros com a função {{ role }}",
|
|
6793
6843
|
Offline: "Offline",
|
|
6794
6844
|
Ok: "OK",
|
|
6795
6845
|
Online: "Online",
|
|
@@ -6908,11 +6958,11 @@ var pt_default = {
|
|
|
6908
6958
|
"timestamp/MessageTimestamp": "{{ timestamp | timestampFormatter(calendar: false; format: HH:mm) }}",
|
|
6909
6959
|
"timestamp/PollVote": "{{ timestamp | timestampFormatter(relativeCompact: true) }}",
|
|
6910
6960
|
"timestamp/PollVoteTooltip": "{{ timestamp | timestampFormatter(calendar: true) }}",
|
|
6911
|
-
"timestamp/relativeDaysAgo": "{{ count }}d
|
|
6961
|
+
"timestamp/relativeDaysAgo": "há {{ count }} d",
|
|
6912
6962
|
"timestamp/relativeToday": "Hoje",
|
|
6913
|
-
"timestamp/relativeWeeksAgo": "{{ count }}
|
|
6963
|
+
"timestamp/relativeWeeksAgo": "há {{ count }} sem",
|
|
6914
6964
|
"timestamp/relativeYesterday": "Ontem",
|
|
6915
|
-
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[
|
|
6965
|
+
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[Hoje] [às] HH:mm\", \"nextDay\": \"[Amanhã] [às] HH:mm\", \"lastDay\": \"[Ontem] [às] HH:mm\", \"nextWeek\": \"dddd [às] HH:mm\", \"lastWeek\": \"dddd [passada às] HH:mm\", \"sameElse\": \"ddd, D MMM [às] HH:mm\" }) }}",
|
|
6916
6966
|
"timestamp/SystemMessage": "{{ timestamp | timestampFormatter(format: dddd L) }}",
|
|
6917
6967
|
"To start recording, allow the camera access in your browser": "Para começar a gravar, permita o acesso à câmera no seu navegador",
|
|
6918
6968
|
"To start recording, allow the microphone access in your browser": "Para começar a gravar, permita o acesso ao microfone no seu navegador",
|
|
@@ -7084,6 +7134,7 @@ var ru_default = {
|
|
|
7084
7134
|
"aria/Load More Channels": "Загрузить больше каналов",
|
|
7085
7135
|
"aria/Mark Message Unread": "Отметить как непрочитанное",
|
|
7086
7136
|
"aria/Mark messages as read": "Отметить сообщения как прочитанные",
|
|
7137
|
+
"aria/Mention Suggestions": "Подсказки упоминаний",
|
|
7087
7138
|
"aria/Menu": "Меню",
|
|
7088
7139
|
"aria/Message Actions": "Действия с сообщением",
|
|
7089
7140
|
"aria/Message from {{ user }},": "Сообщение от {{ user }},",
|
|
@@ -7130,7 +7181,6 @@ var ru_default = {
|
|
|
7130
7181
|
"aria/Unblock User": "Разблокировать пользователя",
|
|
7131
7182
|
"aria/Unmute User": "Включить уведомления",
|
|
7132
7183
|
"aria/Unpin Message": "Открепить сообщение",
|
|
7133
|
-
"aria/User Suggestions": "Подсказки пользователей",
|
|
7134
7184
|
"Ask a question": "Задать вопрос",
|
|
7135
7185
|
Attach: "Прикрепить",
|
|
7136
7186
|
"Attach files": "Прикрепить файлы",
|
|
@@ -7327,6 +7377,10 @@ var ru_default = {
|
|
|
7327
7377
|
"Mark as unread": "Отметить как непрочитанное",
|
|
7328
7378
|
"Maximum number of votes (from 2 to 10)": "Максимальное количество голосов (от 2 до 10)",
|
|
7329
7379
|
"Maximum votes per person": "Максимум голосов на человека",
|
|
7380
|
+
"mention/Channel": "Канал",
|
|
7381
|
+
"mention/Channel Description": "Уведомить всех в этом канале",
|
|
7382
|
+
"mention/Here": "Здесь",
|
|
7383
|
+
"mention/Here Description": "Уведомить всех онлайн-участников в этом канале",
|
|
7330
7384
|
Menu: "Меню",
|
|
7331
7385
|
"Message deleted": "Сообщение удалено",
|
|
7332
7386
|
"Message failed to send": "Не удалось отправить сообщение",
|
|
@@ -7352,6 +7406,7 @@ var ru_default = {
|
|
|
7352
7406
|
"No results found": "Результаты не найдены",
|
|
7353
7407
|
"Nobody will be able to vote in this poll anymore.": "Никто больше не сможет голосовать в этом опросе.",
|
|
7354
7408
|
"Nothing yet...": "Пока ничего нет...",
|
|
7409
|
+
"Notify all {{ role }} members": "Уведомить всех участников с ролью {{ role }}",
|
|
7355
7410
|
Offline: "Не в сети",
|
|
7356
7411
|
Ok: "Ок",
|
|
7357
7412
|
Online: "В сети",
|
|
@@ -7474,11 +7529,11 @@ var ru_default = {
|
|
|
7474
7529
|
"timestamp/MessageTimestamp": "{{ timestamp | timestampFormatter(calendar: false; format: HH:mm) }}",
|
|
7475
7530
|
"timestamp/PollVote": "{{ timestamp | timestampFormatter(relativeCompact: true) }}",
|
|
7476
7531
|
"timestamp/PollVoteTooltip": "{{ timestamp | timestampFormatter(calendar: true) }}",
|
|
7477
|
-
"timestamp/relativeDaysAgo": "{{ count }}
|
|
7532
|
+
"timestamp/relativeDaysAgo": "{{ count }} дн. назад",
|
|
7478
7533
|
"timestamp/relativeToday": "Сегодня",
|
|
7479
|
-
"timestamp/relativeWeeksAgo": "{{ count }}
|
|
7534
|
+
"timestamp/relativeWeeksAgo": "{{ count }} нед. назад",
|
|
7480
7535
|
"timestamp/relativeYesterday": "Вчера",
|
|
7481
|
-
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[
|
|
7536
|
+
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[Сегодня] [в] HH:mm\", \"nextDay\": \"[Завтра] [в] HH:mm\", \"lastDay\": \"[Вчера] [в] HH:mm\", \"nextWeek\": \"dddd [в] HH:mm\", \"lastWeek\": \"dddd [в] HH:mm\", \"sameElse\": \"ddd, D MMM [в] HH:mm\" }) }}",
|
|
7482
7537
|
"timestamp/SystemMessage": "{{ timestamp | timestampFormatter(format: dddd L) }}",
|
|
7483
7538
|
"To start recording, allow the camera access in your browser": "Для начала записи разрешите доступ к камере в вашем браузере",
|
|
7484
7539
|
"To start recording, allow the microphone access in your browser": "Для начала записи разрешите доступ к микрофону в вашем браузере",
|
|
@@ -7637,6 +7692,7 @@ var tr_default = {
|
|
|
7637
7692
|
"aria/Load More Channels": "Daha Fazla Kanal Yükle",
|
|
7638
7693
|
"aria/Mark Message Unread": "Okunmamış olarak işaretle",
|
|
7639
7694
|
"aria/Mark messages as read": "Mesajları okundu olarak işaretle",
|
|
7695
|
+
"aria/Mention Suggestions": "Bahsetme önerileri",
|
|
7640
7696
|
"aria/Menu": "Menü",
|
|
7641
7697
|
"aria/Message Actions": "Mesaj eylemleri",
|
|
7642
7698
|
"aria/Message from {{ user }},": "{{ user }} adlı kullanıcıdan mesaj,",
|
|
@@ -7683,7 +7739,6 @@ var tr_default = {
|
|
|
7683
7739
|
"aria/Unblock User": "Kullanıcının engelini kaldır",
|
|
7684
7740
|
"aria/Unmute User": "Sesini aç",
|
|
7685
7741
|
"aria/Unpin Message": "Sabitlemeyi kaldır",
|
|
7686
|
-
"aria/User Suggestions": "Kullanıcı önerileri",
|
|
7687
7742
|
"Ask a question": "Bir soru sor",
|
|
7688
7743
|
Attach: "Ekle",
|
|
7689
7744
|
"Attach files": "Dosya ekle",
|
|
@@ -7815,7 +7870,7 @@ var tr_default = {
|
|
|
7815
7870
|
"language/fi": "Fince",
|
|
7816
7871
|
"language/fr": "Fransızca",
|
|
7817
7872
|
"language/fr-CA": "Fransızca (Kanada)",
|
|
7818
|
-
"language/ha": "
|
|
7873
|
+
"language/ha": "Hausaca",
|
|
7819
7874
|
"language/he": "İbranice",
|
|
7820
7875
|
"language/hi": "Hintçe",
|
|
7821
7876
|
"language/hr": "Hırvatça",
|
|
@@ -7871,6 +7926,10 @@ var tr_default = {
|
|
|
7871
7926
|
"Mark as unread": "Okunmamış olarak işaretle",
|
|
7872
7927
|
"Maximum number of votes (from 2 to 10)": "Maksimum oy sayısı (2 ile 10 arası)",
|
|
7873
7928
|
"Maximum votes per person": "Kişi başına maksimum oy",
|
|
7929
|
+
"mention/Channel": "Kanal",
|
|
7930
|
+
"mention/Channel Description": "Bu kanaldaki herkesi bildir",
|
|
7931
|
+
"mention/Here": "Burada",
|
|
7932
|
+
"mention/Here Description": "Bu kanaldaki tüm çevrimiçi üyeleri bildir",
|
|
7874
7933
|
Menu: "Menü",
|
|
7875
7934
|
"Message deleted": "Mesaj silindi",
|
|
7876
7935
|
"Message failed to send": "Mesaj gönderilemedi",
|
|
@@ -7896,6 +7955,7 @@ var tr_default = {
|
|
|
7896
7955
|
"No results found": "Sonuç bulunamadı",
|
|
7897
7956
|
"Nobody will be able to vote in this poll anymore.": "Artık bu ankette kimse oy kullanamayacak.",
|
|
7898
7957
|
"Nothing yet...": "Şimdilik hiçbir şey...",
|
|
7958
|
+
"Notify all {{ role }} members": "{{ role }} rolündeki tüm üyelere bildir",
|
|
7899
7959
|
Offline: "Çevrimdışı",
|
|
7900
7960
|
Ok: "Tamam",
|
|
7901
7961
|
Online: "Çevrimiçi",
|
|
@@ -8010,11 +8070,11 @@ var tr_default = {
|
|
|
8010
8070
|
"timestamp/MessageTimestamp": "{{ timestamp | timestampFormatter(calendar: false; format: HH:mm) }}",
|
|
8011
8071
|
"timestamp/PollVote": "{{ timestamp | timestampFormatter(relativeCompact: true) }}",
|
|
8012
8072
|
"timestamp/PollVoteTooltip": "{{ timestamp | timestampFormatter(calendar: true) }}",
|
|
8013
|
-
"timestamp/relativeDaysAgo": "{{ count }}
|
|
8073
|
+
"timestamp/relativeDaysAgo": "{{ count }} g önce",
|
|
8014
8074
|
"timestamp/relativeToday": "Bugün",
|
|
8015
|
-
"timestamp/relativeWeeksAgo": "{{ count }}
|
|
8075
|
+
"timestamp/relativeWeeksAgo": "{{ count }} hf önce",
|
|
8016
8076
|
"timestamp/relativeYesterday": "Dün",
|
|
8017
|
-
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[
|
|
8077
|
+
"timestamp/ReminderNotification": "{{ timestamp | timestampFormatter(calendar: true; calendarFormats: { \"sameDay\": \"[Bugün] [saat] HH:mm\", \"nextDay\": \"[Yarın] [saat] HH:mm\", \"lastDay\": \"[Dün] [saat] HH:mm\", \"nextWeek\": \"dddd [saat] HH:mm\", \"lastWeek\": \"[Geçen] dddd [saat] HH:mm\", \"sameElse\": \"ddd, D MMM [saat] HH:mm\" }) }}",
|
|
8018
8078
|
"timestamp/SystemMessage": "{{ timestamp | timestampFormatter(format: dddd L) }}",
|
|
8019
8079
|
"To start recording, allow the camera access in your browser": "Kayıt yapmaya başlamak için tarayıcınızda kameraya erişime izin verin",
|
|
8020
8080
|
"To start recording, allow the microphone access in your browser": "Kayıt yapmaya başlamak için tarayıcınızda mikrofona erişime izin verin",
|
|
@@ -8975,8 +9035,9 @@ var useFlagHandler = (message) => {
|
|
|
8975
9035
|
//#region src/components/Message/hooks/useMentionsHandler.ts
|
|
8976
9036
|
function createEventHandler(fn, message) {
|
|
8977
9037
|
return (event) => {
|
|
8978
|
-
|
|
8979
|
-
|
|
9038
|
+
const hasMentions = Boolean(message?.mentioned_users?.length || message?.mentioned_channel || message?.mentioned_here || message?.mentioned_roles?.length || message?.mentioned_groups?.length);
|
|
9039
|
+
if (typeof fn !== "function" || !message || !hasMentions) return;
|
|
9040
|
+
fn(event, message?.mentioned_users ?? [], message);
|
|
8980
9041
|
};
|
|
8981
9042
|
}
|
|
8982
9043
|
var useMentionsHandler = (message, customMentionHandler) => {
|
|
@@ -9915,34 +9976,108 @@ var emojiMarkdownPlugin = () => {
|
|
|
9915
9976
|
};
|
|
9916
9977
|
//#endregion
|
|
9917
9978
|
//#region src/components/Message/renderText/rehypePlugins/mentionsMarkdownPlugin.ts
|
|
9918
|
-
var
|
|
9919
|
-
|
|
9920
|
-
|
|
9921
|
-
|
|
9922
|
-
|
|
9923
|
-
|
|
9924
|
-
|
|
9979
|
+
var MENTION_TRAILING_BOUNDARY = String.raw`(?=$|\s|[!,.?;:'")\]}])`;
|
|
9980
|
+
var isUserMentionEntity = (entity) => entity.mentionType === "user";
|
|
9981
|
+
var getMentionDisplayTexts = (entity) => {
|
|
9982
|
+
if (entity.mentionType === "user") return [entity.name || entity.id].filter(Boolean);
|
|
9983
|
+
if (entity.mentionType === "channel" || entity.mentionType === "here") return [entity.name || entity.id];
|
|
9984
|
+
return Array.from(new Set([entity.name, entity.id].filter(Boolean)));
|
|
9985
|
+
};
|
|
9986
|
+
var getRenderTextMentionEntities = (metadata) => {
|
|
9987
|
+
if (!metadata) return [];
|
|
9988
|
+
const mentions = (metadata.mentioned_users ?? []).map((user) => ({
|
|
9989
|
+
...user,
|
|
9990
|
+
mentionType: "user"
|
|
9991
|
+
}));
|
|
9992
|
+
if (metadata.mentioned_channel) mentions.push({
|
|
9993
|
+
id: "channel",
|
|
9994
|
+
mentionType: "channel",
|
|
9995
|
+
name: "channel"
|
|
9996
|
+
});
|
|
9997
|
+
if (metadata.mentioned_here) mentions.push({
|
|
9998
|
+
id: "here",
|
|
9999
|
+
mentionType: "here",
|
|
10000
|
+
name: "here"
|
|
10001
|
+
});
|
|
10002
|
+
if (metadata.mentioned_roles?.length) mentions.push(...metadata.mentioned_roles.map((role) => ({
|
|
10003
|
+
id: role,
|
|
10004
|
+
mentionType: "role",
|
|
10005
|
+
name: role
|
|
10006
|
+
})));
|
|
10007
|
+
if (metadata.mentioned_groups?.length) mentions.push(...metadata.mentioned_groups.map((group) => ({
|
|
10008
|
+
id: group.id,
|
|
10009
|
+
mentionType: "user_group",
|
|
10010
|
+
name: group.name
|
|
10011
|
+
})));
|
|
10012
|
+
return mentions;
|
|
10013
|
+
};
|
|
10014
|
+
var toRenderTextMentionEntities = (mentionEntities) => mentionEntities.map((entity) => "mentionType" in entity ? entity : {
|
|
10015
|
+
...entity,
|
|
10016
|
+
mentionType: "user"
|
|
10017
|
+
});
|
|
10018
|
+
var createMentionLookup = (mentionEntitiesOrUsers) => {
|
|
10019
|
+
const mentionReplacementMap = toRenderTextMentionEntities(mentionEntitiesOrUsers).reduce((replacementMap, entity) => {
|
|
10020
|
+
getMentionDisplayTexts(entity).forEach((mentionDisplayText) => {
|
|
10021
|
+
const prefixedMentionDisplayText = `@${mentionDisplayText}`;
|
|
10022
|
+
if (!replacementMap.has(prefixedMentionDisplayText)) replacementMap.set(prefixedMentionDisplayText, {
|
|
10023
|
+
entity,
|
|
10024
|
+
mentionDisplayText: prefixedMentionDisplayText
|
|
10025
|
+
});
|
|
10026
|
+
});
|
|
10027
|
+
return replacementMap;
|
|
10028
|
+
}, /* @__PURE__ */ new Map());
|
|
10029
|
+
const mentionReplacements = Array.from(mentionReplacementMap.values()).sort((a, b) => b.mentionDisplayText.length - a.mentionDisplayText.length);
|
|
10030
|
+
return {
|
|
10031
|
+
mentionDisplayTextSet: new Set(mentionReplacementMap.keys()),
|
|
10032
|
+
mentionReplacementMap,
|
|
10033
|
+
mentionReplacements,
|
|
10034
|
+
mentionsRegex: mentionReplacements.length ? new RegExp(`(?:${mentionReplacements.map(({ mentionDisplayText }) => escapeRegExp(mentionDisplayText)).join("|")})${MENTION_TRAILING_BOUNDARY}`, "g") : null
|
|
10035
|
+
};
|
|
10036
|
+
};
|
|
10037
|
+
var mentionsMarkdownPluginFromLookup = ({ mentionDisplayTextSet, mentionReplacementMap, mentionReplacements, mentionsRegex }) => () => {
|
|
10038
|
+
const replace = (mentionDisplayText) => {
|
|
10039
|
+
const replacement = mentionReplacementMap.get(mentionDisplayText);
|
|
10040
|
+
if (!replacement) return mentionDisplayText;
|
|
10041
|
+
return (0, unist_builder.u)("element", isUserMentionEntity(replacement.entity) ? {
|
|
10042
|
+
mentionedEntity: replacement.entity,
|
|
10043
|
+
mentionedUser: replacement.entity,
|
|
10044
|
+
properties: {},
|
|
10045
|
+
tagName: "mention"
|
|
10046
|
+
} : {
|
|
10047
|
+
mentionedEntity: replacement.entity,
|
|
9925
10048
|
properties: {},
|
|
9926
10049
|
tagName: "mention"
|
|
9927
|
-
}, [(0, unist_builder.u)("text",
|
|
10050
|
+
}, [(0, unist_builder.u)("text", mentionDisplayText)]);
|
|
9928
10051
|
};
|
|
9929
10052
|
const transform = (tree) => {
|
|
9930
|
-
if (!
|
|
9931
|
-
(0, unist_util_visit.visit)(tree, (node, index, parent) => {
|
|
10053
|
+
if (!mentionReplacements.length || !mentionsRegex) return;
|
|
10054
|
+
if (mentionDisplayTextSet.size) (0, unist_util_visit.visit)(tree, (node, index, parent) => {
|
|
9932
10055
|
if (typeof index === "undefined") return;
|
|
9933
10056
|
if (!parent) return;
|
|
9934
10057
|
const nextChildHref = parent.children.at(index + 1)?.properties?.href;
|
|
9935
|
-
|
|
9936
|
-
|
|
9937
|
-
const
|
|
10058
|
+
const textNode = node;
|
|
10059
|
+
if (textNode.type === "text" && /.?\s?@$|^@$/.test(textNode.value) && nextChildHref?.startsWith("mailto:")) {
|
|
10060
|
+
const newTextValue = textNode.value.replace(/@$/, "");
|
|
10061
|
+
const mentionDisplayText = `@${nextChildHref.replace("mailto:", "")}`;
|
|
10062
|
+
if (!mentionDisplayTextSet.has(mentionDisplayText)) return;
|
|
9938
10063
|
parent.children[index] = (0, unist_builder.u)("text", newTextValue);
|
|
9939
|
-
parent.children[index + 1] = (0, unist_builder.u)("text",
|
|
10064
|
+
parent.children[index + 1] = (0, unist_builder.u)("text", mentionDisplayText);
|
|
9940
10065
|
}
|
|
9941
10066
|
});
|
|
9942
|
-
(0, hast_util_find_and_replace.findAndReplace)(tree, [
|
|
10067
|
+
(0, hast_util_find_and_replace.findAndReplace)(tree, [mentionsRegex, replace]);
|
|
9943
10068
|
};
|
|
9944
10069
|
return transform;
|
|
9945
10070
|
};
|
|
10071
|
+
var createMentionPluginAndDisplayTextSet = (mentionEntitiesOrUsers) => {
|
|
10072
|
+
const mentionLookup = createMentionLookup(mentionEntitiesOrUsers);
|
|
10073
|
+
return {
|
|
10074
|
+
mentionDisplayTextSet: mentionLookup.mentionDisplayTextSet,
|
|
10075
|
+
plugin: mentionsMarkdownPluginFromLookup(mentionLookup)
|
|
10076
|
+
};
|
|
10077
|
+
};
|
|
10078
|
+
function mentionsMarkdownPlugin(mentionEntitiesOrUsers) {
|
|
10079
|
+
return createMentionPluginAndDisplayTextSet(mentionEntitiesOrUsers).plugin;
|
|
10080
|
+
}
|
|
9946
10081
|
//#endregion
|
|
9947
10082
|
//#region src/components/Message/renderText/remarkPlugins/htmlToTextPlugin.ts
|
|
9948
10083
|
var visitor = (node) => {
|
|
@@ -10125,9 +10260,11 @@ var Emoji = ({ children }) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span",
|
|
|
10125
10260
|
});
|
|
10126
10261
|
//#endregion
|
|
10127
10262
|
//#region src/components/Message/renderText/componentRenderers/Mention.tsx
|
|
10128
|
-
var Mention = ({ children, node: {
|
|
10263
|
+
var Mention = ({ children, node: { mentionedEntity } }) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
10129
10264
|
className: "str-chat__message-mention",
|
|
10130
|
-
"data-
|
|
10265
|
+
"data-mention-id": mentionedEntity.id,
|
|
10266
|
+
"data-mention-type": mentionedEntity.mentionType,
|
|
10267
|
+
"data-user-id": mentionedEntity.mentionType === "user" ? mentionedEntity.id : void 0,
|
|
10131
10268
|
children
|
|
10132
10269
|
});
|
|
10133
10270
|
//#endregion
|
|
@@ -10206,10 +10343,12 @@ var markDownRenderers = {
|
|
|
10206
10343
|
emoji: Emoji,
|
|
10207
10344
|
mention: Mention
|
|
10208
10345
|
};
|
|
10209
|
-
|
|
10346
|
+
function renderText(text, mentionedUsers, { allowedTagNames = defaultAllowedTagNames, customMarkDownRenderers, getRehypePlugins = getPluginsForward, getRemarkPlugins = getPluginsForward, messageMentionEntities } = {}) {
|
|
10210
10347
|
if (!text) return null;
|
|
10211
10348
|
if (text.trim().length === 1) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_jsx_runtime.Fragment, { children: text });
|
|
10212
10349
|
let newText = text;
|
|
10350
|
+
const renderTextMentionEntities = messageMentionEntities ?? getRenderTextMentionEntities({ mentioned_users: mentionedUsers });
|
|
10351
|
+
const { mentionDisplayTextSet, plugin: mentionsPlugin } = createMentionPluginAndDisplayTextSet(renderTextMentionEntities);
|
|
10213
10352
|
const markdownLinks = matchMarkdownLinks(newText);
|
|
10214
10353
|
const codeBlocks = messageCodeBlocks(newText);
|
|
10215
10354
|
const links = [...(0, linkifyjs.find)(newText, "email"), ...(0, linkifyjs.find)(newText, "url")];
|
|
@@ -10223,8 +10362,9 @@ var renderText = (text, mentionedUsers, { allowedTagNames = defaultAllowedTagNam
|
|
|
10223
10362
|
return strippedHref.includes(strippedText) || strippedText.includes(strippedHref);
|
|
10224
10363
|
})).length > 0 || linkIsInBlock) continue;
|
|
10225
10364
|
try {
|
|
10226
|
-
if (type === "email"
|
|
10227
|
-
|
|
10365
|
+
if (type === "email") {
|
|
10366
|
+
const mentionDisplayText = `@${value}`;
|
|
10367
|
+
if (mentionDisplayTextSet.has(mentionDisplayText)) {
|
|
10228
10368
|
const isMention = newText.charAt(start - 1) === "@";
|
|
10229
10369
|
newText = newText.slice(0, start) + (isMention ? value : `[${value}](${encodeDecode(href)})`) + newText.slice(end);
|
|
10230
10370
|
}
|
|
@@ -10242,7 +10382,7 @@ var renderText = (text, mentionedUsers, { allowedTagNames = defaultAllowedTagNam
|
|
|
10242
10382
|
imageToLink
|
|
10243
10383
|
];
|
|
10244
10384
|
const rehypePlugins = [emojiMarkdownPlugin];
|
|
10245
|
-
if (
|
|
10385
|
+
if (renderTextMentionEntities.length) rehypePlugins.push(mentionsPlugin);
|
|
10246
10386
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ErrorBoundary, {
|
|
10247
10387
|
fallback: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_jsx_runtime.Fragment, { children: text }),
|
|
10248
10388
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_markdown.default, {
|
|
@@ -10259,7 +10399,7 @@ var renderText = (text, mentionedUsers, { allowedTagNames = defaultAllowedTagNam
|
|
|
10259
10399
|
children: newText
|
|
10260
10400
|
})
|
|
10261
10401
|
});
|
|
10262
|
-
}
|
|
10402
|
+
}
|
|
10263
10403
|
//#endregion
|
|
10264
10404
|
//#region src/components/Message/MessageText.tsx
|
|
10265
10405
|
var UnMemoizedMessageTextComponent = (props) => {
|
|
@@ -10275,14 +10415,28 @@ var UnMemoizedMessageTextComponent = (props) => {
|
|
|
10275
10415
|
language: userLanguage,
|
|
10276
10416
|
message
|
|
10277
10417
|
}) || message.text;
|
|
10278
|
-
const
|
|
10418
|
+
const renderTextMentionEntities = (0, react.useMemo)(() => getRenderTextMentionEntities({
|
|
10419
|
+
mentioned_channel: message.mentioned_channel,
|
|
10420
|
+
mentioned_groups: message.mentioned_groups,
|
|
10421
|
+
mentioned_here: message.mentioned_here,
|
|
10422
|
+
mentioned_roles: message.mentioned_roles,
|
|
10423
|
+
mentioned_users: message.mentioned_users
|
|
10424
|
+
}), [
|
|
10425
|
+
message.mentioned_channel,
|
|
10426
|
+
message.mentioned_groups,
|
|
10427
|
+
message.mentioned_here,
|
|
10428
|
+
message.mentioned_roles,
|
|
10429
|
+
message.mentioned_users
|
|
10430
|
+
]);
|
|
10431
|
+
const messageText = (0, react.useMemo)(() => renderText$1(messageTextToRender, message.mentioned_users, { messageMentionEntities: renderTextMentionEntities }), [
|
|
10279
10432
|
message.mentioned_users,
|
|
10280
10433
|
messageTextToRender,
|
|
10281
|
-
renderText$1
|
|
10434
|
+
renderText$1,
|
|
10435
|
+
renderTextMentionEntities
|
|
10282
10436
|
]);
|
|
10283
10437
|
const wrapperClass = customWrapperClass || "str-chat__message-text";
|
|
10284
10438
|
const innerClass = customInnerClass;
|
|
10285
|
-
const isMentionsInteractionEnabled = Boolean(
|
|
10439
|
+
const isMentionsInteractionEnabled = Boolean(renderTextMentionEntities.length) && typeof onMentionsClickMessage === "function";
|
|
10286
10440
|
const senderName = message.user?.name;
|
|
10287
10441
|
const messageContext = senderName ? t("aria/Message from {{ user }},", { user: senderName }) : t("aria/Message,");
|
|
10288
10442
|
const messageLabelledBy = `${messageContextId} ${messageTextId}`;
|
|
@@ -12003,7 +12157,7 @@ var GalleryHeader = ({ currentItem }) => {
|
|
|
12003
12157
|
};
|
|
12004
12158
|
//#endregion
|
|
12005
12159
|
//#region src/components/VideoPlayer/VideoPlayer.tsx
|
|
12006
|
-
var ReactPlayer = react.default.lazy(() => Promise.resolve().then(() => require("./ReactPlayerWrapper.
|
|
12160
|
+
var ReactPlayer = react.default.lazy(() => Promise.resolve().then(() => require("./ReactPlayerWrapper.963d6170.js")));
|
|
12007
12161
|
var VideoPlayer = ({ isPlaying, thumbnailUrl, videoUrl }) => {
|
|
12008
12162
|
const { LoadingIndicator: LoadingIndicator$4 = LoadingIndicator, VideoPlayer: VideoPlayerContext } = require_useNotificationApi.useComponentContext();
|
|
12009
12163
|
return VideoPlayerContext ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(VideoPlayerContext, {
|
|
@@ -13825,6 +13979,7 @@ var MediaRecorderController = class {
|
|
|
13825
13979
|
};
|
|
13826
13980
|
this.pause = () => {
|
|
13827
13981
|
if (this.recordingState.value !== "recording") return;
|
|
13982
|
+
if (this.mediaRecorder?.state !== "recording") return;
|
|
13828
13983
|
if (this.startTime) {
|
|
13829
13984
|
this.recordedChunkDurations.push((/* @__PURE__ */ new Date()).getTime() - this.startTime);
|
|
13830
13985
|
this.startTime = void 0;
|
|
@@ -13836,6 +13991,7 @@ var MediaRecorderController = class {
|
|
|
13836
13991
|
};
|
|
13837
13992
|
this.resume = () => {
|
|
13838
13993
|
if (this.recordingState.value !== "paused") return;
|
|
13994
|
+
if (this.mediaRecorder?.state !== "paused") return;
|
|
13839
13995
|
this.startTime = (/* @__PURE__ */ new Date()).getTime();
|
|
13840
13996
|
this.mediaRecorder?.resume();
|
|
13841
13997
|
this.amplitudeRecorder?.start();
|
|
@@ -14199,6 +14355,19 @@ var QuotedMessagePreviewUI = ({ authorLabel, className, getQuotedMessageAuthor,
|
|
|
14199
14355
|
quotedMessage?.text,
|
|
14200
14356
|
userLanguage
|
|
14201
14357
|
]);
|
|
14358
|
+
const quotedMessageMentionEntities = (0, react.useMemo)(() => getRenderTextMentionEntities({
|
|
14359
|
+
mentioned_channel: quotedMessage?.mentioned_channel,
|
|
14360
|
+
mentioned_groups: quotedMessage?.mentioned_groups,
|
|
14361
|
+
mentioned_here: quotedMessage?.mentioned_here,
|
|
14362
|
+
mentioned_roles: quotedMessage?.mentioned_roles,
|
|
14363
|
+
mentioned_users: quotedMessage?.mentioned_users
|
|
14364
|
+
}), [
|
|
14365
|
+
quotedMessage?.mentioned_channel,
|
|
14366
|
+
quotedMessage?.mentioned_groups,
|
|
14367
|
+
quotedMessage?.mentioned_here,
|
|
14368
|
+
quotedMessage?.mentioned_roles,
|
|
14369
|
+
quotedMessage?.mentioned_users
|
|
14370
|
+
]);
|
|
14202
14371
|
const { AttachmentIcon, PreviewImage, renderedText } = (0, react.useMemo)(() => {
|
|
14203
14372
|
if (!quotedMessage) return {
|
|
14204
14373
|
AttachmentIcon: NullAttachmentIcon,
|
|
@@ -14218,7 +14387,7 @@ var QuotedMessagePreviewUI = ({ authorLabel, className, getQuotedMessageAuthor,
|
|
|
14218
14387
|
else if (previewType === "video") renderedText = groupedAttachments.videos.length === 1 ? t("Video") : t("{{ count }} videos", { count: groupedAttachments.videos.length });
|
|
14219
14388
|
else if (previewType === "file") renderedText = groupedAttachments.documents[0].title;
|
|
14220
14389
|
else if (previewType === "image") renderedText = groupedAttachments.images.length === 1 ? t("Photo") : t("{{ count }} photos", { count: groupedAttachments.images.length });
|
|
14221
|
-
} else if (renderText) renderedText = renderText(quotedMessageText, quotedMessage?.mentioned_users);
|
|
14390
|
+
} else if (renderText) renderedText = renderText(quotedMessageText, quotedMessage?.mentioned_users, { messageMentionEntities: quotedMessageMentionEntities });
|
|
14222
14391
|
else renderedText = quotedMessageText;
|
|
14223
14392
|
return {
|
|
14224
14393
|
AttachmentIcon,
|
|
@@ -14228,6 +14397,7 @@ var QuotedMessagePreviewUI = ({ authorLabel, className, getQuotedMessageAuthor,
|
|
|
14228
14397
|
}, [
|
|
14229
14398
|
giphyVersionName,
|
|
14230
14399
|
quotedMessage,
|
|
14400
|
+
quotedMessageMentionEntities,
|
|
14231
14401
|
quotedMessageText,
|
|
14232
14402
|
renderText,
|
|
14233
14403
|
t
|
|
@@ -17714,6 +17884,215 @@ var EmoticonItem = (props) => {
|
|
|
17714
17884
|
});
|
|
17715
17885
|
};
|
|
17716
17886
|
//#endregion
|
|
17887
|
+
//#region src/components/ListItemLayout/ListItemLayout.tsx
|
|
17888
|
+
var ListItemLayout = ({ ContentSlot = ListItemLayoutContent, contentClassName, description, descriptionClassName, destructive, LeadingIcon, LeadingSlot, RootElement, rootProps, selected, subtitle, subtitleClassName, title, titleClassName, TrailingIcon, TrailingSlot }) => {
|
|
17889
|
+
const ContainerComponent = RootElement ?? "div";
|
|
17890
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
17891
|
+
className: "str-chat__list-item-layout",
|
|
17892
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(ContainerComponent, {
|
|
17893
|
+
...ContainerComponent === "button" ? { type: "button" } : void 0,
|
|
17894
|
+
...rootProps,
|
|
17895
|
+
className: (0, clsx.default)("str-chat__list-item-layout__container", rootProps?.className, destructive && "str-chat__list-item-layout__container--destructive", selected && "str-chat__list-item-layout__container--selected"),
|
|
17896
|
+
children: [
|
|
17897
|
+
LeadingIcon && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
17898
|
+
className: "str-chat__list-item-layout__leading-icon",
|
|
17899
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(LeadingIcon, {})
|
|
17900
|
+
}),
|
|
17901
|
+
LeadingSlot && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(LeadingSlot, {}),
|
|
17902
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)(ContentSlot, {
|
|
17903
|
+
className: contentClassName,
|
|
17904
|
+
description,
|
|
17905
|
+
descriptionClassName,
|
|
17906
|
+
subtitle,
|
|
17907
|
+
subtitleClassName,
|
|
17908
|
+
title,
|
|
17909
|
+
titleClassName
|
|
17910
|
+
}),
|
|
17911
|
+
TrailingIcon && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
17912
|
+
className: "str-chat__list-item-layout__trailing-icon",
|
|
17913
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TrailingIcon, {})
|
|
17914
|
+
}),
|
|
17915
|
+
TrailingSlot && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TrailingSlot, {})
|
|
17916
|
+
]
|
|
17917
|
+
})
|
|
17918
|
+
});
|
|
17919
|
+
};
|
|
17920
|
+
var ListItemLayoutContent = ({ className, description, descriptionClassName, subtitle, subtitleClassName, title, titleClassName, ...props }) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
17921
|
+
...props,
|
|
17922
|
+
className: (0, clsx.default)("str-chat__list-item-layout__content", className, {
|
|
17923
|
+
"str-chat__list-item-layout__content--withDescription": description,
|
|
17924
|
+
"str-chat__list-item-layout__content--withSubtitle": subtitle,
|
|
17925
|
+
"str-chat__list-item-layout__content--withTitle": title
|
|
17926
|
+
}),
|
|
17927
|
+
children: [
|
|
17928
|
+
title && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
17929
|
+
className: (0, clsx.default)("str-chat__list-item-layout__title", titleClassName),
|
|
17930
|
+
children: title
|
|
17931
|
+
}),
|
|
17932
|
+
subtitle && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
17933
|
+
className: (0, clsx.default)("str-chat__list-item-layout__subtitle", subtitleClassName),
|
|
17934
|
+
children: subtitle
|
|
17935
|
+
}),
|
|
17936
|
+
description && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
17937
|
+
className: (0, clsx.default)("str-chat__list-item-layout__description", descriptionClassName),
|
|
17938
|
+
children: description
|
|
17939
|
+
})
|
|
17940
|
+
]
|
|
17941
|
+
});
|
|
17942
|
+
//#endregion
|
|
17943
|
+
//#region src/components/TextareaComposer/SuggestionList/MentionItem/MentionSuggestionTitle.tsx
|
|
17944
|
+
var MentionSuggestionTitle = ({ children }) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: ["@", children] });
|
|
17945
|
+
//#endregion
|
|
17946
|
+
//#region src/components/TextareaComposer/SuggestionList/MentionItem/BroadcastMentionItem.tsx
|
|
17947
|
+
var BroadcastMentionItem = ({ entity, focused, ...buttonProps }) => {
|
|
17948
|
+
const { t } = require_useNotificationApi.useTranslationContext();
|
|
17949
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ListItemLayout, {
|
|
17950
|
+
contentClassName: "str-chat__suggestion-list__item-content",
|
|
17951
|
+
description: entity.mentionType === "channel" ? t("mention/Channel Description") : t("mention/Here Description"),
|
|
17952
|
+
descriptionClassName: "str-chat__suggestion-list__item-details",
|
|
17953
|
+
LeadingIcon: require_useNotificationApi.IconMegaphone,
|
|
17954
|
+
RootElement: "button",
|
|
17955
|
+
rootProps: {
|
|
17956
|
+
...buttonProps,
|
|
17957
|
+
className: (0, clsx.default)("str-chat__context-menu__button", buttonProps.className, "str-chat__suggestion-list__mention"),
|
|
17958
|
+
role: buttonProps.role ?? "menuitem",
|
|
17959
|
+
title: `@${entity.name}`
|
|
17960
|
+
},
|
|
17961
|
+
selected: focused,
|
|
17962
|
+
title: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(MentionSuggestionTitle, { children: entity.name }),
|
|
17963
|
+
titleClassName: "str-chat__suggestion-list__item-title str-chat__suggestion-list__mention-item-title"
|
|
17964
|
+
});
|
|
17965
|
+
};
|
|
17966
|
+
//#endregion
|
|
17967
|
+
//#region src/components/TextareaComposer/SuggestionList/TokenizedSuggestionParts.tsx
|
|
17968
|
+
var HTML_SPACE = "\xA0";
|
|
17969
|
+
var isWhitespace = (char) => char.trim() === "";
|
|
17970
|
+
var replaceBoundaryWhitespaceWithHTMLSpace = (part) => {
|
|
17971
|
+
if (!part) return part;
|
|
17972
|
+
let startIndex = 0;
|
|
17973
|
+
while (startIndex < part.length && isWhitespace(part[startIndex])) startIndex += 1;
|
|
17974
|
+
if (startIndex === part.length) return HTML_SPACE;
|
|
17975
|
+
let endIndex = part.length - 1;
|
|
17976
|
+
while (endIndex >= startIndex && isWhitespace(part[endIndex])) endIndex -= 1;
|
|
17977
|
+
return `${startIndex > 0 ? HTML_SPACE : ""}${part.slice(startIndex, endIndex + 1)}${endIndex < part.length - 1 ? HTML_SPACE : ""}`;
|
|
17978
|
+
};
|
|
17979
|
+
var TokenizedSuggestionParts = ({ tokenizedDisplayName }) => tokenizedDisplayName.parts.map((part, i) => {
|
|
17980
|
+
const matches = part.toLowerCase() === tokenizedDisplayName.token;
|
|
17981
|
+
const partWithHTMLSpacesAround = replaceBoundaryWhitespaceWithHTMLSpace(part);
|
|
17982
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
17983
|
+
className: (0, clsx.default)({
|
|
17984
|
+
"str-chat__emoji-item-part": !matches,
|
|
17985
|
+
"str-chat__suggestion-item-part--match": matches
|
|
17986
|
+
}),
|
|
17987
|
+
children: partWithHTMLSpacesAround
|
|
17988
|
+
}, `part-${i}`);
|
|
17989
|
+
});
|
|
17990
|
+
//#endregion
|
|
17991
|
+
//#region src/components/TextareaComposer/SuggestionList/MentionItem/RoleItem.tsx
|
|
17992
|
+
var RoleItem = ({ entity, focused, ...buttonProps }) => {
|
|
17993
|
+
const { t } = require_useNotificationApi.useTranslationContext();
|
|
17994
|
+
const role = entity.name;
|
|
17995
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ListItemLayout, {
|
|
17996
|
+
contentClassName: "str-chat__suggestion-list__item-content",
|
|
17997
|
+
LeadingIcon: require_useNotificationApi.IconShield,
|
|
17998
|
+
RootElement: "button",
|
|
17999
|
+
rootProps: {
|
|
18000
|
+
...buttonProps,
|
|
18001
|
+
className: (0, clsx.default)("str-chat__context-menu__button", buttonProps.className, "str-chat__suggestion-list__mention"),
|
|
18002
|
+
role: buttonProps.role ?? "menuitem",
|
|
18003
|
+
title: `@${role}`
|
|
18004
|
+
},
|
|
18005
|
+
selected: focused,
|
|
18006
|
+
subtitle: t("Notify all {{ role }} members", { role }),
|
|
18007
|
+
subtitleClassName: "str-chat__suggestion-list__item-details",
|
|
18008
|
+
title: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(MentionSuggestionTitle, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TokenizedSuggestionParts, { tokenizedDisplayName: entity.tokenizedDisplayName }) }),
|
|
18009
|
+
titleClassName: "str-chat__suggestion-list__item-title str-chat__suggestion-list__mention-item-title"
|
|
18010
|
+
});
|
|
18011
|
+
};
|
|
18012
|
+
//#endregion
|
|
18013
|
+
//#region src/components/TextareaComposer/SuggestionList/MentionItem/SpecialMentionItem.tsx
|
|
18014
|
+
var SpecialMentionItem = () => null;
|
|
18015
|
+
//#endregion
|
|
18016
|
+
//#region src/components/TextareaComposer/SuggestionList/MentionItem/UserGroupItem.tsx
|
|
18017
|
+
var UserGroupItem = ({ entity, focused, ...buttonProps }) => {
|
|
18018
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ListItemLayout, {
|
|
18019
|
+
contentClassName: "str-chat__suggestion-list__item-content",
|
|
18020
|
+
LeadingIcon: require_useNotificationApi.IconUsers,
|
|
18021
|
+
RootElement: "button",
|
|
18022
|
+
rootProps: {
|
|
18023
|
+
...buttonProps,
|
|
18024
|
+
className: (0, clsx.default)("str-chat__context-menu__button", buttonProps.className, "str-chat__suggestion-list__mention"),
|
|
18025
|
+
role: buttonProps.role ?? "menuitem",
|
|
18026
|
+
title: `@${entity.name}`
|
|
18027
|
+
},
|
|
18028
|
+
selected: focused,
|
|
18029
|
+
subtitle: entity.description,
|
|
18030
|
+
subtitleClassName: "str-chat__suggestion-list__item-details",
|
|
18031
|
+
title: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(MentionSuggestionTitle, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TokenizedSuggestionParts, { tokenizedDisplayName: entity.tokenizedDisplayName }) }),
|
|
18032
|
+
titleClassName: "str-chat__suggestion-list__item-title str-chat__suggestion-list__mention-item-title"
|
|
18033
|
+
});
|
|
18034
|
+
};
|
|
18035
|
+
//#endregion
|
|
18036
|
+
//#region src/components/TextareaComposer/SuggestionList/MentionItem/UserItem.tsx
|
|
18037
|
+
/**
|
|
18038
|
+
* UI component for mentions rendered in suggestion list
|
|
18039
|
+
*/
|
|
18040
|
+
var UserItem = ({ entity, focused, ...buttonProps }) => {
|
|
18041
|
+
const hasEntity = !!Object.keys(entity).length;
|
|
18042
|
+
const titleAttribute = entity.name || entity.id || "";
|
|
18043
|
+
const LeadingSlot = (0, react.useMemo)(() => function UserItemAvatar() {
|
|
18044
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Avatar, {
|
|
18045
|
+
imageUrl: entity.image,
|
|
18046
|
+
size: "md",
|
|
18047
|
+
userName: titleAttribute
|
|
18048
|
+
});
|
|
18049
|
+
}, [entity.image, titleAttribute]);
|
|
18050
|
+
if (!hasEntity) return null;
|
|
18051
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ListItemLayout, {
|
|
18052
|
+
contentClassName: "str-chat__context-menu__button__label",
|
|
18053
|
+
LeadingSlot,
|
|
18054
|
+
RootElement: "button",
|
|
18055
|
+
rootProps: {
|
|
18056
|
+
...buttonProps,
|
|
18057
|
+
className: (0, clsx.default)("str-chat__context-menu__button", "str-chat__user-context-menu__button", buttonProps.className, "str-chat__suggestion-list__mention"),
|
|
18058
|
+
role: buttonProps.role ?? "menuitem",
|
|
18059
|
+
title: titleAttribute
|
|
18060
|
+
},
|
|
18061
|
+
selected: focused,
|
|
18062
|
+
title: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TokenizedSuggestionParts, { tokenizedDisplayName: entity.tokenizedDisplayName }),
|
|
18063
|
+
titleClassName: "str-chat__suggestion-list__mention-item-title"
|
|
18064
|
+
});
|
|
18065
|
+
};
|
|
18066
|
+
//#endregion
|
|
18067
|
+
//#region src/components/TextareaComposer/SuggestionList/MentionItem/MentionItem.tsx
|
|
18068
|
+
var MentionItem = ({ BroadcastMentionItem: BroadcastMentionItem$1 = BroadcastMentionItem, entity, focused, RoleItem: RoleItem$1 = RoleItem, SpecialMentionItem: SpecialMentionItem$1 = SpecialMentionItem, UserGroupItem: UserGroupItem$1 = UserGroupItem, UserItem: UserItem$1 = UserItem, ...buttonProps }) => {
|
|
18069
|
+
if (entity.mentionType === "user") return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(UserItem$1, {
|
|
18070
|
+
...buttonProps,
|
|
18071
|
+
entity,
|
|
18072
|
+
focused
|
|
18073
|
+
});
|
|
18074
|
+
if (entity.mentionType === "role") return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(RoleItem$1, {
|
|
18075
|
+
...buttonProps,
|
|
18076
|
+
entity,
|
|
18077
|
+
focused
|
|
18078
|
+
});
|
|
18079
|
+
if (entity.mentionType === "user_group") return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(UserGroupItem$1, {
|
|
18080
|
+
...buttonProps,
|
|
18081
|
+
entity,
|
|
18082
|
+
focused
|
|
18083
|
+
});
|
|
18084
|
+
if (entity.mentionType === "channel" || entity.mentionType === "here") return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(BroadcastMentionItem$1, {
|
|
18085
|
+
...buttonProps,
|
|
18086
|
+
entity,
|
|
18087
|
+
focused
|
|
18088
|
+
});
|
|
18089
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(SpecialMentionItem$1, {
|
|
18090
|
+
...buttonProps,
|
|
18091
|
+
entity,
|
|
18092
|
+
focused
|
|
18093
|
+
});
|
|
18094
|
+
};
|
|
18095
|
+
//#endregion
|
|
17717
18096
|
//#region src/components/TextareaComposer/SuggestionList/SuggestionListItem.tsx
|
|
17718
18097
|
var SuggestionListItem = ({ className, component: Component, focused, item, onClick, onKeyDown, onMouseEnter, ...restProps }) => {
|
|
17719
18098
|
const { textComposer } = require_useNotificationApi.useMessageComposerController();
|
|
@@ -17752,33 +18131,6 @@ var SuggestionListItem = ({ className, component: Component, focused, item, onCl
|
|
|
17752
18131
|
});
|
|
17753
18132
|
};
|
|
17754
18133
|
//#endregion
|
|
17755
|
-
//#region src/components/TextareaComposer/SuggestionList/UserItem.tsx
|
|
17756
|
-
/**
|
|
17757
|
-
* UI component for mentions rendered in suggestion list
|
|
17758
|
-
*/
|
|
17759
|
-
var UserItem = ({ entity, focused: _, ...buttonProps }) => {
|
|
17760
|
-
if (!!!Object.keys(entity).length) return null;
|
|
17761
|
-
const { parts, token } = entity.tokenizedDisplayName;
|
|
17762
|
-
const renderName = () => parts.map((part, i) => {
|
|
17763
|
-
const matches = part.toLowerCase() === token;
|
|
17764
|
-
const partWithHTMLSpacesAround = part.replace(/^\s+|\s+$/g, "\xA0");
|
|
17765
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
17766
|
-
className: (0, clsx.default)({
|
|
17767
|
-
"str-chat__emoji-item-part": !matches,
|
|
17768
|
-
"str-chat__suggestion-item-part--match": matches
|
|
17769
|
-
}),
|
|
17770
|
-
children: partWithHTMLSpacesAround
|
|
17771
|
-
}, `part-${i}`);
|
|
17772
|
-
});
|
|
17773
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(UserContextMenuButton, {
|
|
17774
|
-
...buttonProps,
|
|
17775
|
-
imageUrl: entity.image,
|
|
17776
|
-
title: entity.name || entity.id,
|
|
17777
|
-
userName: entity.name || entity.id,
|
|
17778
|
-
children: renderName()
|
|
17779
|
-
});
|
|
17780
|
-
};
|
|
17781
|
-
//#endregion
|
|
17782
18134
|
//#region src/utils/getTextareaCaretRect.ts
|
|
17783
18135
|
var CARET_MIRROR_CLASS = "str-chat__textarea-caret-mirror";
|
|
17784
18136
|
var CARET_MARKER_CLASS = "str-chat__textarea-caret-marker";
|
|
@@ -17836,7 +18188,7 @@ var defaultComponents = {
|
|
|
17836
18188
|
...props,
|
|
17837
18189
|
entity: props.entity
|
|
17838
18190
|
}),
|
|
17839
|
-
"@": (props) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
18191
|
+
"@": (props) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(MentionItem, {
|
|
17840
18192
|
...props,
|
|
17841
18193
|
entity: props.entity
|
|
17842
18194
|
})
|
|
@@ -17932,7 +18284,7 @@ var SuggestionList = ({ className, closeOnClickOutside = true, containerClassNam
|
|
|
17932
18284
|
virtualCaretReference
|
|
17933
18285
|
]);
|
|
17934
18286
|
if (!suggestions || !items?.length || !component || !hasEnabledCommandSuggestions) return null;
|
|
17935
|
-
const suggestionMenuLabel = suggestions.searchSource.type === "commands" ? t("aria/Command Suggestions") : suggestions.searchSource.type === "emojis" ? t("aria/Emoji Suggestions") : suggestions.searchSource.type === "mentions" ? t("aria/
|
|
18287
|
+
const suggestionMenuLabel = suggestions.searchSource.type === "commands" ? t("aria/Command Suggestions") : suggestions.searchSource.type === "emojis" ? t("aria/Emoji Suggestions") : suggestions.searchSource.type === "mentions" ? t("aria/Mention Suggestions") : t("aria/Suggestions");
|
|
17936
18288
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
17937
18289
|
className: (0, clsx.default)("str-chat__suggestion-list-container", containerClassName),
|
|
17938
18290
|
ref: setContainer,
|
|
@@ -18055,14 +18407,14 @@ var TextareaComposer = ({ className, closeSuggestionsOnClickOutside, containerCl
|
|
|
18055
18407
|
const loadedItems = textComposer.suggestions.searchSource.items;
|
|
18056
18408
|
if (event.key === "Enter") {
|
|
18057
18409
|
event.preventDefault();
|
|
18058
|
-
|
|
18410
|
+
const selectedItem = loadedItems[focusedItemIndex];
|
|
18411
|
+
if (selectedItem) textComposer.handleSelect(selectedItem);
|
|
18059
18412
|
}
|
|
18060
18413
|
if (event.key === "ArrowUp") {
|
|
18061
18414
|
event.preventDefault();
|
|
18062
18415
|
setFocusedItemIndex((prev) => {
|
|
18063
18416
|
let nextIndex = prev - 1;
|
|
18064
|
-
if (
|
|
18065
|
-
else if (nextIndex < 0) nextIndex = loadedItems.length - 1;
|
|
18417
|
+
if (nextIndex < 0) nextIndex = loadedItems.length - 1;
|
|
18066
18418
|
return nextIndex;
|
|
18067
18419
|
});
|
|
18068
18420
|
}
|
|
@@ -18070,8 +18422,7 @@ var TextareaComposer = ({ className, closeSuggestionsOnClickOutside, containerCl
|
|
|
18070
18422
|
event.preventDefault();
|
|
18071
18423
|
setFocusedItemIndex((prev) => {
|
|
18072
18424
|
let nextIndex = prev + 1;
|
|
18073
|
-
if (
|
|
18074
|
-
else if (nextIndex >= loadedItems.length) nextIndex = 0;
|
|
18425
|
+
if (nextIndex >= loadedItems.length) nextIndex = 0;
|
|
18075
18426
|
return nextIndex;
|
|
18076
18427
|
});
|
|
18077
18428
|
}
|
|
@@ -18088,7 +18439,6 @@ var TextareaComposer = ({ className, closeSuggestionsOnClickOutside, containerCl
|
|
|
18088
18439
|
messageComposer,
|
|
18089
18440
|
onKeyDown,
|
|
18090
18441
|
shouldSubmit,
|
|
18091
|
-
suggestions,
|
|
18092
18442
|
textComposer,
|
|
18093
18443
|
textareaRef
|
|
18094
18444
|
]);
|
|
@@ -18106,6 +18456,11 @@ var TextareaComposer = ({ className, closeSuggestionsOnClickOutside, containerCl
|
|
|
18106
18456
|
(0, react.useEffect)(() => {
|
|
18107
18457
|
if (textComposer.suggestions) setFocusedItemIndex(0);
|
|
18108
18458
|
}, [textComposer.suggestions]);
|
|
18459
|
+
(0, react.useEffect)(() => {
|
|
18460
|
+
const suggestionItems = suggestions?.searchSource.items;
|
|
18461
|
+
if (!suggestionItems?.length) return;
|
|
18462
|
+
setFocusedItemIndex((prev) => prev >= suggestionItems.length ? suggestionItems.length - 1 : prev);
|
|
18463
|
+
}, [suggestions?.searchSource.items]);
|
|
18109
18464
|
(0, react.useEffect)(() => {
|
|
18110
18465
|
const textareaIsFocused = textareaRef.current?.matches(":focus");
|
|
18111
18466
|
if (!textareaRef.current || textareaIsFocused || !focus) return;
|
|
@@ -25951,7 +26306,7 @@ var useChat = ({ client, defaultLanguage = "en", i18nInstance }) => {
|
|
|
25951
26306
|
};
|
|
25952
26307
|
(0, react.useEffect)(() => {
|
|
25953
26308
|
if (!client) return;
|
|
25954
|
-
const version = "14.
|
|
26309
|
+
const version = "14.5.0";
|
|
25955
26310
|
const userAgent = client.getUserAgent();
|
|
25956
26311
|
if (!userAgent.includes("stream-chat-react")) client.setUserAgent(`stream-chat-react-${version}-${userAgent}`);
|
|
25957
26312
|
client.threads.registerSubscriptions();
|
|
@@ -26238,6 +26593,7 @@ exports.Badge = Badge;
|
|
|
26238
26593
|
exports.BaseContextMenuButton = BaseContextMenuButton;
|
|
26239
26594
|
exports.BaseImage = BaseImage;
|
|
26240
26595
|
exports.BinIcon = BinIcon;
|
|
26596
|
+
exports.BroadcastMentionItem = BroadcastMentionItem;
|
|
26241
26597
|
exports.Button = require_useNotificationApi.Button;
|
|
26242
26598
|
exports.Callout = Callout;
|
|
26243
26599
|
exports.Card = Card;
|
|
@@ -26360,6 +26716,7 @@ exports.IconLeave = require_useNotificationApi.IconLeave;
|
|
|
26360
26716
|
exports.IconLink = require_useNotificationApi.IconLink;
|
|
26361
26717
|
exports.IconLoading = require_useNotificationApi.IconLoading;
|
|
26362
26718
|
exports.IconLocation = require_useNotificationApi.IconLocation;
|
|
26719
|
+
exports.IconMegaphone = require_useNotificationApi.IconMegaphone;
|
|
26363
26720
|
exports.IconMessageBubble = require_useNotificationApi.IconMessageBubble;
|
|
26364
26721
|
exports.IconMessageBubbleFill = require_useNotificationApi.IconMessageBubbleFill;
|
|
26365
26722
|
exports.IconMessageBubbles = require_useNotificationApi.IconMessageBubbles;
|
|
@@ -26383,6 +26740,7 @@ exports.IconReply = require_useNotificationApi.IconReply;
|
|
|
26383
26740
|
exports.IconRetry = require_useNotificationApi.IconRetry;
|
|
26384
26741
|
exports.IconSearch = require_useNotificationApi.IconSearch;
|
|
26385
26742
|
exports.IconSend = require_useNotificationApi.IconSend;
|
|
26743
|
+
exports.IconShield = require_useNotificationApi.IconShield;
|
|
26386
26744
|
exports.IconThread = require_useNotificationApi.IconThread;
|
|
26387
26745
|
exports.IconThreadFill = require_useNotificationApi.IconThreadFill;
|
|
26388
26746
|
exports.IconTranslate = require_useNotificationApi.IconTranslate;
|
|
@@ -26394,6 +26752,7 @@ exports.IconUser = require_useNotificationApi.IconUser;
|
|
|
26394
26752
|
exports.IconUserAdd = require_useNotificationApi.IconUserAdd;
|
|
26395
26753
|
exports.IconUserCheck = require_useNotificationApi.IconUserCheck;
|
|
26396
26754
|
exports.IconUserRemove = require_useNotificationApi.IconUserRemove;
|
|
26755
|
+
exports.IconUsers = require_useNotificationApi.IconUsers;
|
|
26397
26756
|
exports.IconVideo = require_useNotificationApi.IconVideo;
|
|
26398
26757
|
exports.IconVideoFill = require_useNotificationApi.IconVideoFill;
|
|
26399
26758
|
exports.IconVoice = require_useNotificationApi.IconVoice;
|
|
@@ -26406,6 +26765,8 @@ exports.ImagePlaceholder = ImagePlaceholder;
|
|
|
26406
26765
|
exports.InfiniteScroll = InfiniteScroll;
|
|
26407
26766
|
exports.LinkPreviewCard = LinkPreviewCard;
|
|
26408
26767
|
exports.LinkPreviewList = LinkPreviewList;
|
|
26768
|
+
exports.ListItemLayout = ListItemLayout;
|
|
26769
|
+
exports.ListItemLayoutContent = ListItemLayoutContent;
|
|
26409
26770
|
exports.LoadMoreButton = LoadMoreButton;
|
|
26410
26771
|
exports.LoadMorePaginator = LoadMorePaginator;
|
|
26411
26772
|
exports.LoadingChannel = require_useNotificationApi.LoadingChannel;
|
|
@@ -26416,6 +26777,7 @@ exports.MAX_MESSAGE_REACTIONS_TO_FETCH = MAX_MESSAGE_REACTIONS_TO_FETCH;
|
|
|
26416
26777
|
exports.MESSAGE_ACTIONS = require_useNotificationApi.MESSAGE_ACTIONS;
|
|
26417
26778
|
exports.MediaContainer = MediaContainer;
|
|
26418
26779
|
exports.MediaRecordingState = MediaRecordingState;
|
|
26780
|
+
exports.MentionItem = MentionItem;
|
|
26419
26781
|
exports.Message = Message;
|
|
26420
26782
|
exports.MessageActions = MessageActions;
|
|
26421
26783
|
exports.MessageAlsoSentInChannelIndicator = MessageAlsoSentInChannelIndicator;
|
|
@@ -26492,6 +26854,7 @@ exports.RecordingPermission = RecordingPermission;
|
|
|
26492
26854
|
exports.RecordingPermissionDeniedNotification = RecordingPermissionDeniedNotification;
|
|
26493
26855
|
exports.RecordingTimer = RecordingTimer;
|
|
26494
26856
|
exports.ReminderNotification = ReminderNotification;
|
|
26857
|
+
exports.RoleItem = RoleItem;
|
|
26495
26858
|
exports.Root = Root;
|
|
26496
26859
|
exports.SUPPORTED_VIDEO_FORMATS = SUPPORTED_VIDEO_FORMATS;
|
|
26497
26860
|
exports.SYSTEM_NOTIFICATION_TAG = require_useNotificationApi.SYSTEM_NOTIFICATION_TAG;
|
|
@@ -26515,6 +26878,7 @@ exports.SendButton = SendButton;
|
|
|
26515
26878
|
exports.ShareLocationDialog = ShareLocationDialog;
|
|
26516
26879
|
exports.SimpleAttachmentSelector = SimpleAttachmentSelector;
|
|
26517
26880
|
exports.SkipNavigation = SkipNavigation;
|
|
26881
|
+
exports.SpecialMentionItem = SpecialMentionItem;
|
|
26518
26882
|
exports.SpriteImage = SpriteImage;
|
|
26519
26883
|
exports.StartRecordingAudioButton = DefaultStartRecordingAudioButton;
|
|
26520
26884
|
exports.StreamedMessageText = StreamedMessageText;
|
|
@@ -26537,6 +26901,7 @@ exports.ThreadListItem = ThreadListItem;
|
|
|
26537
26901
|
exports.ThreadListItemUI = ThreadListItemUI;
|
|
26538
26902
|
exports.ThreadProvider = require_useNotificationApi.ThreadProvider;
|
|
26539
26903
|
exports.ThreadStart = ThreadStart;
|
|
26904
|
+
exports.TokenizedSuggestionParts = TokenizedSuggestionParts;
|
|
26540
26905
|
exports.Tooltip = Tooltip;
|
|
26541
26906
|
exports.TranslationBuilder = TranslationBuilder;
|
|
26542
26907
|
exports.TranslationContext = require_useNotificationApi.TranslationContext;
|
|
@@ -26556,6 +26921,7 @@ exports.UploadIcon = UploadIcon;
|
|
|
26556
26921
|
exports.UploadProgressIndicator = UploadProgressIndicator;
|
|
26557
26922
|
exports.UploadedSizeIndicator = UploadedSizeIndicator;
|
|
26558
26923
|
exports.UserContextMenuButton = UserContextMenuButton;
|
|
26924
|
+
exports.UserGroupItem = UserGroupItem;
|
|
26559
26925
|
exports.UserItem = UserItem;
|
|
26560
26926
|
exports.UserSearchResultItem = UserSearchResultItem;
|
|
26561
26927
|
exports.VideoContainer = VideoContainer;
|
|
@@ -26576,6 +26942,7 @@ exports.areMessageUIPropsEqual = require_useNotificationApi.areMessageUIPropsEqu
|
|
|
26576
26942
|
exports.countEmojis = require_useNotificationApi.countEmojis;
|
|
26577
26943
|
exports.createDefaultPickNext = createDefaultPickNext;
|
|
26578
26944
|
exports.createIcon = require_useNotificationApi.createIcon;
|
|
26945
|
+
exports.createMentionPluginAndDisplayTextSet = createMentionPluginAndDisplayTextSet;
|
|
26579
26946
|
exports.deTranslations = de_default;
|
|
26580
26947
|
exports.defaultAllowedTagNames = defaultAllowedTagNames;
|
|
26581
26948
|
exports.defaultAttachmentActionsDefaultFocus = defaultAttachmentActionsDefaultFocus;
|
|
@@ -26611,12 +26978,14 @@ exports.getImages = require_useNotificationApi.getImages;
|
|
|
26611
26978
|
exports.getIsFirstUnreadMessage = require_useNotificationApi.getIsFirstUnreadMessage;
|
|
26612
26979
|
exports.getLastReceived = require_useNotificationApi.getLastReceived;
|
|
26613
26980
|
exports.getLatestMessagePreview = getLatestMessagePreview;
|
|
26981
|
+
exports.getMentionDisplayTexts = getMentionDisplayTexts;
|
|
26614
26982
|
exports.getMessageActions = require_useNotificationApi.getMessageActions;
|
|
26615
26983
|
exports.getNonImageAttachments = require_useNotificationApi.getNonImageAttachments;
|
|
26616
26984
|
exports.getNotificationTargetPanel = require_useNotificationApi.getNotificationTargetPanel;
|
|
26617
26985
|
exports.getNotificationTargetPanels = require_useNotificationApi.getNotificationTargetPanels;
|
|
26618
26986
|
exports.getNotificationTargetTag = require_useNotificationApi.getNotificationTargetTag;
|
|
26619
26987
|
exports.getReadByTooltipText = require_useNotificationApi.getReadByTooltipText;
|
|
26988
|
+
exports.getRenderTextMentionEntities = getRenderTextMentionEntities;
|
|
26620
26989
|
exports.getTextareaCaretRect = getTextareaCaretRect;
|
|
26621
26990
|
exports.getTranslatedMessageText = getTranslatedMessageText;
|
|
26622
26991
|
exports.getWholeChar = getWholeChar;
|
|
@@ -26661,6 +27030,7 @@ exports.mapToUserNameOrId = require_useNotificationApi.mapToUserNameOrId;
|
|
|
26661
27030
|
exports.markDownRenderers = markDownRenderers;
|
|
26662
27031
|
exports.matchMarkdownLinks = matchMarkdownLinks;
|
|
26663
27032
|
exports.mentionsMarkdownPlugin = mentionsMarkdownPlugin;
|
|
27033
|
+
exports.mentionsMarkdownPluginFromLookup = mentionsMarkdownPluginFromLookup;
|
|
26664
27034
|
exports.messageCodeBlocks = messageCodeBlocks;
|
|
26665
27035
|
exports.messageHasAttachments = require_useNotificationApi.messageHasAttachments;
|
|
26666
27036
|
exports.messageHasGiphyAttachment = require_useNotificationApi.messageHasGiphyAttachment;
|