@droppii-org/chat-mobile 0.2.10 → 0.2.12
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/lib/module/components/messages/linkMessage/index.js +35 -7
- package/lib/module/components/messages/linkMessage/index.js.map +1 -1
- package/lib/module/hooks/useLinkPreview/useFetchUrlMetadata.js +4 -1
- package/lib/module/hooks/useLinkPreview/useFetchUrlMetadata.js.map +1 -1
- package/lib/module/hooks/useLinkPreview/useLinkPreview.js +2 -2
- package/lib/module/hooks/useLinkPreview/useLinkPreview.js.map +1 -1
- package/lib/module/screens/chat-detail/ChatComposer.js +1 -1
- package/lib/module/screens/chat-detail/ChatComposer.js.map +1 -1
- package/lib/module/screens/chat-detail/ChatDetail.js +5 -4
- package/lib/module/screens/chat-detail/ChatDetail.js.map +1 -1
- package/lib/module/screens/chat-detail/ChatListLegend.js +5 -3
- package/lib/module/screens/chat-detail/ChatListLegend.js.map +1 -1
- package/lib/module/screens/chat-detail/legend/LegendChatMessage.js +6 -1
- package/lib/module/screens/chat-detail/legend/LegendChatMessage.js.map +1 -1
- package/lib/module/utils/url.js +12 -1
- package/lib/module/utils/url.js.map +1 -1
- package/lib/typescript/src/components/messages/linkMessage/index.d.ts +2 -1
- package/lib/typescript/src/components/messages/linkMessage/index.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useLinkPreview/useFetchUrlMetadata.d.ts +6 -2
- package/lib/typescript/src/hooks/useLinkPreview/useFetchUrlMetadata.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useLinkPreview/useLinkPreview.d.ts +6 -1
- package/lib/typescript/src/hooks/useLinkPreview/useLinkPreview.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +1 -0
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/screens/chat-detail/ChatComposer.d.ts.map +1 -1
- package/lib/typescript/src/screens/chat-detail/ChatDetail.d.ts +1 -1
- package/lib/typescript/src/screens/chat-detail/ChatDetail.d.ts.map +1 -1
- package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts +1 -1
- package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts.map +1 -1
- package/lib/typescript/src/screens/chat-detail/legend/LegendChatMessage.d.ts +2 -1
- package/lib/typescript/src/screens/chat-detail/legend/LegendChatMessage.d.ts.map +1 -1
- package/lib/typescript/src/screens/chat-detail/types.d.ts +4 -10
- package/lib/typescript/src/screens/chat-detail/types.d.ts.map +1 -1
- package/lib/typescript/src/utils/url.d.ts.map +1 -1
- package/package.json +14 -11
- package/src/components/messages/linkMessage/index.tsx +48 -8
- package/src/hooks/useLinkPreview/useFetchUrlMetadata.ts +6 -1
- package/src/hooks/useLinkPreview/useLinkPreview.ts +2 -2
- package/src/index.tsx +1 -0
- package/src/screens/chat-detail/ChatComposer.tsx +2 -1
- package/src/screens/chat-detail/ChatDetail.tsx +3 -2
- package/src/screens/chat-detail/ChatListLegend.tsx +3 -0
- package/src/screens/chat-detail/legend/LegendChatMessage.tsx +7 -0
- package/src/screens/chat-detail/types.ts +8 -10
- package/src/utils/url.ts +30 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { memo } from 'react';
|
|
4
|
-
import {
|
|
4
|
+
import { StyleSheet } from 'react-native';
|
|
5
5
|
import { KContainer, KImage, KLabel, KColors, KSpacingValue } from '@droppii/libs';
|
|
6
6
|
import { formatMessageTime } from "../types.js";
|
|
7
7
|
import { CHAT_BUBBLE_COLORS } from "../../../screens/chat-detail/constants.js";
|
|
@@ -11,28 +11,56 @@ const parseUrlMetadata = ex => {
|
|
|
11
11
|
try {
|
|
12
12
|
const parsed = JSON.parse(ex);
|
|
13
13
|
// Handle nested urlMetadata structure
|
|
14
|
-
return parsed
|
|
14
|
+
return parsed?.urlMetadata || undefined;
|
|
15
15
|
} catch {
|
|
16
16
|
return undefined;
|
|
17
17
|
}
|
|
18
18
|
};
|
|
19
|
-
const renderTextWithLinks = (content, urls) => {
|
|
19
|
+
const renderTextWithLinks = (content, urls, onPressUrl) => {
|
|
20
20
|
if (!urls.length) {
|
|
21
21
|
return /*#__PURE__*/_jsx(KLabel.Text, {
|
|
22
22
|
typo: "TextMdNormal",
|
|
23
|
+
color: CHAT_BUBBLE_COLORS.text,
|
|
23
24
|
children: content
|
|
24
25
|
});
|
|
25
26
|
}
|
|
27
|
+
const parts = [];
|
|
28
|
+
let remaining = content;
|
|
29
|
+
for (const url of urls) {
|
|
30
|
+
const idx = remaining.indexOf(url);
|
|
31
|
+
if (idx === -1) continue;
|
|
32
|
+
if (idx > 0) parts.push({
|
|
33
|
+
text: remaining.slice(0, idx),
|
|
34
|
+
isUrl: false
|
|
35
|
+
});
|
|
36
|
+
parts.push({
|
|
37
|
+
text: url,
|
|
38
|
+
isUrl: true
|
|
39
|
+
});
|
|
40
|
+
remaining = remaining.slice(idx + url.length);
|
|
41
|
+
}
|
|
42
|
+
if (remaining) parts.push({
|
|
43
|
+
text: remaining,
|
|
44
|
+
isUrl: false
|
|
45
|
+
});
|
|
26
46
|
return /*#__PURE__*/_jsx(KLabel.Text, {
|
|
27
47
|
typo: "TextMdNormal",
|
|
28
48
|
color: CHAT_BUBBLE_COLORS.text,
|
|
29
|
-
children:
|
|
49
|
+
children: parts.map((part, i) => part.isUrl ? /*#__PURE__*/_jsx(KLabel.Text, {
|
|
50
|
+
onPress: () => onPressUrl?.(part.text),
|
|
51
|
+
color: KColors.primary.normal,
|
|
52
|
+
typo: "TextMdMedium",
|
|
53
|
+
children: part.text
|
|
54
|
+
}, i) : /*#__PURE__*/_jsx(KLabel.Text, {
|
|
55
|
+
children: part.text
|
|
56
|
+
}, i))
|
|
30
57
|
});
|
|
31
58
|
};
|
|
32
59
|
export const LinkMessage = /*#__PURE__*/memo(({
|
|
33
60
|
message,
|
|
34
61
|
isOutgoing,
|
|
35
|
-
createdAtTime
|
|
62
|
+
createdAtTime,
|
|
63
|
+
onPressUrl
|
|
36
64
|
}) => {
|
|
37
65
|
const content = message?.urlTextElem?.content;
|
|
38
66
|
const urls = message?.urlTextElem?.urls ?? [];
|
|
@@ -45,9 +73,9 @@ export const LinkMessage = /*#__PURE__*/memo(({
|
|
|
45
73
|
children: [!!content?.trim() && /*#__PURE__*/_jsx(KContainer.View, {
|
|
46
74
|
style: styles.textRow,
|
|
47
75
|
children: renderTextWithLinks(content, urls)
|
|
48
|
-
}), metadata && /*#__PURE__*/_jsxs(KContainer.Touchable, {
|
|
76
|
+
}), !!metadata && /*#__PURE__*/_jsxs(KContainer.Touchable, {
|
|
49
77
|
style: styles.card,
|
|
50
|
-
onPress: () => metadata.url &&
|
|
78
|
+
onPress: () => metadata.url && onPressUrl?.(metadata.url),
|
|
51
79
|
children: [!!metadata.image && /*#__PURE__*/_jsx(KContainer.View, {
|
|
52
80
|
style: styles.cardThumb,
|
|
53
81
|
children: /*#__PURE__*/_jsx(KImage.Base, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["memo","
|
|
1
|
+
{"version":3,"names":["memo","StyleSheet","KContainer","KImage","KLabel","KColors","KSpacingValue","formatMessageTime","CHAT_BUBBLE_COLORS","jsx","_jsx","jsxs","_jsxs","parseUrlMetadata","ex","undefined","parsed","JSON","parse","urlMetadata","renderTextWithLinks","content","urls","onPressUrl","length","Text","typo","color","text","children","parts","remaining","url","idx","indexOf","push","slice","isUrl","map","part","i","onPress","primary","normal","LinkMessage","message","isOutgoing","createdAtTime","urlTextElem","metadata","timeLabel","View","style","styles","wrapper","bubble","bubbleSent","bubbleReceived","trim","textRow","Touchable","card","image","cardThumb","Base","uri","absoluteFill","resizeMode","cardBody","title","palette","gray","w900","numberOfLines","w400","description","timestamp","marginL","displayName","create","maxWidth","paddingHorizontal","paddingVertical","borderRadius","backgroundColor","received","sent","borderWidth","borderColor","white","overflow","width","aspectRatio","gap"],"sourceRoot":"../../../../../src","sources":["components/messages/linkMessage/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,7 +9,10 @@ export const useFetchUrlMetadata = url => useQuery({
|
|
|
9
9
|
queryFn: async () => {
|
|
10
10
|
const path = `${ENDPOINTS.chatService.urlMetadata}?url=${url}`;
|
|
11
11
|
const res = await apiInstance?.get(path);
|
|
12
|
-
return res?.data?.data
|
|
12
|
+
return res?.data?.data?.title ? {
|
|
13
|
+
...res?.data?.data,
|
|
14
|
+
url
|
|
15
|
+
} : null;
|
|
13
16
|
},
|
|
14
17
|
enabled: !!url,
|
|
15
18
|
placeholderData: keepPreviousData
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["keepPreviousData","useQuery","commonQueryKeys","apiInstance","ENDPOINTS","useFetchUrlMetadata","url","queryKey","urlMetadata","queryFn","path","chatService","res","get","data","enabled","placeholderData"],"sourceRoot":"../../../../src","sources":["hooks/useLinkPreview/useFetchUrlMetadata.ts"],"mappings":";;AAAA,SAASA,gBAAgB,EAAEC,QAAQ,QAAQ,uBAAuB;AAClE,SAASC,eAAe,QAAQ,kBAAe;AAC/C,SAASC,WAAW,QAAQ,wBAAqB;AAGjD,SAASC,SAAS,QAAQ,6BAA0B;AAEpD,OAAO,MAAMC,mBAAmB,GAAIC,GAAY,IAC9CL,QAAQ,CAAC;EACPM,QAAQ,EAAEL,eAAe,CAACM,WAAW,CAACF,GAAG,IAAI,EAAE,CAAC;EAChDG,OAAO,EAAE,MAAAA,CAAA,KAAY;IACnB,MAAMC,IAAI,GAAG,GAAGN,SAAS,CAACO,WAAW,CAACH,WAAW,QAAQF,GAAG,EAAE;IAC9D,MAAMM,GAAG,GAAG,MAAMT,WAAW,EAAEU,GAAG,CAA6BH,IAAI,CAAC;IACpE,OAAOE,GAAG,EAAEE,IAAI,EAAEA,IAAI;
|
|
1
|
+
{"version":3,"names":["keepPreviousData","useQuery","commonQueryKeys","apiInstance","ENDPOINTS","useFetchUrlMetadata","url","queryKey","urlMetadata","queryFn","path","chatService","res","get","data","title","enabled","placeholderData"],"sourceRoot":"../../../../src","sources":["hooks/useLinkPreview/useFetchUrlMetadata.ts"],"mappings":";;AAAA,SAASA,gBAAgB,EAAEC,QAAQ,QAAQ,uBAAuB;AAClE,SAASC,eAAe,QAAQ,kBAAe;AAC/C,SAASC,WAAW,QAAQ,wBAAqB;AAGjD,SAASC,SAAS,QAAQ,6BAA0B;AAEpD,OAAO,MAAMC,mBAAmB,GAAIC,GAAY,IAC9CL,QAAQ,CAAC;EACPM,QAAQ,EAAEL,eAAe,CAACM,WAAW,CAACF,GAAG,IAAI,EAAE,CAAC;EAChDG,OAAO,EAAE,MAAAA,CAAA,KAAY;IACnB,MAAMC,IAAI,GAAG,GAAGN,SAAS,CAACO,WAAW,CAACH,WAAW,QAAQF,GAAG,EAAE;IAC9D,MAAMM,GAAG,GAAG,MAAMT,WAAW,EAAEU,GAAG,CAA6BH,IAAI,CAAC;IACpE,OAAOE,GAAG,EAAEE,IAAI,EAAEA,IAAI,EAAEC,KAAK,GACzB;MACE,GAAGH,GAAG,EAAEE,IAAI,EAAEA,IAAI;MAClBR;IACF,CAAC,GACD,IAAI;EACV,CAAC;EACDU,OAAO,EAAE,CAAC,CAACV,GAAG;EACdW,eAAe,EAAEjB;AACnB,CAAC,CAAC","ignoreList":[]}
|
|
@@ -24,10 +24,10 @@ export function useLinkPreview(value) {
|
|
|
24
24
|
isFetching: isLoading
|
|
25
25
|
} = useFetchUrlMetadata(detectedUrl);
|
|
26
26
|
const dismiss = useCallback(() => setIsDismissed(true), []);
|
|
27
|
-
const isVisible = !!detectedUrl && !isDismissed;
|
|
27
|
+
const isVisible = !!detectedUrl && !isDismissed && (isLoading || !!metadata);
|
|
28
28
|
return {
|
|
29
29
|
isVisible,
|
|
30
|
-
metadata,
|
|
30
|
+
metadata: metadata || undefined,
|
|
31
31
|
isLoading,
|
|
32
32
|
dismiss
|
|
33
33
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useEffect","useRef","useState","useFetchUrlMetadata","extractUrls","useLinkPreview","value","detectedUrl","setDetectedUrl","undefined","isDismissed","setIsDismissed","timerRef","current","clearTimeout","setTimeout","urls","url","length","data","metadata","isFetching","isLoading","dismiss","isVisible"],"sourceRoot":"../../../../src","sources":["hooks/useLinkPreview/useLinkPreview.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAChE,SAASC,mBAAmB,QAAQ,0BAAuB;AAC3D,SAASC,WAAW,QAAQ,oBAAiB;AAE7C,OAAO,SAASC,cAAcA,CAACC,KAAyB,EAAE;EACxD,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGN,QAAQ,CAAqBO,SAAS,CAAC;EAC7E,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGT,QAAQ,CAAC,KAAK,CAAC;EACrD,MAAMU,QAAQ,GAAGX,MAAM,CAAuC,IAAI,CAAC;EAEnED,SAAS,CAAC,MAAM;IACd,IAAIY,QAAQ,CAACC,OAAO,EAAEC,YAAY,CAACF,QAAQ,CAACC,OAAO,CAAC;IACpDD,QAAQ,CAACC,OAAO,GAAGE,UAAU,CAAC,MAAM;MAClC,MAAMC,IAAI,GAAGV,KAAK,GAAGF,WAAW,CAACE,KAAK,CAAC,GAAG,EAAE;MAC5C,MAAMW,GAAG,GAAGD,IAAI,CAACE,MAAM,KAAK,CAAC,GAAGF,IAAI,CAAC,CAAC,CAAC,GAAGP,SAAS;MACnDD,cAAc,CAACS,GAAG,CAAC;MACnB,IAAIA,GAAG,EAAEN,cAAc,CAAC,KAAK,CAAC;IAChC,CAAC,EAAE,GAAG,CAAC;IACP,OAAO,MAAM;MACX,IAAIC,QAAQ,CAACC,OAAO,EAAEC,YAAY,CAACF,QAAQ,CAACC,OAAO,CAAC;IACtD,CAAC;EACH,CAAC,EAAE,CAACP,KAAK,CAAC,CAAC;EAEX,MAAM;IAAEa,IAAI,EAAEC,QAAQ;IAAEC,UAAU,EAAEC;EAAU,CAAC,GAC7CnB,mBAAmB,CAACI,WAAW,CAAC;EAElC,MAAMgB,OAAO,GAAGxB,WAAW,CAAC,MAAMY,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;EAE3D,MAAMa,SAAS,GAAG,CAAC,CAACjB,WAAW,IAAI,CAACG,WAAW;
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","useRef","useState","useFetchUrlMetadata","extractUrls","useLinkPreview","value","detectedUrl","setDetectedUrl","undefined","isDismissed","setIsDismissed","timerRef","current","clearTimeout","setTimeout","urls","url","length","data","metadata","isFetching","isLoading","dismiss","isVisible"],"sourceRoot":"../../../../src","sources":["hooks/useLinkPreview/useLinkPreview.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAChE,SAASC,mBAAmB,QAAQ,0BAAuB;AAC3D,SAASC,WAAW,QAAQ,oBAAiB;AAE7C,OAAO,SAASC,cAAcA,CAACC,KAAyB,EAAE;EACxD,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGN,QAAQ,CAAqBO,SAAS,CAAC;EAC7E,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGT,QAAQ,CAAC,KAAK,CAAC;EACrD,MAAMU,QAAQ,GAAGX,MAAM,CAAuC,IAAI,CAAC;EAEnED,SAAS,CAAC,MAAM;IACd,IAAIY,QAAQ,CAACC,OAAO,EAAEC,YAAY,CAACF,QAAQ,CAACC,OAAO,CAAC;IACpDD,QAAQ,CAACC,OAAO,GAAGE,UAAU,CAAC,MAAM;MAClC,MAAMC,IAAI,GAAGV,KAAK,GAAGF,WAAW,CAACE,KAAK,CAAC,GAAG,EAAE;MAC5C,MAAMW,GAAG,GAAGD,IAAI,CAACE,MAAM,KAAK,CAAC,GAAGF,IAAI,CAAC,CAAC,CAAC,GAAGP,SAAS;MACnDD,cAAc,CAACS,GAAG,CAAC;MACnB,IAAIA,GAAG,EAAEN,cAAc,CAAC,KAAK,CAAC;IAChC,CAAC,EAAE,GAAG,CAAC;IACP,OAAO,MAAM;MACX,IAAIC,QAAQ,CAACC,OAAO,EAAEC,YAAY,CAACF,QAAQ,CAACC,OAAO,CAAC;IACtD,CAAC;EACH,CAAC,EAAE,CAACP,KAAK,CAAC,CAAC;EAEX,MAAM;IAAEa,IAAI,EAAEC,QAAQ;IAAEC,UAAU,EAAEC;EAAU,CAAC,GAC7CnB,mBAAmB,CAACI,WAAW,CAAC;EAElC,MAAMgB,OAAO,GAAGxB,WAAW,CAAC,MAAMY,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;EAE3D,MAAMa,SAAS,GAAG,CAAC,CAACjB,WAAW,IAAI,CAACG,WAAW,KAAKY,SAAS,IAAI,CAAC,CAACF,QAAQ,CAAC;EAE5E,OAAO;IAAEI,SAAS;IAAEJ,QAAQ,EAAEA,QAAQ,IAAIX,SAAS;IAAEa,SAAS;IAAEC;EAAQ,CAAC;AAC3E","ignoreList":[]}
|
|
@@ -125,7 +125,7 @@ export const ChatComposer = /*#__PURE__*/memo(({
|
|
|
125
125
|
const hasAttachments = selectedImages.length > 0;
|
|
126
126
|
const hasText = (value ?? '').trim().length > 0;
|
|
127
127
|
// Only send metadata if preview is CURRENTLY visible (user didn't dismiss it)
|
|
128
|
-
const previewMetadata = showLinkPreview ? urlMetadata : undefined;
|
|
128
|
+
const previewMetadata = showLinkPreview && !!urlMetadata ? urlMetadata : undefined;
|
|
129
129
|
const hasPreview = !!previewMetadata;
|
|
130
130
|
|
|
131
131
|
// Prevent sending while files are uploading
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["memo","useCallback","useEffect","useMemo","Platform","StyleSheet","Reanimated","useSafeAreaInsets","KContainer","KColors","KImage","IS_IOS","OS","INPUT_LINE_HEIGHT","WRAPPED_HEIGHT_THRESHOLD","ChatQuickActions","ChatAttachmentPanel","ChatLinkPreview","ChatMessageInput","AttachmentPreview","getAttachmentPanelHeight","useLinkPreview","useImageAttachment","useSendAttachment","useChatComposerState","useChatComposerAnimation","useAttachmentSendHandler","isVideoFromPicker","jsx","_jsx","jsxs","_jsxs","ChatComposer","value","placeholder","onChangeText","onSend","onMessageSent","onPressEmoji","_onPressEmoji","showQuickActions","quickActions","attachmentActions","onQuickActionPress","onAttachmentAction","renderQuickAction","renderQuickActions","renderAttachmentAction","attachmentColumns","insets","hasAttachmentActions","length","isVisible","showLinkPreview","metadata","urlMetadata","isLoading","isMetadataLoading","dismiss","handleDismissPreview","selectedImages","isImagePreviewVisible","handleImageAttach","handleImageRemove","clearAllImages","send","sendAttachments","handleSendText","text","previewMetadata","metadataWithText","_capturedText","undefined","handleSend","handleAttachmentSend","textMessage","trim","onSendText","isAttachmentOpen","setIsAttachmentOpen","isInputFocused","setIsInputFocused","setIsInputWrapped","isMultilineInput","inputRef","panelHeight","accessorySlotStyle","toggleAttachmentVisibility","closeAttachment","onAttachmentOpenChange","isUploadingAttachments","some","img","isUploading","hasAttachments","hasText","hasPreview","console","warn","log","previewUrl","url","handleInputFocus","handleInputBlur","handleChangeText","handleInputContentSizeChange","event","height","nativeEvent","contentSize","handleAttachmentActionInternal","action","id","inputRowStyle","paddingBottom","bottom","View","background","children","visible","actions","onActionPress","renderAction","onDismiss","attachments","map","isVideo","image","type","path","filename","size","width","duration","uploadProgress","error","uploadedUrl","thumbnailUrl","onRemove","index","row","alignItems","paddingH","paddingT","paddingB","style","Touchable","onPress","center","br","VectorIcons","name","color","palette","primary","w400","gray","w600","onFocus","onBlur","onContentSizeChange","pointerEvents","marginL","opacity","provider","white","styles","accessorySlot","columns","displayName","create","overflow","backgroundColor","w25"],"sourceRoot":"../../../../src","sources":["screens/chat-detail/ChatComposer.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["memo","useCallback","useEffect","useMemo","Platform","StyleSheet","Reanimated","useSafeAreaInsets","KContainer","KColors","KImage","IS_IOS","OS","INPUT_LINE_HEIGHT","WRAPPED_HEIGHT_THRESHOLD","ChatQuickActions","ChatAttachmentPanel","ChatLinkPreview","ChatMessageInput","AttachmentPreview","getAttachmentPanelHeight","useLinkPreview","useImageAttachment","useSendAttachment","useChatComposerState","useChatComposerAnimation","useAttachmentSendHandler","isVideoFromPicker","jsx","_jsx","jsxs","_jsxs","ChatComposer","value","placeholder","onChangeText","onSend","onMessageSent","onPressEmoji","_onPressEmoji","showQuickActions","quickActions","attachmentActions","onQuickActionPress","onAttachmentAction","renderQuickAction","renderQuickActions","renderAttachmentAction","attachmentColumns","insets","hasAttachmentActions","length","isVisible","showLinkPreview","metadata","urlMetadata","isLoading","isMetadataLoading","dismiss","handleDismissPreview","selectedImages","isImagePreviewVisible","handleImageAttach","handleImageRemove","clearAllImages","send","sendAttachments","handleSendText","text","previewMetadata","metadataWithText","_capturedText","undefined","handleSend","handleAttachmentSend","textMessage","trim","onSendText","isAttachmentOpen","setIsAttachmentOpen","isInputFocused","setIsInputFocused","setIsInputWrapped","isMultilineInput","inputRef","panelHeight","accessorySlotStyle","toggleAttachmentVisibility","closeAttachment","onAttachmentOpenChange","isUploadingAttachments","some","img","isUploading","hasAttachments","hasText","hasPreview","console","warn","log","previewUrl","url","handleInputFocus","handleInputBlur","handleChangeText","handleInputContentSizeChange","event","height","nativeEvent","contentSize","handleAttachmentActionInternal","action","id","inputRowStyle","paddingBottom","bottom","View","background","children","visible","actions","onActionPress","renderAction","onDismiss","attachments","map","isVideo","image","type","path","filename","size","width","duration","uploadProgress","error","uploadedUrl","thumbnailUrl","onRemove","index","row","alignItems","paddingH","paddingT","paddingB","style","Touchable","onPress","center","br","VectorIcons","name","color","palette","primary","w400","gray","w600","onFocus","onBlur","onContentSizeChange","pointerEvents","marginL","opacity","provider","white","styles","accessorySlot","columns","displayName","create","overflow","backgroundColor","w25"],"sourceRoot":"../../../../src","sources":["screens/chat-detail/ChatComposer.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -36,7 +36,6 @@ const ChatDetail = /*#__PURE__*/memo(({
|
|
|
36
36
|
renderChat,
|
|
37
37
|
showQuickActions = true,
|
|
38
38
|
quickActions,
|
|
39
|
-
inputValue,
|
|
40
39
|
inputPlaceholder,
|
|
41
40
|
onChangeInput,
|
|
42
41
|
onPressAttach,
|
|
@@ -47,7 +46,8 @@ const ChatDetail = /*#__PURE__*/memo(({
|
|
|
47
46
|
renderQuickAction,
|
|
48
47
|
renderQuickActions,
|
|
49
48
|
renderAttachmentAction,
|
|
50
|
-
attachmentColumns
|
|
49
|
+
attachmentColumns,
|
|
50
|
+
onPressUrl
|
|
51
51
|
}) => {
|
|
52
52
|
const navigation = useNavigation();
|
|
53
53
|
const [internalInput, setInternalInput] = useState('');
|
|
@@ -117,7 +117,7 @@ const ChatDetail = /*#__PURE__*/memo(({
|
|
|
117
117
|
}
|
|
118
118
|
return getConversationSubtitle(conversation);
|
|
119
119
|
}, [conversation, getSubtitle, subtitle]);
|
|
120
|
-
const currentInput =
|
|
120
|
+
const currentInput = internalInput;
|
|
121
121
|
const handleChangeText = useCallback(text => {
|
|
122
122
|
const newText = text ?? '';
|
|
123
123
|
if (onChangeInput) {
|
|
@@ -201,7 +201,8 @@ const ChatDetail = /*#__PURE__*/memo(({
|
|
|
201
201
|
hasMoreEarlier: hasMoreEarlier,
|
|
202
202
|
onMediaPress: (items, index) => {
|
|
203
203
|
mediaViewerRef.current?.show(items, index);
|
|
204
|
-
}
|
|
204
|
+
},
|
|
205
|
+
onPressUrl: onPressUrl
|
|
205
206
|
}), /*#__PURE__*/_jsx(ChatComposer, {
|
|
206
207
|
value: currentInput,
|
|
207
208
|
placeholder: inputPlaceholder,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["memo","useState","useCallback","useEffect","useMemo","useRef","Platform","StyleSheet","KeyboardAvoidingView","useSafeAreaInsets","KContainer","useNavigation","useChatMessages","MediaViewerModal","useConversation","useConversationStore","ChatDetailHeader","ChatListLegend","ChatComposer","DEFAULT_ATTACHMENT_ACTIONS","DEFAULT_Chat_QUICK_ACTIONS","getConversationAvatarUri","getConversationSubtitle","getConversationTitle","shouldShowAddMember","useSendMessage","useMessageStore","jsx","_jsx","jsxs","_jsxs","ChatDetail","conversationId","enabled","title","subtitle","avatarUri","avatarFullName","peerType","applicationType","showAddMember","getSubtitle","onBack","onPressSearch","onPressAddMember","onPressMenu","onPressAvatar","renderChat","showQuickActions","quickActions","
|
|
1
|
+
{"version":3,"names":["memo","useState","useCallback","useEffect","useMemo","useRef","Platform","StyleSheet","KeyboardAvoidingView","useSafeAreaInsets","KContainer","useNavigation","useChatMessages","MediaViewerModal","useConversation","useConversationStore","ChatDetailHeader","ChatListLegend","ChatComposer","DEFAULT_ATTACHMENT_ACTIONS","DEFAULT_Chat_QUICK_ACTIONS","getConversationAvatarUri","getConversationSubtitle","getConversationTitle","shouldShowAddMember","useSendMessage","useMessageStore","jsx","_jsx","jsxs","_jsxs","ChatDetail","conversationId","enabled","title","subtitle","avatarUri","avatarFullName","peerType","applicationType","showAddMember","getSubtitle","onBack","onPressSearch","onPressAddMember","onPressMenu","onPressAvatar","renderChat","showQuickActions","quickActions","inputPlaceholder","onChangeInput","onPressAttach","onPressEmoji","attachmentActions","onQuickActionPress","onAttachmentAction","renderQuickAction","renderQuickActions","renderAttachmentAction","attachmentColumns","onPressUrl","navigation","internalInput","setInternalInput","mediaViewerRef","conversation","handleBackDefault","goBack","quickActionsDefault","map","action","onPress","console","log","id","attachmentActionsDefault","sendMessage","pushNewMessage","messages","currentUserId","onLoadEarlier","isLoading","isLoadingEarlier","hasMoreEarlier","handleAttachmentMessageSent","message","__DEV__","clientMsgID","contentType","getState","setCurrentConversation","resolvedTitle","resolvedAvatarUri","resolvedAvatarFullName","resolvedPeerType","resolvedApplicationType","resolvedShowAddMember","resolvedSubtitle","undefined","currentInput","handleChangeText","text","newText","handleSend","urlMetadata","capturedText","_capturedText","cleanMetadata","rest","trim","warn","url","files","plainText","error","substring","hasPreview","insets","Page","flex","edges","children","style","styles","keyboardAvoiding","behavior","keyboardVerticalOffset","select","android","bottom","default","onMediaPress","items","index","current","show","value","placeholder","onChangeText","onSend","onMessageSent","meta","ref","displayName","create"],"sourceRoot":"../../../../src","sources":["screens/chat-detail/ChatDetail.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -21,7 +21,8 @@ export const ChatListLegend = /*#__PURE__*/memo(({
|
|
|
21
21
|
onLoadNewer,
|
|
22
22
|
isLoadingNewer,
|
|
23
23
|
hasMoreNewer,
|
|
24
|
-
onMediaPress
|
|
24
|
+
onMediaPress,
|
|
25
|
+
onPressUrl
|
|
25
26
|
}) => {
|
|
26
27
|
// Precompute all message data in single pass (O(n))
|
|
27
28
|
const messageDataMap = useMemo(() => precomputeLegendListData(messages), [messages]);
|
|
@@ -78,7 +79,8 @@ export const ChatListLegend = /*#__PURE__*/memo(({
|
|
|
78
79
|
message: message,
|
|
79
80
|
isOutgoing: isOutgoing,
|
|
80
81
|
createdAtTime: createdAt,
|
|
81
|
-
onMediaPress: onMediaPress
|
|
82
|
+
onMediaPress: onMediaPress,
|
|
83
|
+
onPressUrl: onPressUrl
|
|
82
84
|
})
|
|
83
85
|
})]
|
|
84
86
|
});
|
|
@@ -92,7 +94,7 @@ export const ChatListLegend = /*#__PURE__*/memo(({
|
|
|
92
94
|
})
|
|
93
95
|
});
|
|
94
96
|
}
|
|
95
|
-
}, [currentUserId, renderChat, messageDataMap, handleItemLayout, onMediaPress]);
|
|
97
|
+
}, [currentUserId, renderChat, messageDataMap, handleItemLayout, onMediaPress, onPressUrl]);
|
|
96
98
|
const maintainScrollConfig = useMemo(() => ({
|
|
97
99
|
animated: false,
|
|
98
100
|
on: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["memo","useCallback","useMemo","useEffect","useRef","useState","ActivityIndicator","StyleSheet","Animated","useSharedValue","useAnimatedStyle","withSpring","LegendList","KContainer","KColors","KSpacingValue","KLabel","precomputeLegendListData","LegendChatMessage","LegendChatDay","LegendChatLoadEarlier","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ChatListLegend","messages","currentUserId","renderChat","onLoadEarlier","isLoading","isLoadingEarlier","hasMoreEarlier","onLoadNewer","isLoadingNewer","hasMoreNewer","onMediaPress","messageDataMap","listRef","buttonOpacity","isAtBottomRef","lastMessageCountRef","length","lastFirstMessageIdRef","lastLastMessageIdRef","scrollDebounceRef","undefined","itemHeightsRef","Map","avgItemHeightRef","heightDebounceRef","showBadge","setShowBadge","handleItemLayout","messageId","height","current","set","clearTimeout","setTimeout","size","total","Array","from","values","reduce","a","b","Math","round","renderItem","item","index","message","isOutgoing","sendID","clientMsgID","serverMsgID","sendTime","createTime","messageData","get","dayStart","createdAt","children","View","style","styles","messageRow","messageRowRight","messageRowLeft","onLayout","e","nativeEvent","layout","createdAtTime","error","__DEV__","console","errorRow","Text","typo","maintainScrollConfig","animated","on","dataChange","itemLayout","handleStartReached","log","willLoad","handleEndReached","handleScroll","contentOffset","contentSize","layoutMeasurement","isAtBottom","y","value","duration","handleScrollToBottom","scrollToEnd","animatedButtonStyle","opacity","pointerEvents","currentCount","previousCount","timeoutId","firstMsgId","lastMsgId","prevFirstMsgId","prevLastMsgId","wasPrepended","newMessage","isOwnMessage","shouldScroll","flex","center","background","white","color","palette","primary","w400","container","ref","data","estimatedItemSize","keyExtractor","String","recycleItems","alignItemsAtEnd","maintainVisibleContentPosition","maintainScrollAtEnd","scrollEventThrottle","onScroll","contentContainerStyle","content","scrollIndicatorInsets","right","ListHeaderComponent","onStartReached","onStartReachedThreshold","onEndReached","onEndReachedThreshold","showsVerticalScrollIndicator","initialScrollAtEnd","scrollToBottomButton","Touchable","onPress","activeOpacity","buttonInner","accessible","accessibilityLabel","accessibilityRole","scrollToBottomText","badge","displayName","create","position","width","paddingHorizontal","marginBottom","alignItems","paddingVertical","flexGrow","bottom","zIndex","borderRadius","backgroundColor","justifyContent","shadowColor","black","shadowOffset","shadowOpacity","shadowRadius","elevation","fontSize","fontWeight","padding","top","borderWidth","borderColor"],"sourceRoot":"../../../../src","sources":["screens/chat-detail/ChatListLegend.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["memo","useCallback","useMemo","useEffect","useRef","useState","ActivityIndicator","StyleSheet","Animated","useSharedValue","useAnimatedStyle","withSpring","LegendList","KContainer","KColors","KSpacingValue","KLabel","precomputeLegendListData","LegendChatMessage","LegendChatDay","LegendChatLoadEarlier","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ChatListLegend","messages","currentUserId","renderChat","onLoadEarlier","isLoading","isLoadingEarlier","hasMoreEarlier","onLoadNewer","isLoadingNewer","hasMoreNewer","onMediaPress","onPressUrl","messageDataMap","listRef","buttonOpacity","isAtBottomRef","lastMessageCountRef","length","lastFirstMessageIdRef","lastLastMessageIdRef","scrollDebounceRef","undefined","itemHeightsRef","Map","avgItemHeightRef","heightDebounceRef","showBadge","setShowBadge","handleItemLayout","messageId","height","current","set","clearTimeout","setTimeout","size","total","Array","from","values","reduce","a","b","Math","round","renderItem","item","index","message","isOutgoing","sendID","clientMsgID","serverMsgID","sendTime","createTime","messageData","get","dayStart","createdAt","children","View","style","styles","messageRow","messageRowRight","messageRowLeft","onLayout","e","nativeEvent","layout","createdAtTime","error","__DEV__","console","errorRow","Text","typo","maintainScrollConfig","animated","on","dataChange","itemLayout","handleStartReached","log","willLoad","handleEndReached","handleScroll","contentOffset","contentSize","layoutMeasurement","isAtBottom","y","value","duration","handleScrollToBottom","scrollToEnd","animatedButtonStyle","opacity","pointerEvents","currentCount","previousCount","timeoutId","firstMsgId","lastMsgId","prevFirstMsgId","prevLastMsgId","wasPrepended","newMessage","isOwnMessage","shouldScroll","flex","center","background","white","color","palette","primary","w400","container","ref","data","estimatedItemSize","keyExtractor","String","recycleItems","alignItemsAtEnd","maintainVisibleContentPosition","maintainScrollAtEnd","scrollEventThrottle","onScroll","contentContainerStyle","content","scrollIndicatorInsets","right","ListHeaderComponent","onStartReached","onStartReachedThreshold","onEndReached","onEndReachedThreshold","showsVerticalScrollIndicator","initialScrollAtEnd","scrollToBottomButton","Touchable","onPress","activeOpacity","buttonInner","accessible","accessibilityLabel","accessibilityRole","scrollToBottomText","badge","displayName","create","position","width","paddingHorizontal","marginBottom","alignItems","paddingVertical","flexGrow","bottom","zIndex","borderRadius","backgroundColor","justifyContent","shadowColor","black","shadowOffset","shadowOpacity","shadowRadius","elevation","fontSize","fontWeight","padding","top","borderWidth","borderColor"],"sourceRoot":"../../../../src","sources":["screens/chat-detail/ChatListLegend.tsx"],"mappings":";;AAAA,SAASA,IAAI,EAAEC,WAAW,EAAEC,OAAO,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAC/E,SAASC,iBAAiB,EAAEC,UAAU,QAAQ,cAAc;AAC5D,OAAOC,QAAQ,IACbC,cAAc,EACdC,gBAAgB,EAChBC,UAAU,QACL,yBAAyB;AAChC,SAASC,UAAU,QAA4B,8BAA8B;AAC7E,SAASC,UAAU,EAAEC,OAAO,EAAEC,aAAa,EAAEC,MAAM,QAAQ,eAAe;AAC1E,SAASC,wBAAwB,QAAQ,kCAA+B;AAGxE,SAASC,iBAAiB,QAAQ,+BAA4B;AAC9D,SAASC,aAAa,QAAQ,2BAAwB;AACtD,SAASC,qBAAqB,QAAQ,mCAAgC;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAEvE,OAAO,MAAMC,cAAc,gBAAG3B,IAAI,CAChC,CAAC;EACC4B,QAAQ,GAAG,EAAE;EACbC,aAAa,GAAG,EAAE;EAClBC,UAAU;EACVC,aAAa;EACbC,SAAS;EACTC,gBAAgB;EAChBC,cAAc;EACdC,WAAW;EACXC,cAAc;EACdC,YAAY;EACZC,YAAY;EACZC;AACa,CAAC,KAAK;EACnB;EACA,MAAMC,cAAc,GAAGtC,OAAO,CAC5B,MAAMe,wBAAwB,CAACW,QAAQ,CAAC,EACxC,CAACA,QAAQ,CACX,CAAC;EAED,MAAMa,OAAO,GAAGrC,MAAM,CAAgB,IAAI,CAAC;EAC3C,MAAMsC,aAAa,GAAGjC,cAAc,CAAC,CAAC,CAAC;EACvC,MAAMkC,aAAa,GAAGvC,MAAM,CAAC,IAAI,CAAC;EAClC,MAAMwC,mBAAmB,GAAGxC,MAAM,CAACwB,QAAQ,CAACiB,MAAM,CAAC;EACnD,MAAMC,qBAAqB,GAAG1C,MAAM,CAAgB,IAAI,CAAC;EACzD,MAAM2C,oBAAoB,GAAG3C,MAAM,CAAgB,IAAI,CAAC;EACxD,MAAM4C,iBAAiB,GAAG5C,MAAM,CAA6B6C,SAAS,CAAC;EACvE,MAAMC,cAAc,GAAG9C,MAAM,CAAsB,IAAI+C,GAAG,CAAC,CAAC,CAAC;EAC7D,MAAMC,gBAAgB,GAAGhD,MAAM,CAAC,GAAG,CAAC;EACpC,MAAMiD,iBAAiB,GAAGjD,MAAM,CAA6B6C,SAAS,CAAC;EACvE,MAAM,CAACK,SAAS,EAAEC,YAAY,CAAC,GAAGlD,QAAQ,CAAC,KAAK,CAAC;EAEjD,MAAMmD,gBAAgB,GAAGvD,WAAW,CAClC,CAACwD,SAAiB,EAAEC,MAAc,KAAK;IACrCR,cAAc,CAACS,OAAO,CAACC,GAAG,CAACH,SAAS,EAAEC,MAAM,CAAC;;IAE7C;IACA,IAAIL,iBAAiB,CAACM,OAAO,EAAE;MAC7BE,YAAY,CAACR,iBAAiB,CAACM,OAAO,CAAC;IACzC;IAEAN,iBAAiB,CAACM,OAAO,GAAGG,UAAU,CAAC,MAAM;MAC3C,IAAIZ,cAAc,CAACS,OAAO,CAACI,IAAI,GAAG,CAAC,EAAE;QACnC,MAAMC,KAAK,GAAGC,KAAK,CAACC,IAAI,CAAChB,cAAc,CAACS,OAAO,CAACQ,MAAM,CAAC,CAAC,CAAC,CAACC,MAAM,CAC9D,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC,EACf,CACF,CAAC;QACDlB,gBAAgB,CAACO,OAAO,GAAGY,IAAI,CAACC,KAAK,CACnCR,KAAK,GAAGd,cAAc,CAACS,OAAO,CAACI,IACjC,CAAC;MACH;IACF,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;EACX,CAAC,EACD,EACF,CAAC;EAED,MAAMU,UAAU,GAAGxE,WAAW,CAC5B,CAAC;IAAEyE,IAAI;IAAEC;EAAW,CAAC,KAAK;IACxB,IAAI;MACF,IAAI,CAACD,IAAI,EAAE,OAAO,IAAI;MAEtB,MAAME,OAAO,GAAGF,IAAoB;MACpC,MAAMG,UAAU,GAAGD,OAAO,CAACE,MAAM,KAAKjD,aAAa;MACnD;MACA,MAAM4B,SAAS,GACbmB,OAAO,CAACG,WAAW,IACnBH,OAAO,CAACI,WAAW,IACnB,QAAQJ,OAAO,CAACK,QAAQ,IAAIL,OAAO,CAACM,UAAU,IAAIP,KAAK,EAAE;MAE3D,MAAMQ,WAAW,GAAG3C,cAAc,CAAC4C,GAAG,CAAC3B,SAAS,CAAC;MACjD,IAAI,CAAC0B,WAAW,EAAE;QAChB,OAAO,IAAI,CAAC,CAAC;MACf;MAEA,MAAM;QAAEE,QAAQ;QAAEC;MAAU,CAAC,GAAGH,WAAW;MAE3C,oBACEzD,KAAA,CAAAF,SAAA;QAAA+D,QAAA,GACGF,QAAQ,iBAAI/D,IAAA,CAACH,aAAa;UAACmE,SAAS,EAAEA;QAAU,CAAE,CAAC,eACpDhE,IAAA,CAACT,UAAU,CAAC2E,IAAI;UACdC,KAAK,EAAE,CACLC,MAAM,CAACC,UAAU,EACjBd,UAAU,GAAGa,MAAM,CAACE,eAAe,GAAGF,MAAM,CAACG,cAAc,CAC3D;UACFC,QAAQ,EAAGC,CAAC,IACVvC,gBAAgB,CAACC,SAAS,EAAEsC,CAAC,CAACC,WAAW,CAACC,MAAM,CAACvC,MAAM,CACxD;UAAA6B,QAAA,EAEAzD,UAAU,GACTA,UAAU,CAAC8C,OAAO,CAAC,gBAEnBtD,IAAA,CAACJ,iBAAiB;YAChB0D,OAAO,EAAEA,OAAQ;YACjBC,UAAU,EAAEA,UAAW;YACvBqB,aAAa,EAAEZ,SAAU;YACzBhD,YAAY,EAAEA,YAAa;YAC3BC,UAAU,EAAEA;UAAW,CACxB;QACF,CACc,CAAC;MAAA,CAClB,CAAC;IAEP,CAAC,CAAC,OAAO4D,KAAK,EAAE;MACd,IAAIC,OAAO,EACTC,OAAO,CAACF,KAAK,CAAC,oCAAoC,EAAEA,KAAK,CAAC;MAC5D,oBACE7E,IAAA,CAACT,UAAU,CAAC2E,IAAI;QAACC,KAAK,EAAEC,MAAM,CAACY,QAAS;QAAAf,QAAA,eACtCjE,IAAA,CAACN,MAAM,CAACuF,IAAI;UAACC,IAAI,EAAC,cAAc;UAAAjB,QAAA,EAAC;QAEjC,CAAa;MAAC,CACC,CAAC;IAEtB;EACF,CAAC,EACD,CACE1D,aAAa,EACbC,UAAU,EACVU,cAAc,EACdgB,gBAAgB,EAChBlB,YAAY,EACZC,UAAU,CAEd,CAAC;EAED,MAAMkE,oBAAoB,GAAGvG,OAAO,CAClC,OAAO;IACLwG,QAAQ,EAAE,KAAK;IACfC,EAAE,EAAE;MACFC,UAAU,EAAE,CAAC3E,gBAAgB;MAC7BgE,MAAM,EAAE,CAAChE,gBAAgB;MACzB4E,UAAU,EAAE;IACd;EACF,CAAC,CAAC,EACF,CAAC5E,gBAAgB,CACnB,CAAC;EAED,MAAM6E,kBAAkB,GAAG7G,WAAW,CAAC,MAAM;IAC3C,IAAImG,OAAO,EAAE;MACXC,OAAO,CAACU,GAAG,CAAC,uCAAuC,EAAE;QACnD7E,cAAc;QACdD,gBAAgB;QAChB+E,QAAQ,EAAE9E,cAAc,IAAI,CAACD;MAC/B,CAAC,CAAC;IACJ;IACA,IAAIC,cAAc,IAAI,CAACD,gBAAgB,EAAE;MACvCF,aAAa,GAAG,CAAC;IACnB;EACF,CAAC,EAAE,CAACG,cAAc,EAAED,gBAAgB,EAAEF,aAAa,CAAC,CAAC;EAErD,MAAMkF,gBAAgB,GAAGhH,WAAW,CAAC,MAAM;IACzC,IAAIoC,YAAY,IAAI,CAACD,cAAc,EAAE;MACnCD,WAAW,GAAG,CAAC;IACjB;EACF,CAAC,EAAE,CAACE,YAAY,EAAED,cAAc,EAAED,WAAW,CAAC,CAAC;EAE/C,MAAM+E,YAAY,GAAGjH,WAAW,CAC7B8F,CAAM,IAAK;IACV,MAAM;MAAEoB,aAAa;MAAEC,WAAW;MAAEC;IAAkB,CAAC,GAAGtB,CAAC,CAACC,WAAW;IACvE,MAAMsB,UAAU,GACdH,aAAa,CAACI,CAAC,GAAGF,iBAAiB,CAAC3D,MAAM,IAC1C0D,WAAW,CAAC1D,MAAM,GAAG,GAAG;;IAE1B;IACA,IAAIV,iBAAiB,CAACW,OAAO,EAAE;MAC7BE,YAAY,CAACb,iBAAiB,CAACW,OAAO,CAAC;IACzC;IAEAX,iBAAiB,CAACW,OAAO,GAAGG,UAAU,CAAC,MAAM;MAC3C,IAAInB,aAAa,CAACgB,OAAO,KAAK2D,UAAU,EAAE;QACxC3E,aAAa,CAACgB,OAAO,GAAG2D,UAAU;QAClC5E,aAAa,CAAC8E,KAAK,GAAG7G,UAAU,CAAC2G,UAAU,GAAG,CAAC,GAAG,CAAC,EAAE;UACnDG,QAAQ,EAAE;QACZ,CAAC,CAAC;MACJ;IACF,CAAC,EAAE,EAAE,CAAC;EACR,CAAC,EACD,CAAC/E,aAAa,CAChB,CAAC;EAED,MAAMgF,oBAAoB,GAAGzH,WAAW,CAAC,MAAM;IAC7CwC,OAAO,CAACkB,OAAO,EAAEgE,WAAW,CAAC;MAAEjB,QAAQ,EAAE;IAAK,CAAC,CAAC;IAChDhE,aAAa,CAAC8E,KAAK,GAAG7G,UAAU,CAAC,CAAC,EAAE;MAAE8G,QAAQ,EAAE;IAAI,CAAC,CAAC;IACtD9E,aAAa,CAACgB,OAAO,GAAG,IAAI;IAC5BJ,YAAY,CAAC,KAAK,CAAC;EACrB,CAAC,EAAE,CAACb,aAAa,CAAC,CAAC;EAEnB,MAAMkF,mBAAmB,GAAGlH,gBAAgB,CAAC,OAAO;IAClDmH,OAAO,EAAEnF,aAAa,CAAC8E,KAAK;IAC5BM,aAAa,EAAEpF,aAAa,CAAC8E,KAAK,KAAK,CAAC,GAAG,MAAM,GAAG;EACtD,CAAC,CAAC,CAAC;;EAEH;EACArH,SAAS,CAAC,MAAM;IACd,MAAM4H,YAAY,GAAGnG,QAAQ,CAACiB,MAAM;IACpC,MAAMmF,aAAa,GAAGpF,mBAAmB,CAACe,OAAO;IACjD,IAAIsE,SAAqC;IAEzC,IAAIF,YAAY,GAAGC,aAAa,EAAE;MAChC;MACA,MAAME,UAAU,GAAGtG,QAAQ,CAAC,CAAC,CAAC,EAAEmD,WAAW,IAAInD,QAAQ,CAAC,CAAC,CAAC,EAAEoD,WAAW;MACvE,MAAMmD,SAAS,GACbvG,QAAQ,CAACmG,YAAY,GAAG,CAAC,CAAC,EAAEhD,WAAW,IACvCnD,QAAQ,CAACmG,YAAY,GAAG,CAAC,CAAC,EAAE/C,WAAW;MACzC,MAAMoD,cAAc,GAAGtF,qBAAqB,CAACa,OAAO;MACpD,MAAM0E,aAAa,GAAGtF,oBAAoB,CAACY,OAAO;;MAElD;MACA,MAAM2E,YAAY,GAChBD,aAAa,KAAKF,SAAS,IAAID,UAAU,KAAKE,cAAc;;MAE9D;MACA,MAAMG,UAAU,GAAG3G,QAAQ,CAACmG,YAAY,GAAG,CAAC,CAAC;MAC7C,MAAMS,YAAY,GAAGD,UAAU,EAAEzD,MAAM,KAAKjD,aAAa;;MAEzD;MACA;MACA;MACA,MAAM4G,YAAY,GAChB,CAACH,YAAY,IACb,CAACrG,gBAAgB,KAChBuG,YAAY,IAAI7F,aAAa,CAACgB,OAAO,CAAC;MAEzC,IAAI8E,YAAY,EAAE;QAChBR,SAAS,GAAGnE,UAAU,CAAC,MAAM;UAC3BrB,OAAO,CAACkB,OAAO,EAAEgE,WAAW,CAAC;YAAEjB,QAAQ,EAAE;UAAK,CAAC,CAAC;UAChDhE,aAAa,CAAC8E,KAAK,GAAG7G,UAAU,CAAC,CAAC,EAAE;YAAE8G,QAAQ,EAAE;UAAI,CAAC,CAAC;UACtDlE,YAAY,CAAC,KAAK,CAAC;QACrB,CAAC,EAAE,GAAG,CAAC;MACT,CAAC,MAAM,IAAI,CAAC+E,YAAY,IAAI,CAACrG,gBAAgB,IAAI,CAACuG,YAAY,EAAE;QAC9D;QACAjF,YAAY,CAAC,IAAI,CAAC;MACpB;IACF;IAEAX,mBAAmB,CAACe,OAAO,GAAGoE,YAAY;IAC1C,IAAInG,QAAQ,CAACiB,MAAM,GAAG,CAAC,EAAE;MACvB;MACAC,qBAAqB,CAACa,OAAO,GAC3B/B,QAAQ,CAAC,CAAC,CAAC,EAAEmD,WAAW,IAAInD,QAAQ,CAAC,CAAC,CAAC,EAAEoD,WAAW,IAAI,IAAI;MAC9DjC,oBAAoB,CAACY,OAAO,GAC1B/B,QAAQ,CAACA,QAAQ,CAACiB,MAAM,GAAG,CAAC,CAAC,EAAEkC,WAAW,IAC1CnD,QAAQ,CAACA,QAAQ,CAACiB,MAAM,GAAG,CAAC,CAAC,EAAEmC,WAAW,IAC1C,IAAI;IACR;IAEA,OAAO,MAAM;MACX,IAAIiD,SAAS,EAAEpE,YAAY,CAACoE,SAAS,CAAC;IACxC,CAAC;EACH,CAAC,EAAE,CAACrG,QAAQ,EAAEK,gBAAgB,EAAES,aAAa,EAAEb,aAAa,CAAC,CAAC;;EAE9D;EACA1B,SAAS,CAAC,MAAM;IACd,OAAO,MAAM;MACX,IAAI6C,iBAAiB,CAACW,OAAO,EAAE;QAC7BE,YAAY,CAACb,iBAAiB,CAACW,OAAO,CAAC;MACzC;MACA,IAAIN,iBAAiB,CAACM,OAAO,EAAE;QAC7BE,YAAY,CAACR,iBAAiB,CAACM,OAAO,CAAC;MACzC;IACF,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,IAAI3B,SAAS,EAAE;IACb,oBACEV,IAAA,CAACT,UAAU,CAAC2E,IAAI;MAACkD,IAAI;MAACC,MAAM;MAACC,UAAU,EAAE9H,OAAO,CAAC+H,KAAM;MAAAtD,QAAA,eACrDjE,IAAA,CAAChB,iBAAiB;QAChBwI,KAAK,EAAEhI,OAAO,CAACiI,OAAO,CAACC,OAAO,CAACC,IAAK;QACpClF,IAAI,EAAC;MAAO,CACb;IAAC,CACa,CAAC;EAEtB;EAEA,oBACErC,KAAA,CAACb,UAAU,CAAC2E,IAAI;IAACkD,IAAI;IAACE,UAAU,EAAE9H,OAAO,CAAC+H,KAAM;IAACpD,KAAK,EAAEC,MAAM,CAACwD,SAAU;IAAA3D,QAAA,gBACvEjE,IAAA,CAACV,UAAU;MACTuI,GAAG,EAAE1G,OAAQ;MACb2G,IAAI,EAAExH,QAAS;MACf6C,UAAU,EAAEA,UAAW;MACvB4E,iBAAiB,EAAEjG,gBAAgB,CAACO,OAAQ;MAC5C2F,YAAY,EAAG5E,IAAI,IAAK6E,MAAM,CAAC7E,IAAI,CAACK,WAAW,IAAIL,IAAI,CAACM,WAAW,CAAE;MACrEwE,YAAY;MACZC,eAAe;MACfC,8BAA8B,EAAE,CAACzH,gBAAiB;MAClD0H,mBAAmB,EAAElD,oBAAqB;MAC1CmD,mBAAmB,EAAE,EAAG;MACxBC,QAAQ,EAAE3C,YAAa;MACvB4C,qBAAqB,EAAEpE,MAAM,CAACqE,OAAQ;MACtCC,qBAAqB,EAAE;QAAEC,KAAK,EAAE;MAAE,CAAE;MACpCC,mBAAmB,eACjB5I,IAAA,CAACF,qBAAqB;QAACY,SAAS,EAAEC;MAAiB,CAAE,CACtD;MACDkI,cAAc,EAAErD,kBAAmB;MACnCsD,uBAAuB,EAAE,GAAI;MAC7BC,YAAY,EAAEpD,gBAAiB;MAC/BqD,qBAAqB,EAAE,GAAI;MAC3BC,4BAA4B,EAAE,KAAM;MACpCC,kBAAkB;IAAA,CACnB,CAAC,eACFlJ,IAAA,CAACd,QAAQ,CAACgF,IAAI;MACZC,KAAK,EAAE,CAACC,MAAM,CAAC+E,oBAAoB,EAAE7C,mBAAmB,CAAE;MAAArC,QAAA,eAE1D7D,KAAA,CAACb,UAAU,CAAC6J,SAAS;QACnBC,OAAO,EAAEjD,oBAAqB;QAC9BkD,aAAa,EAAE,GAAI;QACnBnF,KAAK,EAAEC,MAAM,CAACmF,WAAY;QAC1BC,UAAU;QACVC,kBAAkB,EAAC,2BAA2B;QAC9CC,iBAAiB,EAAC,QAAQ;QAAAzF,QAAA,gBAE1BjE,IAAA,CAACN,MAAM,CAACuF,IAAI;UACVd,KAAK,EAAEC,MAAM,CAACuF,kBAAmB;UACjCF,kBAAkB,EAAC,EAAE;UAAAxF,QAAA,EACtB;QAED,CAAa,CAAC,EACbjC,SAAS,iBAAIhC,IAAA,CAACT,UAAU,CAAC2E,IAAI;UAACC,KAAK,EAAEC,MAAM,CAACwF;QAAM,CAAE,CAAC;MAAA,CAClC;IAAC,CACV,CAAC;EAAA,CACD,CAAC;AAEtB,CACF,CAAC;AAEDvJ,cAAc,CAACwJ,WAAW,GAAG,gBAAgB;AAE7C,MAAMzF,MAAM,GAAGnF,UAAU,CAAC6K,MAAM,CAAC;EAC/BlC,SAAS,EAAE;IACTmC,QAAQ,EAAE;EACZ,CAAC;EACD1F,UAAU,EAAE;IACV2F,KAAK,EAAE,MAAM;IACbC,iBAAiB,EAAExK,aAAa,CAAC,SAAS,CAAC;IAC3CyK,YAAY,EAAEzK,aAAa,CAAC,SAAS;EACvC,CAAC;EACD8E,cAAc,EAAE;IACd4F,UAAU,EAAE;EACd,CAAC;EACD7F,eAAe,EAAE;IACf6F,UAAU,EAAE;EACd,CAAC;EACD1B,OAAO,EAAE;IACP2B,eAAe,EAAE3K,aAAa,CAAC,SAAS,CAAC;IACzC4K,QAAQ,EAAE;EACZ,CAAC;EACDlB,oBAAoB,EAAE;IACpBY,QAAQ,EAAE,UAAU;IACpBO,MAAM,EAAE,EAAE;IACV3B,KAAK,EAAE,EAAE;IACT4B,MAAM,EAAE;EACV,CAAC;EACDhB,WAAW,EAAE;IACXQ,QAAQ,EAAE,UAAU;IACpBC,KAAK,EAAE,EAAE;IACT5H,MAAM,EAAE,EAAE;IACVoI,YAAY,EAAE,EAAE;IAChBC,eAAe,EAAEjL,OAAO,CAAC+H,KAAK;IAC9BmD,cAAc,EAAE,QAAQ;IACxBP,UAAU,EAAE,QAAQ;IACpBQ,WAAW,EAAEnL,OAAO,CAACoL,KAAK;IAC1BC,YAAY,EAAE;MAAEb,KAAK,EAAE,CAAC;MAAE5H,MAAM,EAAE;IAAE,CAAC;IACrC0I,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE,CAAC;IACfC,SAAS,EAAE;EACb,CAAC;EACDrB,kBAAkB,EAAE;IAClBsB,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,MAAM;IAClB1D,KAAK,EAAEhI,OAAO,CAACiI,OAAO,CAACC,OAAO,CAACC;EACjC,CAAC;EACD3C,QAAQ,EAAE;IACRmG,OAAO,EAAE,EAAE;IACXT,cAAc,EAAE,QAAQ;IACxBP,UAAU,EAAE;EACd,CAAC;EACDP,KAAK,EAAE;IACLG,QAAQ,EAAE,UAAU;IACpBqB,GAAG,EAAE,CAAC,CAAC;IACPzC,KAAK,EAAE,CAAC,CAAC;IACTqB,KAAK,EAAE,EAAE;IACT5H,MAAM,EAAE,EAAE;IACVoI,YAAY,EAAE,CAAC;IACfC,eAAe,EAAEjL,OAAO,CAACiI,OAAO,CAACC,OAAO,CAACC,IAAI;IAC7C0D,WAAW,EAAE,CAAC;IACdC,WAAW,EAAE9L,OAAO,CAAC+H;EACvB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -31,13 +31,15 @@ export const LegendChatMessage = /*#__PURE__*/memo(({
|
|
|
31
31
|
message,
|
|
32
32
|
isOutgoing,
|
|
33
33
|
createdAtTime,
|
|
34
|
-
onMediaPress
|
|
34
|
+
onMediaPress,
|
|
35
|
+
onPressUrl
|
|
35
36
|
}) => {
|
|
36
37
|
const MessageComponent = messageComponentMap[message?.contentType] ?? TextMessage;
|
|
37
38
|
|
|
38
39
|
// Only pass onMediaPress to components that use it
|
|
39
40
|
const mediaTypes = [MessageType.PictureMessage, MessageType.VideoMessage, MERGED_MESSAGE_TYPE];
|
|
40
41
|
const hasMediaPress = mediaTypes.includes(message?.contentType) && onMediaPress;
|
|
42
|
+
const hasUrlPress = onPressUrl && message?.contentType === MessageType.UrlTextMessage;
|
|
41
43
|
const props = {
|
|
42
44
|
message,
|
|
43
45
|
isOutgoing,
|
|
@@ -46,6 +48,9 @@ export const LegendChatMessage = /*#__PURE__*/memo(({
|
|
|
46
48
|
if (hasMediaPress) {
|
|
47
49
|
props.onMediaPress = onMediaPress;
|
|
48
50
|
}
|
|
51
|
+
if (hasUrlPress) {
|
|
52
|
+
props.onPressUrl = onPressUrl;
|
|
53
|
+
}
|
|
49
54
|
return /*#__PURE__*/_jsx(MessageComponent, {
|
|
50
55
|
...props
|
|
51
56
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["memo","MessageType","TextMessage","ImageMessage","VideoMessage","FileMessage","LinkMessage","MergedMessage","jsx","_jsx","MERGED_MESSAGE_TYPE","messageComponentMap","AtTextMessage","QuoteMessage","UrlTextMessage","PictureMessage","LegendChatMessage","message","isOutgoing","createdAtTime","onMediaPress","MessageComponent","contentType","mediaTypes","hasMediaPress","includes","props","displayName"],"sourceRoot":"../../../../../src","sources":["screens/chat-detail/legend/LegendChatMessage.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,OAAO;AAE5B,SAASC,WAAW,QAAQ,+BAA+B;AAG3D,SAASC,WAAW,QAAQ,mDAA0C;AACtE,SAASC,YAAY,QAAQ,oDAA2C;AACxE,SAASC,YAAY,QAAQ,oDAA2C;AACxE,SAASC,WAAW,QAAQ,mDAA0C;AACtE,SAASC,WAAW,QAAQ,mDAA0C;AACtE,SAASC,aAAa,QAAQ,qDAA4C;AAAC,SAAAC,GAAA,IAAAC,IAAA;
|
|
1
|
+
{"version":3,"names":["memo","MessageType","TextMessage","ImageMessage","VideoMessage","FileMessage","LinkMessage","MergedMessage","jsx","_jsx","MERGED_MESSAGE_TYPE","messageComponentMap","AtTextMessage","QuoteMessage","UrlTextMessage","PictureMessage","LegendChatMessage","message","isOutgoing","createdAtTime","onMediaPress","onPressUrl","MessageComponent","contentType","mediaTypes","hasMediaPress","includes","hasUrlPress","props","displayName"],"sourceRoot":"../../../../../src","sources":["screens/chat-detail/legend/LegendChatMessage.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,OAAO;AAE5B,SAASC,WAAW,QAAQ,+BAA+B;AAG3D,SAASC,WAAW,QAAQ,mDAA0C;AACtE,SAASC,YAAY,QAAQ,oDAA2C;AACxE,SAASC,YAAY,QAAQ,oDAA2C;AACxE,SAASC,WAAW,QAAQ,mDAA0C;AACtE,SAASC,WAAW,QAAQ,mDAA0C;AACtE,SAASC,aAAa,QAAQ,qDAA4C;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAU3E;AACA,MAAMC,mBAAmB,GAAG,GAAG,CAAC,CAAC;;AAEjC,MAAMC,mBAAqE,GAAG;EAC5E,CAACV,WAAW,CAACC,WAAW,GAAGA,WAAW;EACtC,CAACD,WAAW,CAACW,aAAa,GAAGV,WAAW;EACxC,CAACD,WAAW,CAACY,YAAY,GAAGX,WAAW;EACvC,CAACD,WAAW,CAACa,cAAc,GAAGR,WAAW;EACzC,CAACL,WAAW,CAACc,cAAc,GAAGZ,YAAY;EAC1C,CAACF,WAAW,CAACG,YAAY,GAAGA,YAAY;EACxC,CAACH,WAAW,CAACI,WAAW,GAAGA,WAAW;EACtC,CAACK,mBAAmB,GAAGH;AACzB,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMS,iBAAiB,gBAAGhB,IAAI,CACnC,CAAC;EACCiB,OAAO;EACPC,UAAU;EACVC,aAAa;EACbC,YAAY;EACZC;AACsB,CAAC,KAAK;EAC5B,MAAMC,gBAAgB,GACpBX,mBAAmB,CAACM,OAAO,EAAEM,WAAW,CAAC,IAAIrB,WAAW;;EAE1D;EACA,MAAMsB,UAAU,GAAG,CACjBvB,WAAW,CAACc,cAAc,EAC1Bd,WAAW,CAACG,YAAY,EACxBM,mBAAmB,CACpB;EACD,MAAMe,aAAa,GACjBD,UAAU,CAACE,QAAQ,CAACT,OAAO,EAAEM,WAAW,CAAC,IAAIH,YAAY;EAC3D,MAAMO,WAAW,GACfN,UAAU,IAAIJ,OAAO,EAAEM,WAAW,KAAKtB,WAAW,CAACa,cAAc;EAEnE,MAAMc,KAAU,GAAG;IACjBX,OAAO;IACPC,UAAU;IACVC;EACF,CAAC;EAED,IAAIM,aAAa,EAAE;IACjBG,KAAK,CAACR,YAAY,GAAGA,YAAY;EACnC;EACA,IAAIO,WAAW,EAAE;IACfC,KAAK,CAACP,UAAU,GAAGA,UAAU;EAC/B;EAEA,oBAAOZ,IAAA,CAACa,gBAAgB;IAAA,GAAKM;EAAK,CAAG,CAAC;AACxC,CACF,CAAC;AAEDZ,iBAAiB,CAACa,WAAW,GAAG,mBAAmB","ignoreList":[]}
|
package/lib/module/utils/url.js
CHANGED
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
// Generic TLDs
|
|
4
|
+
const GENERIC_TLDS = 'com|net|org|edu|gov|mil|int|biz|info|name|pro|mobi|travel|jobs|museum|coop|aero';
|
|
5
|
+
|
|
6
|
+
// New gTLDs (popular tech/startup)
|
|
7
|
+
const NEW_TLDS = 'io|app|dev|ai|co|me|tv|cc|gg|ly|fm|im|link|click|page|live|site|web|xyz|' + 'tech|digital|online|store|shop|cloud|media|news|blog|studio|agency|' + 'design|finance|health|legal|academy|solutions|ventures|capital|group';
|
|
8
|
+
|
|
9
|
+
// Country codes (Vietnam + Southeast Asia + popular worldwide)
|
|
10
|
+
const CC_TLDS = 'vn|jp|kr|cn|sg|th|ph|id|my|tw|hk|' + 'uk|us|ca|au|de|fr|it|es|nl|ru|br|in|' + 'ac|ad|ae|am|at|az|ba|be|bg|bh|bn|by|bz|' + 'ch|cl|cz|dk|dz|ec|ee|eg|es|eu|fi|ga|ge|' + 'gr|gt|hr|hu|ie|il|iq|ir|is|jo|ke|kh|kw|' + 'kz|la|lb|li|lk|lt|lu|lv|ma|mc|md|mk|mm|' + 'mn|mo|mt|mx|mz|na|ng|no|np|nz|om|pa|pe|' + 'pk|pl|pt|qa|ro|rs|sa|se|sk|sl|sr|sv|sy|' + 'tn|to|tr|tt|ua|ug|uy|uz|va|vc|ve|vu|ws|za|zm|zw';
|
|
11
|
+
const TLD_LIST = `${GENERIC_TLDS}|${NEW_TLDS}|${CC_TLDS}`;
|
|
12
|
+
|
|
13
|
+
// Matches: https://... | http://... | www.... | bare domain with known TLD (t.me, droppii.com)
|
|
14
|
+
const URL_REGEX = new RegExp(`\\b(?:https?:\\/\\/|www\\.)[^\\s<>"']*[^\\s<>"',.!?()[\\]{}]` + `|\\b[a-zA-Z0-9][\\w-]*(?:\\.[a-zA-Z0-9][\\w-]*)*\\.(?:${TLD_LIST})(?:[/?#][^\\s<>"']*[^\\s<>"',.!?()[\\]{}])?(?=\\s|$|[,!?()\\[\\]{}"'])`, 'g');
|
|
4
15
|
export function extractUrls(text) {
|
|
5
16
|
return text.match(URL_REGEX) ?? [];
|
|
6
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["URL_REGEX","extractUrls","text","match"],"sourceRoot":"../../../src","sources":["utils/url.ts"],"mappings":";;AAAA,MAAMA,SAAS,GAAG,
|
|
1
|
+
{"version":3,"names":["GENERIC_TLDS","NEW_TLDS","CC_TLDS","TLD_LIST","URL_REGEX","RegExp","extractUrls","text","match"],"sourceRoot":"../../../src","sources":["utils/url.ts"],"mappings":";;AAAA;AACA,MAAMA,YAAY,GAChB,iFAAiF;;AAEnF;AACA,MAAMC,QAAQ,GACZ,0EAA0E,GAC1E,qEAAqE,GACrE,sEAAsE;;AAExE;AACA,MAAMC,OAAO,GACX,mCAAmC,GACnC,sCAAsC,GACtC,yCAAyC,GACzC,yCAAyC,GACzC,yCAAyC,GACzC,yCAAyC,GACzC,yCAAyC,GACzC,yCAAyC,GACzC,iDAAiD;AAEnD,MAAMC,QAAQ,GAAG,GAAGH,YAAY,IAAIC,QAAQ,IAAIC,OAAO,EAAE;;AAEzD;AACA,MAAME,SAAS,GAAG,IAAIC,MAAM,CAC1B,8DAA8D,GAC5D,yDAAyDF,QAAQ,yEAAyE,EAC5I,GACF,CAAC;AAED,OAAO,SAASG,WAAWA,CAACC,IAAY,EAAY;EAClD,OAAOA,IAAI,CAACC,KAAK,CAACJ,SAAS,CAAC,IAAI,EAAE;AACpC","ignoreList":[]}
|
|
@@ -3,7 +3,8 @@ interface BaseLegendMessageProps {
|
|
|
3
3
|
message: DMessageItem;
|
|
4
4
|
isOutgoing: boolean;
|
|
5
5
|
createdAtTime: number;
|
|
6
|
+
onPressUrl?: (url: string) => void;
|
|
6
7
|
}
|
|
7
|
-
export declare const LinkMessage: import("react").MemoExoticComponent<({ message, isOutgoing, createdAtTime }: BaseLegendMessageProps) => import("react").JSX.Element>;
|
|
8
|
+
export declare const LinkMessage: import("react").MemoExoticComponent<({ message, isOutgoing, createdAtTime, onPressUrl, }: BaseLegendMessageProps) => import("react").JSX.Element>;
|
|
8
9
|
export {};
|
|
9
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/messages/linkMessage/index.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAKxD,UAAU,sBAAsB;IAC9B,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/messages/linkMessage/index.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAKxD,UAAU,sBAAsB;IAC9B,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AA2DD,eAAO,MAAM,WAAW,4FAMnB,sBAAsB,iCA+E1B,CAAC"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
export declare const useFetchUrlMetadata: (url?: string) => import("@tanstack/react-query").UseQueryResult<NoInfer<{
|
|
2
|
+
url: string;
|
|
3
|
+
title?: string;
|
|
4
|
+
description?: string;
|
|
5
|
+
image?: string;
|
|
6
|
+
}>, Error>;
|
|
3
7
|
//# sourceMappingURL=useFetchUrlMetadata.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFetchUrlMetadata.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/useLinkPreview/useFetchUrlMetadata.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useFetchUrlMetadata.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/useLinkPreview/useFetchUrlMetadata.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM;;;;;UAe5C,CAAC"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
export declare function useLinkPreview(value: string | undefined): {
|
|
2
2
|
isVisible: boolean;
|
|
3
|
-
metadata:
|
|
3
|
+
metadata: {
|
|
4
|
+
url: string;
|
|
5
|
+
title?: string;
|
|
6
|
+
description?: string;
|
|
7
|
+
image?: string;
|
|
8
|
+
};
|
|
4
9
|
isLoading: boolean;
|
|
5
10
|
dismiss: () => void;
|
|
6
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLinkPreview.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/useLinkPreview/useLinkPreview.ts"],"names":[],"mappings":"AAIA,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS
|
|
1
|
+
{"version":3,"file":"useLinkPreview.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/useLinkPreview/useLinkPreview.ts"],"names":[],"mappings":"AAIA,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS;;;;;;;;;;EA0BvD"}
|
|
@@ -25,4 +25,5 @@ export { ChatDetail, ChatDetailHeader, ChatComposer, ChatQuickActions, ChatAttac
|
|
|
25
25
|
export type { DChatActionItem, DChatActionIconProvider, DChatQuickAction, DChatAttachmentAction, ChatDetailProps, ChatDetailHeaderProps, ChatListProps, ChatComposerProps, ChatQuickActionsProps, ChatQuickActionsRenderParams, ChatAttachmentPanelProps, } from './screens/chat-detail';
|
|
26
26
|
export type { DGiftedChatMessage } from './utils/giftedChatMessage';
|
|
27
27
|
export { mapOpenIMMessageToGiftedChat, mapOpenIMMessagesToGiftedChat, } from './utils/giftedChatMessage';
|
|
28
|
+
export type { PeerType } from '@droppii/openim-rn-client-sdk';
|
|
28
29
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,eAAe,EACf,uBAAuB,EACvB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,qBAAqB,EACrB,aAAa,EACb,iBAAiB,EACjB,qBAAqB,EACrB,4BAA4B,EAC5B,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,eAAe,EACf,uBAAuB,EACvB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,qBAAqB,EACrB,aAAa,EACb,iBAAiB,EACjB,qBAAqB,EACrB,4BAA4B,EAC5B,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,2BAA2B,CAAC;AACnC,YAAY,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatComposer.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/ChatComposer.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AASjD,eAAO,MAAM,YAAY,+SAiBpB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"ChatComposer.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/ChatComposer.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AASjD,eAAO,MAAM,YAAY,+SAiBpB,iBAAiB,iCA0TrB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { ChatDetailProps } from './types';
|
|
2
|
-
declare const ChatDetail: import("react").MemoExoticComponent<({ conversationId, enabled, title, subtitle, avatarUri, avatarFullName, peerType, applicationType, showAddMember, getSubtitle, onBack, onPressSearch, onPressAddMember, onPressMenu, onPressAvatar, renderChat, showQuickActions, quickActions,
|
|
2
|
+
declare const ChatDetail: import("react").MemoExoticComponent<({ conversationId, enabled, title, subtitle, avatarUri, avatarFullName, peerType, applicationType, showAddMember, getSubtitle, onBack, onPressSearch, onPressAddMember, onPressMenu, onPressAvatar, renderChat, showQuickActions, quickActions, inputPlaceholder, onChangeInput, onPressAttach, onPressEmoji, attachmentActions, onQuickActionPress, onAttachmentAction, renderQuickAction, renderQuickActions, renderAttachmentAction, attachmentColumns, onPressUrl, }: ChatDetailProps) => import("react").JSX.Element>;
|
|
3
3
|
export default ChatDetail;
|
|
4
4
|
//# sourceMappingURL=ChatDetail.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatDetail.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/ChatDetail.tsx"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EACV,eAAe,EAGhB,MAAM,SAAS,CAAC;AAKjB,QAAA,MAAM,UAAU,gfAgCX,eAAe,
|
|
1
|
+
{"version":3,"file":"ChatDetail.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/ChatDetail.tsx"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EACV,eAAe,EAGhB,MAAM,SAAS,CAAC;AAKjB,QAAA,MAAM,UAAU,gfAgCX,eAAe,iCA6OnB,CAAC;AAUF,eAAe,UAAU,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { ChatListProps } from './types';
|
|
2
|
-
export declare const ChatListLegend: import("react").MemoExoticComponent<({ messages, currentUserId, renderChat, onLoadEarlier, isLoading, isLoadingEarlier, hasMoreEarlier, onLoadNewer, isLoadingNewer, hasMoreNewer, onMediaPress, }: ChatListProps) => import("react").JSX.Element>;
|
|
2
|
+
export declare const ChatListLegend: import("react").MemoExoticComponent<({ messages, currentUserId, renderChat, onLoadEarlier, isLoading, isLoadingEarlier, hasMoreEarlier, onLoadNewer, isLoadingNewer, hasMoreNewer, onMediaPress, onPressUrl, }: ChatListProps) => import("react").JSX.Element>;
|
|
3
3
|
//# sourceMappingURL=ChatListLegend.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatListLegend.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/ChatListLegend.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAM7C,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"ChatListLegend.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/ChatListLegend.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAM7C,eAAO,MAAM,cAAc,kNActB,aAAa,iCAqTjB,CAAC"}
|
|
@@ -5,11 +5,12 @@ interface LegendChatMessageProps {
|
|
|
5
5
|
isOutgoing: boolean;
|
|
6
6
|
createdAtTime: number;
|
|
7
7
|
onMediaPress?: (items: MediaItem[], index?: number) => void;
|
|
8
|
+
onPressUrl?: (url: string) => void;
|
|
8
9
|
}
|
|
9
10
|
/**
|
|
10
11
|
* Dispatcher component - renders the appropriate message component
|
|
11
12
|
* based on message type. Extensible for new message types.
|
|
12
13
|
*/
|
|
13
|
-
export declare const LegendChatMessage: import("react").MemoExoticComponent<({ message, isOutgoing, createdAtTime, onMediaPress, }: LegendChatMessageProps) => import("react").JSX.Element>;
|
|
14
|
+
export declare const LegendChatMessage: import("react").MemoExoticComponent<({ message, isOutgoing, createdAtTime, onMediaPress, onPressUrl, }: LegendChatMessageProps) => import("react").JSX.Element>;
|
|
14
15
|
export {};
|
|
15
16
|
//# sourceMappingURL=LegendChatMessage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegendChatMessage.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/legend/LegendChatMessage.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAQ/D,UAAU,sBAAsB;IAC9B,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"LegendChatMessage.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/legend/LegendChatMessage.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAQ/D,UAAU,sBAAsB;IAC9B,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5D,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAgBD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,0GAOzB,sBAAsB,iCA8B1B,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ReactNode } from 'react';
|
|
2
2
|
import type { MediaItem } from '../../hooks/useMediaViewer';
|
|
3
|
-
import type { DConversationItem, DMessageItem } from '../../types/chat';
|
|
3
|
+
import type { DChatApplicationType, DConversationItem, DMessageItem } from '../../types/chat';
|
|
4
4
|
import type { IUrlMetadata } from '../../types/common';
|
|
5
5
|
import type { PeerType } from '@droppii/openim-rn-client-sdk';
|
|
6
6
|
export type DChatActionIconProvider = 'MaterialCommunityIcons' | 'DroppiiNew';
|
|
@@ -76,6 +76,7 @@ export interface ChatListProps {
|
|
|
76
76
|
isLoadingNewer?: boolean;
|
|
77
77
|
hasMoreNewer?: boolean;
|
|
78
78
|
onMediaPress?: (items: MediaItem[], index?: number) => void;
|
|
79
|
+
onPressUrl?: (url: string) => void;
|
|
79
80
|
}
|
|
80
81
|
export interface ChatDetailProps extends Omit<ChatDetailHeaderProps, 'title' | 'subtitle' | 'avatarUri' | 'avatarFullName' | 'peerType' | 'applicationType' | 'showAddMember'> {
|
|
81
82
|
conversationId: string;
|
|
@@ -85,23 +86,15 @@ export interface ChatDetailProps extends Omit<ChatDetailHeaderProps, 'title' | '
|
|
|
85
86
|
avatarUri?: string | null;
|
|
86
87
|
avatarFullName?: string;
|
|
87
88
|
peerType?: PeerType;
|
|
88
|
-
applicationType?:
|
|
89
|
+
applicationType?: DChatApplicationType;
|
|
89
90
|
showAddMember?: boolean;
|
|
90
91
|
getSubtitle?: (conversation: DConversationItem) => string | undefined;
|
|
91
92
|
renderChat?: (item: DMessageItem) => ReactNode;
|
|
92
93
|
showQuickActions?: boolean;
|
|
93
94
|
showAttachmentActions?: boolean;
|
|
94
|
-
onLoadEarlier?: () => void;
|
|
95
|
-
isLoading?: boolean;
|
|
96
|
-
isLoadingEarlier?: boolean;
|
|
97
|
-
hasMoreEarlier?: boolean;
|
|
98
|
-
onLoadNewer?: () => void;
|
|
99
|
-
isLoadingNewer?: boolean;
|
|
100
|
-
hasMoreNewer?: boolean;
|
|
101
95
|
quickActions?: DChatQuickAction[];
|
|
102
96
|
getQuickActions?: (conversation: DConversationItem) => DChatQuickAction[] | undefined;
|
|
103
97
|
attachmentActions?: DChatAttachmentAction[];
|
|
104
|
-
inputValue?: string;
|
|
105
98
|
inputPlaceholder?: string;
|
|
106
99
|
onChangeInput?: (text: string) => void;
|
|
107
100
|
onSend?: () => void;
|
|
@@ -113,5 +106,6 @@ export interface ChatDetailProps extends Omit<ChatDetailHeaderProps, 'title' | '
|
|
|
113
106
|
renderQuickActions?: ChatQuickActionsProps['renderQuickActions'];
|
|
114
107
|
renderAttachmentAction?: ChatAttachmentPanelProps['renderAction'];
|
|
115
108
|
attachmentColumns?: number;
|
|
109
|
+
onPressUrl?: (url: string) => void;
|
|
116
110
|
}
|
|
117
111
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../../../src/utils/url.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../../../src/utils/url.ts"],"names":[],"mappings":"AA+BA,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAElD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@droppii-org/chat-mobile",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.12",
|
|
4
4
|
"description": "Droppii chat mobile",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react-native",
|
|
@@ -53,7 +53,8 @@
|
|
|
53
53
|
"!**/.*"
|
|
54
54
|
],
|
|
55
55
|
"workspaces": [
|
|
56
|
-
"example"
|
|
56
|
+
"example",
|
|
57
|
+
"exampleLegacy"
|
|
57
58
|
],
|
|
58
59
|
"scripts": {
|
|
59
60
|
"example": "yarn workspace @droppii-org/chat-mobile-example",
|
|
@@ -64,23 +65,16 @@
|
|
|
64
65
|
"test": "jest",
|
|
65
66
|
"release": "release-it --no-git --ci --no-increment",
|
|
66
67
|
"web": "vite",
|
|
67
|
-
"build:web": "vite build"
|
|
68
|
+
"build:web": "vite build",
|
|
69
|
+
"example-legacy": "yarn workspace @droppii-org/chat-mobile-example-legacy"
|
|
68
70
|
},
|
|
69
71
|
"dependencies": {
|
|
70
72
|
"@droppii/openim-rn-client-sdk": "git+ssh://git@github.com/droppii/open-im-sdk-reactnative.git#v1.0.0-rc8",
|
|
71
73
|
"@legendapp/list": "^3.0.6",
|
|
72
74
|
"axios": "^1.16.1",
|
|
73
75
|
"lodash": "^4.18.1",
|
|
74
|
-
"react-native-blob-util": "^0.24.10",
|
|
75
|
-
"react-native-create-thumbnail": "^2.2.0",
|
|
76
76
|
"react-native-fs": "^2.20.0",
|
|
77
77
|
"react-native-gifted-chat": "^3.3.3",
|
|
78
|
-
"react-native-image-crop-picker": "^0.51.1",
|
|
79
|
-
"react-native-permissions": "^5.6.0",
|
|
80
|
-
"react-native-photo-view": "git+ssh://git@github.com/droppii/react-native-photo-view.git",
|
|
81
|
-
"react-native-snap-carousel": "3.9.0",
|
|
82
|
-
"react-native-tab-view": "^4.3.1",
|
|
83
|
-
"react-native-video": "6.19.2",
|
|
84
78
|
"uuid": "^9.0.0"
|
|
85
79
|
},
|
|
86
80
|
"devDependencies": {
|
|
@@ -114,16 +108,24 @@
|
|
|
114
108
|
"lefthook": "^2.1.4",
|
|
115
109
|
"prettier": "^3.8.1",
|
|
116
110
|
"react-native": "^0.86.0",
|
|
111
|
+
"react-native-blob-util": "^0.24.10",
|
|
117
112
|
"react-native-builder-bob": "^0.41.0",
|
|
113
|
+
"react-native-create-thumbnail": "^2.2.0",
|
|
118
114
|
"react-native-device-info": "*",
|
|
119
115
|
"react-native-gesture-handler": "^3.0.0",
|
|
116
|
+
"react-native-image-crop-picker": "^0.51.1",
|
|
120
117
|
"react-native-keyboard-controller": "1.19.0",
|
|
121
118
|
"react-native-linear-gradient": "^2.8.3",
|
|
122
119
|
"react-native-mmkv": "4.0.0",
|
|
120
|
+
"react-native-permissions": "^5.6.0",
|
|
121
|
+
"react-native-photo-view": "git+ssh://git@github.com/droppii/react-native-photo-view.git",
|
|
123
122
|
"react-native-reanimated": "3.19.1",
|
|
124
123
|
"react-native-safe-area-context": "^5.8.0",
|
|
124
|
+
"react-native-snap-carousel": "3.9.0",
|
|
125
125
|
"react-native-svg": "^15.15.5",
|
|
126
|
+
"react-native-tab-view": "^4.3.1",
|
|
126
127
|
"react-native-vector-icons": "*",
|
|
128
|
+
"react-native-video": "6.19.2",
|
|
127
129
|
"react-native-web": "~0.21.1",
|
|
128
130
|
"release-it": "^19.2.4",
|
|
129
131
|
"turbo": "^2.8.21",
|
|
@@ -136,6 +138,7 @@
|
|
|
136
138
|
"react": "*",
|
|
137
139
|
"react-native": "*",
|
|
138
140
|
"react-native-blob-util": "*",
|
|
141
|
+
"react-native-create-thumbnail": "*",
|
|
139
142
|
"react-native-gesture-handler": "*",
|
|
140
143
|
"react-native-gifted-chat": "*",
|
|
141
144
|
"react-native-image-crop-picker": "*",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { memo } from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { StyleSheet } from 'react-native';
|
|
3
3
|
import {
|
|
4
4
|
KContainer,
|
|
5
5
|
KImage,
|
|
@@ -16,6 +16,7 @@ interface BaseLegendMessageProps {
|
|
|
16
16
|
message: DMessageItem;
|
|
17
17
|
isOutgoing: boolean;
|
|
18
18
|
createdAtTime: number;
|
|
19
|
+
onPressUrl?: (url: string) => void;
|
|
19
20
|
}
|
|
20
21
|
|
|
21
22
|
const parseUrlMetadata = (ex?: string): IUrlMetadata | undefined => {
|
|
@@ -23,26 +24,65 @@ const parseUrlMetadata = (ex?: string): IUrlMetadata | undefined => {
|
|
|
23
24
|
try {
|
|
24
25
|
const parsed = JSON.parse(ex) as any;
|
|
25
26
|
// Handle nested urlMetadata structure
|
|
26
|
-
return parsed
|
|
27
|
+
return parsed?.urlMetadata || undefined;
|
|
27
28
|
} catch {
|
|
28
29
|
return undefined;
|
|
29
30
|
}
|
|
30
31
|
};
|
|
31
32
|
|
|
32
|
-
const renderTextWithLinks = (
|
|
33
|
+
const renderTextWithLinks = (
|
|
34
|
+
content: string,
|
|
35
|
+
urls: string[],
|
|
36
|
+
onPressUrl?: (url: string) => void
|
|
37
|
+
) => {
|
|
33
38
|
if (!urls.length) {
|
|
34
|
-
return
|
|
39
|
+
return (
|
|
40
|
+
<KLabel.Text typo="TextMdNormal" color={CHAT_BUBBLE_COLORS.text}>
|
|
41
|
+
{content}
|
|
42
|
+
</KLabel.Text>
|
|
43
|
+
);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
const parts: { text: string; isUrl: boolean }[] = [];
|
|
47
|
+
let remaining = content;
|
|
48
|
+
|
|
49
|
+
for (const url of urls) {
|
|
50
|
+
const idx = remaining.indexOf(url);
|
|
51
|
+
if (idx === -1) continue;
|
|
52
|
+
if (idx > 0) parts.push({ text: remaining.slice(0, idx), isUrl: false });
|
|
53
|
+
parts.push({ text: url, isUrl: true });
|
|
54
|
+
remaining = remaining.slice(idx + url.length);
|
|
35
55
|
}
|
|
36
56
|
|
|
57
|
+
if (remaining) parts.push({ text: remaining, isUrl: false });
|
|
58
|
+
|
|
37
59
|
return (
|
|
38
60
|
<KLabel.Text typo="TextMdNormal" color={CHAT_BUBBLE_COLORS.text}>
|
|
39
|
-
{
|
|
61
|
+
{parts.map((part, i) =>
|
|
62
|
+
part.isUrl ? (
|
|
63
|
+
<KLabel.Text
|
|
64
|
+
key={i}
|
|
65
|
+
onPress={() => onPressUrl?.(part.text)}
|
|
66
|
+
color={KColors.primary.normal}
|
|
67
|
+
typo="TextMdMedium"
|
|
68
|
+
>
|
|
69
|
+
{part.text}
|
|
70
|
+
</KLabel.Text>
|
|
71
|
+
) : (
|
|
72
|
+
<KLabel.Text key={i}>{part.text}</KLabel.Text>
|
|
73
|
+
)
|
|
74
|
+
)}
|
|
40
75
|
</KLabel.Text>
|
|
41
76
|
);
|
|
42
77
|
};
|
|
43
78
|
|
|
44
79
|
export const LinkMessage = memo(
|
|
45
|
-
({
|
|
80
|
+
({
|
|
81
|
+
message,
|
|
82
|
+
isOutgoing,
|
|
83
|
+
createdAtTime,
|
|
84
|
+
onPressUrl,
|
|
85
|
+
}: BaseLegendMessageProps) => {
|
|
46
86
|
const content = message?.urlTextElem?.content;
|
|
47
87
|
const urls = message?.urlTextElem?.urls ?? [];
|
|
48
88
|
const metadata = parseUrlMetadata(message.ex);
|
|
@@ -62,10 +102,10 @@ export const LinkMessage = memo(
|
|
|
62
102
|
</KContainer.View>
|
|
63
103
|
)}
|
|
64
104
|
|
|
65
|
-
{metadata && (
|
|
105
|
+
{!!metadata && (
|
|
66
106
|
<KContainer.Touchable
|
|
67
107
|
style={styles.card}
|
|
68
|
-
onPress={() => metadata.url &&
|
|
108
|
+
onPress={() => metadata.url && onPressUrl?.(metadata.url)}
|
|
69
109
|
>
|
|
70
110
|
{!!metadata.image && (
|
|
71
111
|
<KContainer.View style={styles.cardThumb}>
|
|
@@ -11,7 +11,12 @@ export const useFetchUrlMetadata = (url?: string) =>
|
|
|
11
11
|
queryFn: async () => {
|
|
12
12
|
const path = `${ENDPOINTS.chatService.urlMetadata}?url=${url}`;
|
|
13
13
|
const res = await apiInstance?.get<BaseResponse<IUrlMetadata>>(path);
|
|
14
|
-
return res?.data?.data
|
|
14
|
+
return res?.data?.data?.title
|
|
15
|
+
? {
|
|
16
|
+
...res?.data?.data,
|
|
17
|
+
url,
|
|
18
|
+
}
|
|
19
|
+
: null;
|
|
15
20
|
},
|
|
16
21
|
enabled: !!url,
|
|
17
22
|
placeholderData: keepPreviousData,
|
|
@@ -25,7 +25,7 @@ export function useLinkPreview(value: string | undefined) {
|
|
|
25
25
|
|
|
26
26
|
const dismiss = useCallback(() => setIsDismissed(true), []);
|
|
27
27
|
|
|
28
|
-
const isVisible = !!detectedUrl && !isDismissed;
|
|
28
|
+
const isVisible = !!detectedUrl && !isDismissed && (isLoading || !!metadata);
|
|
29
29
|
|
|
30
|
-
return { isVisible, metadata, isLoading, dismiss };
|
|
30
|
+
return { isVisible, metadata: metadata || undefined, isLoading, dismiss };
|
|
31
31
|
}
|
package/src/index.tsx
CHANGED
|
@@ -137,7 +137,8 @@ export const ChatComposer = memo(
|
|
|
137
137
|
const hasAttachments = selectedImages.length > 0;
|
|
138
138
|
const hasText = (value ?? '').trim().length > 0;
|
|
139
139
|
// Only send metadata if preview is CURRENTLY visible (user didn't dismiss it)
|
|
140
|
-
const previewMetadata =
|
|
140
|
+
const previewMetadata =
|
|
141
|
+
showLinkPreview && !!urlMetadata ? urlMetadata : undefined;
|
|
141
142
|
const hasPreview = !!previewMetadata;
|
|
142
143
|
|
|
143
144
|
// Prevent sending while files are uploading
|
|
@@ -53,7 +53,6 @@ const ChatDetail = memo(
|
|
|
53
53
|
renderChat,
|
|
54
54
|
showQuickActions = true,
|
|
55
55
|
quickActions,
|
|
56
|
-
inputValue,
|
|
57
56
|
inputPlaceholder,
|
|
58
57
|
onChangeInput,
|
|
59
58
|
onPressAttach,
|
|
@@ -65,6 +64,7 @@ const ChatDetail = memo(
|
|
|
65
64
|
renderQuickActions,
|
|
66
65
|
renderAttachmentAction,
|
|
67
66
|
attachmentColumns,
|
|
67
|
+
onPressUrl,
|
|
68
68
|
}: ChatDetailProps) => {
|
|
69
69
|
const navigation = useNavigation();
|
|
70
70
|
const [internalInput, setInternalInput] = useState<string>('');
|
|
@@ -154,7 +154,7 @@ const ChatDetail = memo(
|
|
|
154
154
|
return getConversationSubtitle(conversation);
|
|
155
155
|
}, [conversation, getSubtitle, subtitle]);
|
|
156
156
|
|
|
157
|
-
const currentInput =
|
|
157
|
+
const currentInput = internalInput;
|
|
158
158
|
|
|
159
159
|
const handleChangeText = useCallback(
|
|
160
160
|
(text?: string) => {
|
|
@@ -263,6 +263,7 @@ const ChatDetail = memo(
|
|
|
263
263
|
onMediaPress={(items, index) => {
|
|
264
264
|
mediaViewerRef.current?.show(items, index);
|
|
265
265
|
}}
|
|
266
|
+
onPressUrl={onPressUrl}
|
|
266
267
|
/>
|
|
267
268
|
|
|
268
269
|
<ChatComposer
|
|
@@ -27,6 +27,7 @@ export const ChatListLegend = memo(
|
|
|
27
27
|
isLoadingNewer,
|
|
28
28
|
hasMoreNewer,
|
|
29
29
|
onMediaPress,
|
|
30
|
+
onPressUrl,
|
|
30
31
|
}: ChatListProps) => {
|
|
31
32
|
// Precompute all message data in single pass (O(n))
|
|
32
33
|
const messageDataMap = useMemo(
|
|
@@ -110,6 +111,7 @@ export const ChatListLegend = memo(
|
|
|
110
111
|
isOutgoing={isOutgoing}
|
|
111
112
|
createdAtTime={createdAt}
|
|
112
113
|
onMediaPress={onMediaPress}
|
|
114
|
+
onPressUrl={onPressUrl}
|
|
113
115
|
/>
|
|
114
116
|
)}
|
|
115
117
|
</KContainer.View>
|
|
@@ -133,6 +135,7 @@ export const ChatListLegend = memo(
|
|
|
133
135
|
messageDataMap,
|
|
134
136
|
handleItemLayout,
|
|
135
137
|
onMediaPress,
|
|
138
|
+
onPressUrl,
|
|
136
139
|
]
|
|
137
140
|
);
|
|
138
141
|
|
|
@@ -15,6 +15,7 @@ interface LegendChatMessageProps {
|
|
|
15
15
|
isOutgoing: boolean;
|
|
16
16
|
createdAtTime: number;
|
|
17
17
|
onMediaPress?: (items: MediaItem[], index?: number) => void;
|
|
18
|
+
onPressUrl?: (url: string) => void;
|
|
18
19
|
}
|
|
19
20
|
|
|
20
21
|
// OpenIM message types (not all exposed as MessageType enum)
|
|
@@ -41,6 +42,7 @@ export const LegendChatMessage = memo(
|
|
|
41
42
|
isOutgoing,
|
|
42
43
|
createdAtTime,
|
|
43
44
|
onMediaPress,
|
|
45
|
+
onPressUrl,
|
|
44
46
|
}: LegendChatMessageProps) => {
|
|
45
47
|
const MessageComponent =
|
|
46
48
|
messageComponentMap[message?.contentType] ?? TextMessage;
|
|
@@ -53,6 +55,8 @@ export const LegendChatMessage = memo(
|
|
|
53
55
|
];
|
|
54
56
|
const hasMediaPress =
|
|
55
57
|
mediaTypes.includes(message?.contentType) && onMediaPress;
|
|
58
|
+
const hasUrlPress =
|
|
59
|
+
onPressUrl && message?.contentType === MessageType.UrlTextMessage;
|
|
56
60
|
|
|
57
61
|
const props: any = {
|
|
58
62
|
message,
|
|
@@ -63,6 +67,9 @@ export const LegendChatMessage = memo(
|
|
|
63
67
|
if (hasMediaPress) {
|
|
64
68
|
props.onMediaPress = onMediaPress;
|
|
65
69
|
}
|
|
70
|
+
if (hasUrlPress) {
|
|
71
|
+
props.onPressUrl = onPressUrl;
|
|
72
|
+
}
|
|
66
73
|
|
|
67
74
|
return <MessageComponent {...props} />;
|
|
68
75
|
}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import type { ReactNode } from 'react';
|
|
2
2
|
|
|
3
3
|
import type { MediaItem } from '../../hooks/useMediaViewer';
|
|
4
|
-
import type {
|
|
4
|
+
import type {
|
|
5
|
+
DChatApplicationType,
|
|
6
|
+
DConversationItem,
|
|
7
|
+
DMessageItem,
|
|
8
|
+
} from '../../types/chat';
|
|
5
9
|
import type { IUrlMetadata } from '../../types/common';
|
|
6
10
|
import type { PeerType } from '@droppii/openim-rn-client-sdk';
|
|
7
11
|
|
|
@@ -89,6 +93,7 @@ export interface ChatListProps {
|
|
|
89
93
|
isLoadingNewer?: boolean;
|
|
90
94
|
hasMoreNewer?: boolean;
|
|
91
95
|
onMediaPress?: (items: MediaItem[], index?: number) => void;
|
|
96
|
+
onPressUrl?: (url: string) => void;
|
|
92
97
|
}
|
|
93
98
|
|
|
94
99
|
export interface ChatDetailProps extends Omit<
|
|
@@ -108,25 +113,17 @@ export interface ChatDetailProps extends Omit<
|
|
|
108
113
|
avatarUri?: string | null;
|
|
109
114
|
avatarFullName?: string;
|
|
110
115
|
peerType?: PeerType;
|
|
111
|
-
applicationType?:
|
|
116
|
+
applicationType?: DChatApplicationType;
|
|
112
117
|
showAddMember?: boolean;
|
|
113
118
|
getSubtitle?: (conversation: DConversationItem) => string | undefined;
|
|
114
119
|
renderChat?: (item: DMessageItem) => ReactNode;
|
|
115
120
|
showQuickActions?: boolean;
|
|
116
121
|
showAttachmentActions?: boolean;
|
|
117
|
-
onLoadEarlier?: () => void;
|
|
118
|
-
isLoading?: boolean;
|
|
119
|
-
isLoadingEarlier?: boolean;
|
|
120
|
-
hasMoreEarlier?: boolean;
|
|
121
|
-
onLoadNewer?: () => void;
|
|
122
|
-
isLoadingNewer?: boolean;
|
|
123
|
-
hasMoreNewer?: boolean;
|
|
124
122
|
quickActions?: DChatQuickAction[];
|
|
125
123
|
getQuickActions?: (
|
|
126
124
|
conversation: DConversationItem
|
|
127
125
|
) => DChatQuickAction[] | undefined;
|
|
128
126
|
attachmentActions?: DChatAttachmentAction[];
|
|
129
|
-
inputValue?: string;
|
|
130
127
|
inputPlaceholder?: string;
|
|
131
128
|
onChangeInput?: (text: string) => void;
|
|
132
129
|
onSend?: () => void;
|
|
@@ -138,4 +135,5 @@ export interface ChatDetailProps extends Omit<
|
|
|
138
135
|
renderQuickActions?: ChatQuickActionsProps['renderQuickActions'];
|
|
139
136
|
renderAttachmentAction?: ChatAttachmentPanelProps['renderAction'];
|
|
140
137
|
attachmentColumns?: number;
|
|
138
|
+
onPressUrl?: (url: string) => void;
|
|
141
139
|
}
|
package/src/utils/url.ts
CHANGED
|
@@ -1,4 +1,33 @@
|
|
|
1
|
-
|
|
1
|
+
// Generic TLDs
|
|
2
|
+
const GENERIC_TLDS =
|
|
3
|
+
'com|net|org|edu|gov|mil|int|biz|info|name|pro|mobi|travel|jobs|museum|coop|aero';
|
|
4
|
+
|
|
5
|
+
// New gTLDs (popular tech/startup)
|
|
6
|
+
const NEW_TLDS =
|
|
7
|
+
'io|app|dev|ai|co|me|tv|cc|gg|ly|fm|im|link|click|page|live|site|web|xyz|' +
|
|
8
|
+
'tech|digital|online|store|shop|cloud|media|news|blog|studio|agency|' +
|
|
9
|
+
'design|finance|health|legal|academy|solutions|ventures|capital|group';
|
|
10
|
+
|
|
11
|
+
// Country codes (Vietnam + Southeast Asia + popular worldwide)
|
|
12
|
+
const CC_TLDS =
|
|
13
|
+
'vn|jp|kr|cn|sg|th|ph|id|my|tw|hk|' +
|
|
14
|
+
'uk|us|ca|au|de|fr|it|es|nl|ru|br|in|' +
|
|
15
|
+
'ac|ad|ae|am|at|az|ba|be|bg|bh|bn|by|bz|' +
|
|
16
|
+
'ch|cl|cz|dk|dz|ec|ee|eg|es|eu|fi|ga|ge|' +
|
|
17
|
+
'gr|gt|hr|hu|ie|il|iq|ir|is|jo|ke|kh|kw|' +
|
|
18
|
+
'kz|la|lb|li|lk|lt|lu|lv|ma|mc|md|mk|mm|' +
|
|
19
|
+
'mn|mo|mt|mx|mz|na|ng|no|np|nz|om|pa|pe|' +
|
|
20
|
+
'pk|pl|pt|qa|ro|rs|sa|se|sk|sl|sr|sv|sy|' +
|
|
21
|
+
'tn|to|tr|tt|ua|ug|uy|uz|va|vc|ve|vu|ws|za|zm|zw';
|
|
22
|
+
|
|
23
|
+
const TLD_LIST = `${GENERIC_TLDS}|${NEW_TLDS}|${CC_TLDS}`;
|
|
24
|
+
|
|
25
|
+
// Matches: https://... | http://... | www.... | bare domain with known TLD (t.me, droppii.com)
|
|
26
|
+
const URL_REGEX = new RegExp(
|
|
27
|
+
`\\b(?:https?:\\/\\/|www\\.)[^\\s<>"']*[^\\s<>"',.!?()[\\]{}]` +
|
|
28
|
+
`|\\b[a-zA-Z0-9][\\w-]*(?:\\.[a-zA-Z0-9][\\w-]*)*\\.(?:${TLD_LIST})(?:[/?#][^\\s<>"']*[^\\s<>"',.!?()[\\]{}])?(?=\\s|$|[,!?()\\[\\]{}"'])`,
|
|
29
|
+
'g'
|
|
30
|
+
);
|
|
2
31
|
|
|
3
32
|
export function extractUrls(text: string): string[] {
|
|
4
33
|
return text.match(URL_REGEX) ?? [];
|