@droppii-org/chat-mobile 0.2.11 → 0.2.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (132) hide show
  1. package/lib/module/components/ThreadCard/AvatarSection.js +2 -3
  2. package/lib/module/components/ThreadCard/AvatarSection.js.map +1 -1
  3. package/lib/module/components/flows/inputButtons/index.js +77 -0
  4. package/lib/module/components/flows/inputButtons/index.js.map +1 -0
  5. package/lib/module/components/messages/linkMessage/index.js +35 -7
  6. package/lib/module/components/messages/linkMessage/index.js.map +1 -1
  7. package/lib/module/config/api-endpoints.js +1 -0
  8. package/lib/module/config/api-endpoints.js.map +1 -1
  9. package/lib/module/context/ChatDetailContext.js +57 -0
  10. package/lib/module/context/ChatDetailContext.js.map +1 -0
  11. package/lib/module/hooks/flows/useCurrentConversationFlow.js +9 -0
  12. package/lib/module/hooks/flows/useCurrentConversationFlow.js.map +1 -0
  13. package/lib/module/hooks/flows/useFlow.js +57 -0
  14. package/lib/module/hooks/flows/useFlow.js.map +1 -0
  15. package/lib/module/hooks/message/useSendMessage.js +4 -2
  16. package/lib/module/hooks/message/useSendMessage.js.map +1 -1
  17. package/lib/module/hooks/query-keys.js +4 -1
  18. package/lib/module/hooks/query-keys.js.map +1 -1
  19. package/lib/module/hooks/useConversationList.js +1 -1
  20. package/lib/module/hooks/useConversationList.js.map +1 -1
  21. package/lib/module/hooks/useLinkPreview/useFetchUrlMetadata.js +6 -4
  22. package/lib/module/hooks/useLinkPreview/useFetchUrlMetadata.js.map +1 -1
  23. package/lib/module/hooks/useLinkPreview/useLinkPreview.js +2 -2
  24. package/lib/module/hooks/useLinkPreview/useLinkPreview.js.map +1 -1
  25. package/lib/module/screens/chat-detail/ChatComposer.js +41 -3
  26. package/lib/module/screens/chat-detail/ChatComposer.js.map +1 -1
  27. package/lib/module/screens/chat-detail/ChatDetail.js +65 -60
  28. package/lib/module/screens/chat-detail/ChatDetail.js.map +1 -1
  29. package/lib/module/screens/chat-detail/ChatListLegend.js +45 -10
  30. package/lib/module/screens/chat-detail/ChatListLegend.js.map +1 -1
  31. package/lib/module/screens/chat-detail/ChatQuickActions.js +12 -3
  32. package/lib/module/screens/chat-detail/ChatQuickActions.js.map +1 -1
  33. package/lib/module/screens/chat-detail/conversationHeader.utils.js +1 -1
  34. package/lib/module/screens/chat-detail/conversationHeader.utils.js.map +1 -1
  35. package/lib/module/screens/chat-detail/legend/LegendChatMessage.js +6 -1
  36. package/lib/module/screens/chat-detail/legend/LegendChatMessage.js.map +1 -1
  37. package/lib/module/screens/inbox/Inbox.js +1 -3
  38. package/lib/module/screens/inbox/Inbox.js.map +1 -1
  39. package/lib/module/screens/inbox/MessagesTab.js +2 -1
  40. package/lib/module/screens/inbox/MessagesTab.js.map +1 -1
  41. package/lib/module/services/endpoints.js +4 -1
  42. package/lib/module/services/endpoints.js.map +1 -1
  43. package/lib/module/translation/resources/i18n.js +3 -1
  44. package/lib/module/translation/resources/i18n.js.map +1 -1
  45. package/lib/module/types/chat.js.map +1 -1
  46. package/lib/module/types/flows.js +17 -0
  47. package/lib/module/types/flows.js.map +1 -0
  48. package/lib/module/utils/flows.js +11 -0
  49. package/lib/module/utils/flows.js.map +1 -0
  50. package/lib/module/utils/url.js +12 -1
  51. package/lib/module/utils/url.js.map +1 -1
  52. package/lib/typescript/src/components/ThreadCard/AvatarSection.d.ts +1 -1
  53. package/lib/typescript/src/components/ThreadCard/AvatarSection.d.ts.map +1 -1
  54. package/lib/typescript/src/components/flows/inputButtons/index.d.ts +9 -0
  55. package/lib/typescript/src/components/flows/inputButtons/index.d.ts.map +1 -0
  56. package/lib/typescript/src/components/messages/linkMessage/index.d.ts +2 -1
  57. package/lib/typescript/src/components/messages/linkMessage/index.d.ts.map +1 -1
  58. package/lib/typescript/src/config/api-endpoints.d.ts +1 -0
  59. package/lib/typescript/src/config/api-endpoints.d.ts.map +1 -1
  60. package/lib/typescript/src/context/ChatDetailContext.d.ts +5 -0
  61. package/lib/typescript/src/context/ChatDetailContext.d.ts.map +1 -0
  62. package/lib/typescript/src/hooks/flows/useCurrentConversationFlow.d.ts +3 -0
  63. package/lib/typescript/src/hooks/flows/useCurrentConversationFlow.d.ts.map +1 -0
  64. package/lib/typescript/src/hooks/flows/useFlow.d.ts +4 -0
  65. package/lib/typescript/src/hooks/flows/useFlow.d.ts.map +1 -0
  66. package/lib/typescript/src/hooks/message/useSendMessage.d.ts +3 -1
  67. package/lib/typescript/src/hooks/message/useSendMessage.d.ts.map +1 -1
  68. package/lib/typescript/src/hooks/query-keys.d.ts +3 -0
  69. package/lib/typescript/src/hooks/query-keys.d.ts.map +1 -1
  70. package/lib/typescript/src/hooks/useConversationList.d.ts +2 -2
  71. package/lib/typescript/src/hooks/useConversationList.d.ts.map +1 -1
  72. package/lib/typescript/src/hooks/useLinkPreview/useFetchUrlMetadata.d.ts +6 -2
  73. package/lib/typescript/src/hooks/useLinkPreview/useFetchUrlMetadata.d.ts.map +1 -1
  74. package/lib/typescript/src/hooks/useLinkPreview/useLinkPreview.d.ts +6 -1
  75. package/lib/typescript/src/hooks/useLinkPreview/useLinkPreview.d.ts.map +1 -1
  76. package/lib/typescript/src/index.d.ts +1 -0
  77. package/lib/typescript/src/index.d.ts.map +1 -1
  78. package/lib/typescript/src/screens/chat-detail/ChatComposer.d.ts +1 -1
  79. package/lib/typescript/src/screens/chat-detail/ChatComposer.d.ts.map +1 -1
  80. package/lib/typescript/src/screens/chat-detail/ChatDetail.d.ts +1 -1
  81. package/lib/typescript/src/screens/chat-detail/ChatDetail.d.ts.map +1 -1
  82. package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts +1 -1
  83. package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts.map +1 -1
  84. package/lib/typescript/src/screens/chat-detail/ChatQuickActions.d.ts.map +1 -1
  85. package/lib/typescript/src/screens/chat-detail/conversationHeader.utils.d.ts.map +1 -1
  86. package/lib/typescript/src/screens/chat-detail/legend/LegendChatMessage.d.ts +2 -1
  87. package/lib/typescript/src/screens/chat-detail/legend/LegendChatMessage.d.ts.map +1 -1
  88. package/lib/typescript/src/screens/chat-detail/types.d.ts +5 -10
  89. package/lib/typescript/src/screens/chat-detail/types.d.ts.map +1 -1
  90. package/lib/typescript/src/screens/inbox/Inbox.d.ts +1 -2
  91. package/lib/typescript/src/screens/inbox/Inbox.d.ts.map +1 -1
  92. package/lib/typescript/src/screens/inbox/MessagesTab.d.ts +1 -2
  93. package/lib/typescript/src/screens/inbox/MessagesTab.d.ts.map +1 -1
  94. package/lib/typescript/src/services/endpoints.d.ts +3 -0
  95. package/lib/typescript/src/services/endpoints.d.ts.map +1 -1
  96. package/lib/typescript/src/translation/resources/i18n.d.ts.map +1 -1
  97. package/lib/typescript/src/types/chat.d.ts +11 -1
  98. package/lib/typescript/src/types/chat.d.ts.map +1 -1
  99. package/lib/typescript/src/types/flows.d.ts +82 -0
  100. package/lib/typescript/src/types/flows.d.ts.map +1 -0
  101. package/lib/typescript/src/utils/flows.d.ts +4 -0
  102. package/lib/typescript/src/utils/flows.d.ts.map +1 -0
  103. package/lib/typescript/src/utils/url.d.ts.map +1 -1
  104. package/package.json +6 -4
  105. package/src/components/ThreadCard/AvatarSection.tsx +2 -2
  106. package/src/components/flows/inputButtons/index.tsx +105 -0
  107. package/src/components/messages/linkMessage/index.tsx +48 -8
  108. package/src/config/api-endpoints.ts +2 -0
  109. package/src/context/ChatDetailContext.tsx +85 -0
  110. package/src/hooks/flows/useCurrentConversationFlow.ts +11 -0
  111. package/src/hooks/flows/useFlow.ts +63 -0
  112. package/src/hooks/message/useSendMessage.ts +4 -0
  113. package/src/hooks/query-keys.ts +6 -0
  114. package/src/hooks/useConversationList.ts +15 -7
  115. package/src/hooks/useLinkPreview/useFetchUrlMetadata.ts +7 -3
  116. package/src/hooks/useLinkPreview/useLinkPreview.ts +2 -2
  117. package/src/index.tsx +1 -0
  118. package/src/screens/chat-detail/ChatComposer.tsx +41 -2
  119. package/src/screens/chat-detail/ChatDetail.tsx +81 -74
  120. package/src/screens/chat-detail/ChatListLegend.tsx +57 -3
  121. package/src/screens/chat-detail/ChatQuickActions.tsx +10 -3
  122. package/src/screens/chat-detail/conversationHeader.utils.ts +1 -4
  123. package/src/screens/chat-detail/legend/LegendChatMessage.tsx +7 -0
  124. package/src/screens/chat-detail/types.ts +9 -10
  125. package/src/screens/inbox/Inbox.tsx +3 -15
  126. package/src/screens/inbox/MessagesTab.tsx +48 -49
  127. package/src/services/endpoints.ts +6 -0
  128. package/src/translation/resources/i18n.ts +2 -0
  129. package/src/types/chat.ts +16 -1
  130. package/src/types/flows.ts +102 -0
  131. package/src/utils/flows.ts +18 -0
  132. package/src/utils/url.ts +30 -1
@@ -7,8 +7,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
7
7
  export const AvatarSection = /*#__PURE__*/memo(({
8
8
  avatar,
9
9
  fullName,
10
- peerType,
11
- applicationType
10
+ peerType
12
11
  }) => {
13
12
  if (peerType === PeerType.Bot) {
14
13
  return /*#__PURE__*/_jsx(Avatar, {
@@ -19,7 +18,7 @@ export const AvatarSection = /*#__PURE__*/memo(({
19
18
  }
20
19
  });
21
20
  }
22
- if (peerType === PeerType.Customer || applicationType === 'MALL') {
21
+ if (peerType === PeerType.Customer) {
23
22
  return /*#__PURE__*/_jsx(Avatar, {
24
23
  source: avatar,
25
24
  fullName: fullName,
@@ -1 +1 @@
1
- {"version":3,"names":["memo","Avatar","PeerType","jsx","_jsx","AvatarSection","avatar","fullName","peerType","applicationType","Bot","source","badge","variant","Customer","displayName"],"sourceRoot":"../../../../src","sources":["components/ThreadCard/AvatarSection.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,OAAO;AAC5B,SAASC,MAAM,QAAQ,oBAAW;AAElC,SAASC,QAAQ,QAAQ,+BAA+B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AASzD,OAAO,MAAMC,aAAa,gBAAGL,IAAI,CAC/B,CAAC;EAAEM,MAAM;EAAEC,QAAQ;EAAEC,QAAQ;EAAEC;AAAoC,CAAC,KAAK;EACvE,IAAID,QAAQ,KAAKN,QAAQ,CAACQ,GAAG,EAAE;IAC7B,oBACEN,IAAA,CAACH,MAAM;MACLU,MAAM,EAAEL,MAAO;MACfC,QAAQ,EAAEA,QAAS;MACnBK,KAAK,EAAE;QAAEC,OAAO,EAAE;MAAM;IAAE,CAC3B,CAAC;EAEN;EAEA,IAAIL,QAAQ,KAAKN,QAAQ,CAACY,QAAQ,IAAIL,eAAe,KAAK,MAAM,EAAE;IAChE,oBACEL,IAAA,CAACH,MAAM;MACLU,MAAM,EAAEL,MAAO;MACfC,QAAQ,EAAEA,QAAS;MACnBK,KAAK,EAAE;QAAEC,OAAO,EAAE;MAAO;IAAE,CAC5B,CAAC;EAEN;EAEA,oBAAOT,IAAA,CAACH,MAAM;IAACU,MAAM,EAAEL,MAAO;IAACC,QAAQ,EAAEA;EAAS,CAAE,CAAC;AACvD,CACF,CAAC;AAEDF,aAAa,CAACU,WAAW,GAAG,eAAe","ignoreList":[]}
1
+ {"version":3,"names":["memo","Avatar","PeerType","jsx","_jsx","AvatarSection","avatar","fullName","peerType","Bot","source","badge","variant","Customer","displayName"],"sourceRoot":"../../../../src","sources":["components/ThreadCard/AvatarSection.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,OAAO;AAC5B,SAASC,MAAM,QAAQ,oBAAW;AAElC,SAASC,QAAQ,QAAQ,+BAA+B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AASzD,OAAO,MAAMC,aAAa,gBAAGL,IAAI,CAC/B,CAAC;EAAEM,MAAM;EAAEC,QAAQ;EAAEC;AAA6B,CAAC,KAAK;EACtD,IAAIA,QAAQ,KAAKN,QAAQ,CAACO,GAAG,EAAE;IAC7B,oBACEL,IAAA,CAACH,MAAM;MACLS,MAAM,EAAEJ,MAAO;MACfC,QAAQ,EAAEA,QAAS;MACnBI,KAAK,EAAE;QAAEC,OAAO,EAAE;MAAM;IAAE,CAC3B,CAAC;EAEN;EAEA,IAAIJ,QAAQ,KAAKN,QAAQ,CAACW,QAAQ,EAAE;IAClC,oBACET,IAAA,CAACH,MAAM;MACLS,MAAM,EAAEJ,MAAO;MACfC,QAAQ,EAAEA,QAAS;MACnBI,KAAK,EAAE;QAAEC,OAAO,EAAE;MAAO;IAAE,CAC5B,CAAC;EAEN;EAEA,oBAAOR,IAAA,CAACH,MAAM;IAACS,MAAM,EAAEJ,MAAO;IAACC,QAAQ,EAAEA;EAAS,CAAE,CAAC;AACvD,CACF,CAAC;AAEDF,aAAa,CAACS,WAAW,GAAG,eAAe","ignoreList":[]}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ import { KColors, KContainer, KImage, KLabel, KRadiusValue, KSpacingValue } from '@droppii/libs';
4
+ import { memo, useCallback } from 'react';
5
+ import { StyleSheet } from 'react-native';
6
+ import { messageStyles } from "../../messages/styles.js";
7
+ import { DEFAULT_BUTTON_ID } from "../../../utils/flows.js";
8
+ import { trans } from "../../../translation/index.js";
9
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
+ export const InputButtonFlow = /*#__PURE__*/memo(props => {
11
+ const {
12
+ nodeData,
13
+ onResetFlow,
14
+ onRunFlow
15
+ } = props || {};
16
+ const onPressItem = useCallback(item => {
17
+ if (item.id === DEFAULT_BUTTON_ID) {
18
+ onResetFlow?.();
19
+ } else {
20
+ onRunFlow?.({
21
+ actionId: item.id,
22
+ groupId: nodeData?.parentId || '',
23
+ childId: nodeData?.id || '',
24
+ plainText: item?.label || ''
25
+ });
26
+ }
27
+ }, [onRunFlow, onResetFlow, nodeData]);
28
+ const renderButtonItem = useCallback(item => {
29
+ return /*#__PURE__*/_jsxs(KContainer.Touchable, {
30
+ style: styles.buttonItem,
31
+ onPress: () => onPressItem(item),
32
+ children: [/*#__PURE__*/_jsx(KLabel.Text, {
33
+ typo: "TextMdMedium",
34
+ children: item?.id === DEFAULT_BUTTON_ID ? trans('restart') : item?.label || ''
35
+ }), /*#__PURE__*/_jsx(KImage.VectorIcons, {
36
+ name: "angle-right-o",
37
+ size: 20,
38
+ color: KColors.gray.light
39
+ })]
40
+ }, item.id);
41
+ }, [onPressItem]);
42
+ if (!nodeData) return null;
43
+ return /*#__PURE__*/_jsx(KContainer.View, {
44
+ style: messageStyles.wrapper,
45
+ children: /*#__PURE__*/_jsx(KContainer.View, {
46
+ style: styles.bubble,
47
+ children: /*#__PURE__*/_jsx(KContainer.View, {
48
+ style: styles.buttonsContainer,
49
+ children: nodeData?.data?.buttons?.map(item => renderButtonItem(item))
50
+ })
51
+ })
52
+ });
53
+ });
54
+ InputButtonFlow.displayName = 'InputButtonFlow';
55
+ const styles = StyleSheet.create({
56
+ bubble: {
57
+ padding: KSpacingValue['0.5rem'],
58
+ borderRadius: KSpacingValue['1.25rem'],
59
+ ...messageStyles.bubbleReceived,
60
+ marginVertical: KSpacingValue['0.5rem']
61
+ },
62
+ buttonsContainer: {
63
+ backgroundColor: KColors.white,
64
+ borderRadius: KRadiusValue['3x'],
65
+ paddingHorizontal: KSpacingValue['0.75rem']
66
+ },
67
+ buttonItem: {
68
+ flexDirection: 'row',
69
+ justifyContent: 'space-between',
70
+ alignItems: 'center',
71
+ gap: KSpacingValue['1rem'],
72
+ borderBottomWidth: 1,
73
+ borderBottomColor: KColors.border.light,
74
+ paddingVertical: KSpacingValue['0.5rem']
75
+ }
76
+ });
77
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["KColors","KContainer","KImage","KLabel","KRadiusValue","KSpacingValue","memo","useCallback","StyleSheet","messageStyles","DEFAULT_BUTTON_ID","trans","jsx","_jsx","jsxs","_jsxs","InputButtonFlow","props","nodeData","onResetFlow","onRunFlow","onPressItem","item","id","actionId","groupId","parentId","childId","plainText","label","renderButtonItem","Touchable","style","styles","buttonItem","onPress","children","Text","typo","VectorIcons","name","size","color","gray","light","View","wrapper","bubble","buttonsContainer","data","buttons","map","displayName","create","padding","borderRadius","bubbleReceived","marginVertical","backgroundColor","white","paddingHorizontal","flexDirection","justifyContent","alignItems","gap","borderBottomWidth","borderBottomColor","border","paddingVertical"],"sourceRoot":"../../../../../src","sources":["components/flows/inputButtons/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import { memo } from 'react';
4
- import { Linking, StyleSheet } from 'react-native';
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.urlMetadata || 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: content
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 && Linking.openURL(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","Linking","StyleSheet","KContainer","KImage","KLabel","KColors","KSpacingValue","formatMessageTime","CHAT_BUBBLE_COLORS","jsx","_jsx","jsxs","_jsxs","parseUrlMetadata","ex","undefined","parsed","JSON","parse","urlMetadata","renderTextWithLinks","content","urls","length","Text","typo","children","color","text","LinkMessage","message","isOutgoing","createdAtTime","urlTextElem","metadata","timeLabel","View","style","styles","wrapper","bubble","bubbleSent","bubbleReceived","trim","textRow","Touchable","card","onPress","url","openURL","image","cardThumb","Base","uri","absoluteFill","resizeMode","cardBody","title","palette","gray","w900","numberOfLines","primary","w400","description","normal","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":[]}
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":[]}
@@ -13,6 +13,7 @@
13
13
 
14
14
  const DEFAULT_ENDPOINTS = {
15
15
  urlMetadata: '/chat-service/v1/utils/url-metadata',
16
+ conversationFlow: '/chat-service/v1/app/conversations',
16
17
  imageUpload: '/uploader-service/v1/uploader/permanently'
17
18
  };
18
19
  let endpoints = {
@@ -1 +1 @@
1
- {"version":3,"names":["DEFAULT_ENDPOINTS","urlMetadata","imageUpload","endpoints","getApiEndpoint","key","setApiEndpoint","value","setAllApiEndpoints","newEndpoints","resetApiEndpoints","getAllApiEndpoints"],"sourceRoot":"../../../src","sources":["config/api-endpoints.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AASA,MAAMA,iBAA+B,GAAG;EACtCC,WAAW,EAAE,qCAAqC;EAClDC,WAAW,EAAE;AACf,CAAC;AAED,IAAIC,SAAuB,GAAG;EAAE,GAAGH;AAAkB,CAAC;;AAEtD;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMI,cAAc,GACzBC,GAAM,IACc;EACpB,OAAOF,SAAS,CAACE,GAAG,CAAC;AACvB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,cAAc,GAAGA,CAC5BD,GAAM,EACNE,KAAsB,KACnB;EACHJ,SAAS,CAACE,GAAG,CAAC,GAAGE,KAAK;AACxB,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,kBAAkB,GAAIC,YAAmC,IAAK;EACzEN,SAAS,GAAG;IACV,GAAGA,SAAS;IACZ,GAAGM;EACL,CAAC;AACH,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,iBAAiB,GAAGA,CAAA,KAAM;EACrCP,SAAS,GAAG;IAAE,GAAGH;EAAkB,CAAC;AACtC,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMW,kBAAkB,GAAGA,CAAA,MAAqB;EACrD,GAAGR;AACL,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["DEFAULT_ENDPOINTS","urlMetadata","conversationFlow","imageUpload","endpoints","getApiEndpoint","key","setApiEndpoint","value","setAllApiEndpoints","newEndpoints","resetApiEndpoints","getAllApiEndpoints"],"sourceRoot":"../../../src","sources":["config/api-endpoints.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAUA,MAAMA,iBAA+B,GAAG;EACtCC,WAAW,EAAE,qCAAqC;EAClDC,gBAAgB,EAAE,oCAAoC;EACtDC,WAAW,EAAE;AACf,CAAC;AAED,IAAIC,SAAuB,GAAG;EAAE,GAAGJ;AAAkB,CAAC;;AAEtD;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMK,cAAc,GACzBC,GAAM,IACc;EACpB,OAAOF,SAAS,CAACE,GAAG,CAAC;AACvB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,cAAc,GAAGA,CAC5BD,GAAM,EACNE,KAAsB,KACnB;EACHJ,SAAS,CAACE,GAAG,CAAC,GAAGE,KAAK;AACxB,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,kBAAkB,GAAIC,YAAmC,IAAK;EACzEN,SAAS,GAAG;IACV,GAAGA,SAAS;IACZ,GAAGM;EACL,CAAC;AACH,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,iBAAiB,GAAGA,CAAA,KAAM;EACrCP,SAAS,GAAG;IAAE,GAAGJ;EAAkB,CAAC;AACtC,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMY,kBAAkB,GAAGA,CAAA,MAAqB;EACrD,GAAGR;AACL,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ import { createContext, useCallback, useContext, useEffect, useMemo, useState } from 'react';
4
+ import { fechtCurrentConversationFlow } from "../hooks/flows/useCurrentConversationFlow.js";
5
+ import { useConversationStore } from "../store/index.js";
6
+ import { PeerType } from '@droppii/openim-rn-client-sdk';
7
+ import { jsx as _jsx } from "react/jsx-runtime";
8
+ export const ChatDetailContext = /*#__PURE__*/createContext({
9
+ isBotConversation: false,
10
+ conversationFlow: undefined,
11
+ refetchConversationFlow: () => {},
12
+ setConverationFlowStep: () => {}
13
+ });
14
+ export const useChatDetailContext = () => {
15
+ const context = useContext(ChatDetailContext);
16
+ if (!context) {
17
+ throw new Error('useChatDetailContext must be used within ChatDetailProvider');
18
+ }
19
+ return context;
20
+ };
21
+ export const ChatDetailProvider = ({
22
+ children
23
+ }) => {
24
+ const conversationId = useConversationStore(state => state.currentConversationId || '');
25
+ const conversation = useConversationStore(state => state.map[conversationId]);
26
+ const [conversationFlow, setConverationFlow] = useState(undefined);
27
+ const isBotConversation = useMemo(() => {
28
+ return conversation?.peerType === PeerType.Bot;
29
+ }, [conversation]);
30
+ const setConverationFlowStep = useCallback(step => {
31
+ setConverationFlow(prev => ({
32
+ ...prev,
33
+ flowCurrentStep: step
34
+ }));
35
+ }, []);
36
+ const getConversationFlow = useCallback(async () => {
37
+ const res = await fechtCurrentConversationFlow(conversationId);
38
+ if (res) {
39
+ setConverationFlow(res);
40
+ }
41
+ }, [conversationId]);
42
+ useEffect(() => {
43
+ if (!!conversationId && !!isBotConversation) {
44
+ getConversationFlow();
45
+ }
46
+ }, [conversationId, isBotConversation, getConversationFlow]);
47
+ return /*#__PURE__*/_jsx(ChatDetailContext.Provider, {
48
+ value: {
49
+ conversationFlow,
50
+ refetchConversationFlow: () => {},
51
+ setConverationFlowStep,
52
+ isBotConversation
53
+ },
54
+ children: children
55
+ });
56
+ };
57
+ //# sourceMappingURL=ChatDetailContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","useCallback","useContext","useEffect","useMemo","useState","fechtCurrentConversationFlow","useConversationStore","PeerType","jsx","_jsx","ChatDetailContext","isBotConversation","conversationFlow","undefined","refetchConversationFlow","setConverationFlowStep","useChatDetailContext","context","Error","ChatDetailProvider","children","conversationId","state","currentConversationId","conversation","map","setConverationFlow","peerType","Bot","step","prev","flowCurrentStep","getConversationFlow","res","Provider","value"],"sourceRoot":"../../../src","sources":["context/ChatDetailContext.tsx"],"mappings":";;AAAA,SACEA,aAAa,EACbC,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,OAAO,EACPC,QAAQ,QACH,OAAO;AAKd,SAASC,4BAA4B,QAAQ,8CAA2C;AACxF,SAASC,oBAAoB,QAAQ,mBAAU;AAC/C,SAASC,QAAQ,QAAQ,+BAA+B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGzD,OAAO,MAAMC,iBAAiB,gBAAGX,aAAa,CAAwB;EACpEY,iBAAiB,EAAE,KAAK;EACxBC,gBAAgB,EAAEC,SAAS;EAC3BC,uBAAuB,EAAEA,CAAA,KAAM,CAAC,CAAC;EACjCC,sBAAsB,EAAEA,CAAA,KAAM,CAAC;AACjC,CAAC,CAAC;AAEF,OAAO,MAAMC,oBAAoB,GAAGA,CAAA,KAA6B;EAC/D,MAAMC,OAAO,GAAGhB,UAAU,CAACS,iBAAiB,CAAC;EAC7C,IAAI,CAACO,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CACb,6DACF,CAAC;EACH;EACA,OAAOD,OAAO;AAChB,CAAC;AAED,OAAO,MAAME,kBAAkB,GAAGA,CAAC;EAAEC;AAAkC,CAAC,KAAK;EAC3E,MAAMC,cAAc,GAAGf,oBAAoB,CACxCgB,KAAK,IAAKA,KAAK,CAACC,qBAAqB,IAAI,EAC5C,CAAC;EACD,MAAMC,YAAY,GAAGlB,oBAAoB,CACtCgB,KAAK,IAAKA,KAAK,CAACG,GAAG,CAACJ,cAAc,CACrC,CAAC;EACD,MAAM,CAACT,gBAAgB,EAAEc,kBAAkB,CAAC,GAAGtB,QAAQ,CAErDS,SAAS,CAAC;EAEZ,MAAMF,iBAAiB,GAAGR,OAAO,CAAC,MAAM;IACtC,OAAOqB,YAAY,EAAEG,QAAQ,KAAKpB,QAAQ,CAACqB,GAAG;EAChD,CAAC,EAAE,CAACJ,YAAY,CAAC,CAAC;EAElB,MAAMT,sBAAsB,GAAGf,WAAW,CAAE6B,IAA2B,IAAK;IAC1EH,kBAAkB,CACfI,IAAI,KACF;MACC,GAAGA,IAAI;MACPC,eAAe,EAAEF;IACnB,CAAC,CACL,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMG,mBAAmB,GAAGhC,WAAW,CAAC,YAAY;IAClD,MAAMiC,GAAG,GAAG,MAAM5B,4BAA4B,CAACgB,cAAc,CAAC;IAC9D,IAAIY,GAAG,EAAE;MACPP,kBAAkB,CAACO,GAAG,CAAC;IACzB;EACF,CAAC,EAAE,CAACZ,cAAc,CAAC,CAAC;EAEpBnB,SAAS,CAAC,MAAM;IACd,IAAI,CAAC,CAACmB,cAAc,IAAI,CAAC,CAACV,iBAAiB,EAAE;MAC3CqB,mBAAmB,CAAC,CAAC;IACvB;EACF,CAAC,EAAE,CAACX,cAAc,EAAEV,iBAAiB,EAAEqB,mBAAmB,CAAC,CAAC;EAE5D,oBACEvB,IAAA,CAACC,iBAAiB,CAACwB,QAAQ;IACzBC,KAAK,EAAE;MACLvB,gBAAgB;MAChBE,uBAAuB,EAAEA,CAAA,KAAM,CAAC,CAAC;MACjCC,sBAAsB;MACtBJ;IACF,CAAE;IAAAS,QAAA,EAEDA;EAAQ,CACiB,CAAC;AAEjC,CAAC","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ import { ENDPOINTS } from "../../services/endpoints.js";
4
+ import { apiInstance } from "../../services/apis.js";
5
+ export const fechtCurrentConversationFlow = async conversationId => {
6
+ const res = await apiInstance?.get(ENDPOINTS.chatService.conversationFlow(conversationId));
7
+ return res?.data?.data || undefined;
8
+ };
9
+ //# sourceMappingURL=useCurrentConversationFlow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ENDPOINTS","apiInstance","fechtCurrentConversationFlow","conversationId","res","get","chatService","conversationFlow","data","undefined"],"sourceRoot":"../../../../src","sources":["hooks/flows/useCurrentConversationFlow.ts"],"mappings":";;AAAA,SAASA,SAAS,QAAQ,6BAA0B;AAEpD,SAASC,WAAW,QAAQ,wBAAqB;AAGjD,OAAO,MAAMC,4BAA4B,GAAG,MAAOC,cAAsB,IAAK;EAC5E,MAAMC,GAAG,GAAG,MAAMH,WAAW,EAAEI,GAAG,CAChCL,SAAS,CAACM,WAAW,CAACC,gBAAgB,CAACJ,cAAc,CACvD,CAAC;EACD,OAAOC,GAAG,EAAEI,IAAI,EAAEA,IAAI,IAAIC,SAAS;AACrC,CAAC","ignoreList":[]}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ import { useMutation } from '@tanstack/react-query';
4
+ import { conversationQueryKeys } from "../query-keys.js";
5
+ import { useConversationStore } from "../../store/index.js";
6
+ import { apiInstance } from "../../services/apis.js";
7
+ import { ENDPOINTS } from "../../services/endpoints.js";
8
+ import { useSendMessage } from "../message/useSendMessage.js";
9
+ import { useChatDetailContext } from "../../context/ChatDetailContext.js";
10
+ export const useResetFlow = () => {
11
+ const conversationId = useConversationStore(state => state.currentConversationId) || '';
12
+ const {
13
+ mutate: runFlow
14
+ } = useRunFlow();
15
+ return useMutation({
16
+ mutationKey: conversationQueryKeys.flow(conversationId),
17
+ mutationFn: async () => {
18
+ const res = await apiInstance?.post(ENDPOINTS.chatService.resetConversationFlow(conversationId), {});
19
+ return res?.data?.data || undefined;
20
+ },
21
+ onSuccess: data => {
22
+ if (data?.flowCurrentStep?.id) {
23
+ runFlow({
24
+ groupId: data?.flowCurrentStep?.id,
25
+ childId: null,
26
+ actionId: null
27
+ });
28
+ }
29
+ }
30
+ });
31
+ };
32
+ export const useRunFlow = () => {
33
+ const conversationId = useConversationStore(state => state.currentConversationId) || '';
34
+ const {
35
+ sendMessage
36
+ } = useSendMessage();
37
+ const {
38
+ setConverationFlowStep
39
+ } = useChatDetailContext();
40
+ return useMutation({
41
+ mutationKey: conversationQueryKeys.runFlow(conversationId),
42
+ mutationFn: async payload => {
43
+ await sendMessage({
44
+ plainText: payload?.plainText || '',
45
+ flow: payload
46
+ });
47
+ const res = await apiInstance?.post(ENDPOINTS.chatService.runConversationFlow(conversationId), payload);
48
+ return res?.data?.data || undefined;
49
+ },
50
+ onSuccess: data => {
51
+ if (data?.flowNextStep) {
52
+ setConverationFlowStep(data?.flowNextStep);
53
+ }
54
+ }
55
+ });
56
+ };
57
+ //# sourceMappingURL=useFlow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useMutation","conversationQueryKeys","useConversationStore","apiInstance","ENDPOINTS","useSendMessage","useChatDetailContext","useResetFlow","conversationId","state","currentConversationId","mutate","runFlow","useRunFlow","mutationKey","flow","mutationFn","res","post","chatService","resetConversationFlow","data","undefined","onSuccess","flowCurrentStep","id","groupId","childId","actionId","sendMessage","setConverationFlowStep","payload","plainText","runConversationFlow","flowNextStep"],"sourceRoot":"../../../../src","sources":["hooks/flows/useFlow.ts"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,uBAAuB;AACnD,SAASC,qBAAqB,QAAQ,kBAAe;AACrD,SAASC,oBAAoB,QAAQ,sBAAa;AAClD,SAASC,WAAW,QAAQ,wBAAqB;AAEjD,SAASC,SAAS,QAAQ,6BAA0B;AAMpD,SAASC,cAAc,QAAQ,8BAA2B;AAC1D,SAASC,oBAAoB,QAAQ,oCAAiC;AAEtE,OAAO,MAAMC,YAAY,GAAGA,CAAA,KAAM;EAChC,MAAMC,cAAc,GAClBN,oBAAoB,CAAEO,KAAK,IAAKA,KAAK,CAACC,qBAAqB,CAAC,IAAI,EAAE;EACpE,MAAM;IAAEC,MAAM,EAAEC;EAAQ,CAAC,GAAGC,UAAU,CAAC,CAAC;EACxC,OAAOb,WAAW,CAAC;IACjBc,WAAW,EAAEb,qBAAqB,CAACc,IAAI,CAACP,cAAc,CAAC;IACvDQ,UAAU,EAAE,MAAAA,CAAA,KAAY;MACtB,MAAMC,GAAG,GAAG,MAAMd,WAAW,EAAEe,IAAI,CACjCd,SAAS,CAACe,WAAW,CAACC,qBAAqB,CAACZ,cAAc,CAAC,EAC3D,CAAC,CACH,CAAC;MACD,OAAOS,GAAG,EAAEI,IAAI,EAAEA,IAAI,IAAIC,SAAS;IACrC,CAAC;IACDC,SAAS,EAAGF,IAAI,IAAK;MACnB,IAAIA,IAAI,EAAEG,eAAe,EAAEC,EAAE,EAAE;QAC7Bb,OAAO,CAAC;UACNc,OAAO,EAAEL,IAAI,EAAEG,eAAe,EAAEC,EAAE;UAClCE,OAAO,EAAE,IAAI;UACbC,QAAQ,EAAE;QACZ,CAAC,CAAC;MACJ;IACF;EACF,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,MAAMf,UAAU,GAAGA,CAAA,KAAM;EAC9B,MAAML,cAAc,GAClBN,oBAAoB,CAAEO,KAAK,IAAKA,KAAK,CAACC,qBAAqB,CAAC,IAAI,EAAE;EACpE,MAAM;IAAEmB;EAAY,CAAC,GAAGxB,cAAc,CAAC,CAAC;EACxC,MAAM;IAAEyB;EAAuB,CAAC,GAAGxB,oBAAoB,CAAC,CAAC;EACzD,OAAON,WAAW,CAAC;IACjBc,WAAW,EAAEb,qBAAqB,CAACW,OAAO,CAACJ,cAAc,CAAC;IAC1DQ,UAAU,EAAE,MAAOe,OAAoC,IAAK;MAC1D,MAAMF,WAAW,CAAC;QAChBG,SAAS,EAAED,OAAO,EAAEC,SAAS,IAAI,EAAE;QACnCjB,IAAI,EAAEgB;MACR,CAAC,CAAC;MACF,MAAMd,GAAG,GAAG,MAAMd,WAAW,EAAEe,IAAI,CAEjCd,SAAS,CAACe,WAAW,CAACc,mBAAmB,CAACzB,cAAc,CAAC,EAAEuB,OAAO,CAAC;MACrE,OAAOd,GAAG,EAAEI,IAAI,EAAEA,IAAI,IAAIC,SAAS;IACrC,CAAC;IACDC,SAAS,EAAGF,IAAI,IAAK;MACnB,IAAIA,IAAI,EAAEa,YAAY,EAAE;QACtBJ,sBAAsB,CAACT,IAAI,EAAEa,YAAY,CAAC;MAC5C;IACF;EACF,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}
@@ -13,7 +13,8 @@ export const useSendMessage = () => {
13
13
  const sendMessage = useCallback(async ({
14
14
  plainText,
15
15
  files,
16
- urlMetadata
16
+ urlMetadata,
17
+ flow
17
18
  }) => {
18
19
  const {
19
20
  userID: recvID,
@@ -44,7 +45,8 @@ export const useSendMessage = () => {
44
45
  for (const message of messageList) {
45
46
  const extendMessageInfo = {
46
47
  applicationType,
47
- urlMetadata
48
+ urlMetadata,
49
+ flow
48
50
  };
49
51
  const successMessage = await OpenIMSDK.sendMessage({
50
52
  groupID: groupID || '',
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useConversationStore","extractUrls","OpenIMSDK","useChatContext","generateContentBasedOnMessageType","useMessageStore","useSendMessage","applicationType","pushNewMessage","state","sendMessage","plainText","files","urlMetadata","userID","recvID","groupID","getState","getCurrentConversation","messageList","file","hasText","trim","hasPreview","url","urls","isUrlMessage","length","message","createUrlTextMessage","createTextMessage","push","extendMessageInfo","successMessage","ex","JSON","stringify","offlinePushInfo","generateOfflinePushInfo","contentType","conversationData","title","showName","desc","icon","faceURL","conversationId","iOSPushSound","iOSBadgeCount","text","textMessage","Date","getTime","toString","then","data","catch","errCode","errMsg","console","error","urlTextMessage"],"sourceRoot":"../../../../src","sources":["hooks/message/useSendMessage.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useConversationStore","extractUrls","OpenIMSDK","useChatContext","generateContentBasedOnMessageType","useMessageStore","useSendMessage","applicationType","pushNewMessage","state","sendMessage","plainText","files","urlMetadata","flow","userID","recvID","groupID","getState","getCurrentConversation","messageList","file","hasText","trim","hasPreview","url","urls","isUrlMessage","length","message","createUrlTextMessage","createTextMessage","push","extendMessageInfo","successMessage","ex","JSON","stringify","offlinePushInfo","generateOfflinePushInfo","contentType","conversationData","title","showName","desc","icon","faceURL","conversationId","iOSPushSound","iOSBadgeCount","text","textMessage","Date","getTime","toString","then","data","catch","errCode","errMsg","console","error","urlTextMessage"],"sourceRoot":"../../../../src","sources":["hooks/message/useSendMessage.ts"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,OAAO;AAEnC,SAASC,oBAAoB,QAAQ,sBAAa;AAMlD,SAASC,WAAW,QAAQ,oBAAiB;AAC7C,OAAOC,SAAS,MAAM,+BAA+B;AAErD,SAASC,cAAc,QAAQ,wBAAe;AAC9C,SAASC,iCAAiC,QAAQ,6BAA0B;AAC5E,SAASC,eAAe,QAAQ,wBAAqB;AAIrD,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAClC,MAAMC,eAAe,GAAGJ,cAAc,CAAC,CAAC,CAACI,eAAe;EACxD,MAAMC,cAAc,GAAGH,eAAe,CAAEI,KAAK,IAAKA,KAAK,CAACD,cAAc,CAAC;EAEvE,MAAME,WAAW,GAAGX,WAAW,CAC7B,OAAO;IACLY,SAAS;IACTC,KAAK;IACLC,WAAW;IACXC;EAMF,CAAC,KAAK;IACJ,MAAM;MAAEC,MAAM,EAAEC,MAAM;MAAEC;IAAQ,CAAC,GAC/BjB,oBAAoB,CAACkB,QAAQ,CAAC,CAAC,CAACC,sBAAsB,CAAC,CAAC,IAAI,CAAC,CAAC;IAChE,IAAI,CAACH,MAAM,IAAI,CAACC,OAAO,EAAE;IAEzB,MAAMG,WAA0B,GAAG,EAAE;IAErC,KAAK,MAAMC,IAAI,IAAIT,KAAK,IAAI,EAAE,EAAE;MAC9B,IAAI,CAACS,IAAI,EAAE;IACb;;IAEA;IACA,MAAMC,OAAO,GAAG,CAAC,CAACX,SAAS,IAAIA,SAAS,CAACY,IAAI,CAAC,CAAC,KAAK,EAAE;IACtD,MAAMC,UAAU,GAAG,CAAC,CAACX,WAAW,EAAEY,GAAG;IAErC,IAAIH,OAAO,IAAIE,UAAU,EAAE;MACzB,MAAME,IAAI,GAAGJ,OAAO,GAAGrB,WAAW,CAACU,SAAS,CAAC,GAAG,EAAE;MAClD,MAAMgB,YAAY,GAAGD,IAAI,CAACE,MAAM,GAAG,CAAC,IAAIJ,UAAU;MAClD,IAAIK,OAA2B,GAAG,IAAI;MAEtC,IAAIF,YAAY,EAAE;QAChB;QACAE,OAAO,GAAG,MAAMC,oBAAoB,CAACnB,SAAS,IAAI,EAAE,EAAEe,IAAI,CAAC;MAC7D,CAAC,MAAM,IAAIJ,OAAO,EAAE;QAClBO,OAAO,GAAG,MAAME,iBAAiB,CAACpB,SAAS,CAAC;MAC9C;MAEA,IAAI,CAACkB,OAAO,EAAE;MACdT,WAAW,CAACY,IAAI,CAACH,OAAO,CAAC;IAC3B;IAEA,KAAK,MAAMA,OAAO,IAAIT,WAAW,EAAE;MACjC,MAAMa,iBAAiC,GAAG;QACxC1B,eAAe;QACfM,WAAW;QACXC;MACF,CAAC;MAED,MAAMoB,cAAc,GAAG,MAAMhC,SAAS,CAACQ,WAAW,CAAC;QACjDO,OAAO,EAAEA,OAAO,IAAI,EAAE;QACtBD,MAAM,EAAEA,MAAM,IAAI,EAAE;QACpBa,OAAO,EAAE;UACP,GAAGA,OAAO;UACVM,EAAE,EAAEC,IAAI,CAACC,SAAS,CAACJ,iBAAiB,CAAC,IAAI;QAC3C,CAAC;QACDK,eAAe,EAAEC,uBAAuB,CACtCV,OAAO,CAACW,WAAW,EACnB7B,SAAS,IAAI,EACf;MACF,CAAC,CAAC;MAEFH,cAAc,CAAC0B,cAAc,CAAC;IAChC;EACF,CAAC,EACD,CAAC3B,eAAe,EAAEC,cAAc,CAClC,CAAC;EAED,OAAO;IACLE;EACF,CAAC;AACH,CAAC;AAED,MAAM6B,uBAAuB,GAAGA,CAC9BC,WAAwB,EACxB7B,SAAiB,KACd;EACH,MAAM8B,gBAAgB,GAAGzC,oBAAoB,EACzCkB,QAAQ,GAAG,CAAC,EACZC,sBAAsB,CAAC,CAAC;EAC5B,MAAMuB,KAAK,GAAGD,gBAAgB,EAAEE,QAAQ,IAAI,SAAS;EACrD,MAAMC,IAAI,GAAGxC,iCAAiC,CAACoC,WAAW,EAAE7B,SAAS,CAAC;EACtE,OAAO;IACL+B,KAAK;IACLE,IAAI;IACJT,EAAE,EAAEC,IAAI,CAACC,SAAS,CAAC;MACjBQ,IAAI,EAAEJ,gBAAgB,EAAEK,OAAO,IAAI,EAAE;MACrCC,cAAc,EAAEN,gBAAgB,EAAEM,cAAc,IAAI,EAAE;MACtDL,KAAK;MACLE;IACF,CAAC,CAAC;IACFI,YAAY,EAAE,SAAS;IACvBC,aAAa,EAAE;EACjB,CAAC;AACH,CAAC;AAED,OAAO,MAAMlB,iBAAiB,GAAG,MAAOmB,IAAY,IAAK;EACvD,IAAIC,WAAW,GAAG,MAAMjD,SAAS,CAAC6B,iBAAiB,CACjDmB,IAAI,EACJ,IAAIE,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC,CAACC,QAAQ,CAAC,CAChC,CAAC,CACEC,IAAI,CAAEC,IAAI,IAAK;IACd,OAAOA,IAAI;EACb,CAAC,CAAC,CACDC,KAAK,CAAC,CAAC;IAAEC,OAAO;IAAEC;EAAO,CAAC,KAAK;IAC9BC,OAAO,CAACC,KAAK,CAAC,mBAAmB,EAAEH,OAAO,EAAEC,MAAM,CAAC;IACnD,OAAO,IAAI;EACb,CAAC,CAAC;EACJ,OAAOR,WAAW;AACpB,CAAC;AAED,OAAO,MAAMrB,oBAAoB,GAAG,MAAAA,CAAOoB,IAAY,EAAExB,IAAc,KAAK;EAC1E,IAAIoC,cAAc,GAAG,MAAM5D,SAAS,CAAC4B,oBAAoB,CACvDoB,IAAI,EACJxB,IAAI,EACJ,IAAI0B,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC,CAACC,QAAQ,CAAC,CAChC,CAAC,CACEC,IAAI,CAAEC,IAAI,IAAK;IACd,OAAOA,IAAI;EACb,CAAC,CAAC,CACDC,KAAK,CAAC,CAAC;IAAEC,OAAO;IAAEC;EAAO,CAAC,KAAK;IAC9BC,OAAO,CAACC,KAAK,CAAC,sBAAsB,EAAEH,OAAO,EAAEC,MAAM,CAAC;IACtD,OAAO,IAAI;EACb,CAAC,CAAC;EACJ,OAAOG,cAAc;AACvB,CAAC","ignoreList":[]}
@@ -9,6 +9,9 @@ export const conversationQueryKeys = {
9
9
  lists: () => [...conversationQueryKeys.all, 'list'],
10
10
  list: applicationType => [...conversationQueryKeys.lists(), applicationType],
11
11
  details: () => [...conversationQueryKeys.all, 'detail'],
12
- detail: conversationId => [...conversationQueryKeys.details(), conversationId]
12
+ detail: conversationId => [...conversationQueryKeys.details(), conversationId],
13
+ flow: conversationId => ['conversationFlow', conversationId],
14
+ resetFlow: conversationId => ['resetConversationFlow', conversationId],
15
+ runFlow: conversationId => ['runConversationFlow', conversationId]
13
16
  };
14
17
  //# sourceMappingURL=query-keys.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["commonQueryKeys","all","urlMetadata","url","conversationQueryKeys","lists","list","applicationType","details","detail","conversationId"],"sourceRoot":"../../../src","sources":["hooks/query-keys.ts"],"mappings":";;AAAA,OAAO,MAAMA,eAAe,GAAG;EAC7BC,GAAG,EAAE,CAAC,QAAQ,CAAU;EACxBC,WAAW,EAAGC,GAAW,IAAK,CAAC,MAAM,EAAEA,GAAG;AAC5C,CAAC;AAED,OAAO,MAAMC,qBAAqB,GAAG;EACnCH,GAAG,EAAE,CAAC,eAAe,CAAU;EAC/BI,KAAK,EAAEA,CAAA,KAAM,CAAC,GAAGD,qBAAqB,CAACH,GAAG,EAAE,MAAM,CAAU;EAC5DK,IAAI,EAAGC,eAAuB,IAC5B,CAAC,GAAGH,qBAAqB,CAACC,KAAK,CAAC,CAAC,EAAEE,eAAe,CAAU;EAC9DC,OAAO,EAAEA,CAAA,KAAM,CAAC,GAAGJ,qBAAqB,CAACH,GAAG,EAAE,QAAQ,CAAU;EAChEQ,MAAM,EAAGC,cAAsB,IAC7B,CAAC,GAAGN,qBAAqB,CAACI,OAAO,CAAC,CAAC,EAAEE,cAAc;AACvD,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["commonQueryKeys","all","urlMetadata","url","conversationQueryKeys","lists","list","applicationType","details","detail","conversationId","flow","resetFlow","runFlow"],"sourceRoot":"../../../src","sources":["hooks/query-keys.ts"],"mappings":";;AAAA,OAAO,MAAMA,eAAe,GAAG;EAC7BC,GAAG,EAAE,CAAC,QAAQ,CAAU;EACxBC,WAAW,EAAGC,GAAW,IAAK,CAAC,MAAM,EAAEA,GAAG;AAC5C,CAAC;AAED,OAAO,MAAMC,qBAAqB,GAAG;EACnCH,GAAG,EAAE,CAAC,eAAe,CAAU;EAC/BI,KAAK,EAAEA,CAAA,KAAM,CAAC,GAAGD,qBAAqB,CAACH,GAAG,EAAE,MAAM,CAAU;EAC5DK,IAAI,EAAGC,eAAuB,IAC5B,CAAC,GAAGH,qBAAqB,CAACC,KAAK,CAAC,CAAC,EAAEE,eAAe,CAAU;EAC9DC,OAAO,EAAEA,CAAA,KAAM,CAAC,GAAGJ,qBAAqB,CAACH,GAAG,EAAE,QAAQ,CAAU;EAChEQ,MAAM,EAAGC,cAAsB,IAC7B,CAAC,GAAGN,qBAAqB,CAACI,OAAO,CAAC,CAAC,EAAEE,cAAc,CAAU;EAC/DC,IAAI,EAAGD,cAAsB,IAAK,CAAC,kBAAkB,EAAEA,cAAc,CAAC;EACtEE,SAAS,EAAGF,cAAsB,IAAK,CACrC,uBAAuB,EACvBA,cAAc,CACf;EACDG,OAAO,EAAGH,cAAsB,IAAK,CAAC,qBAAqB,EAAEA,cAAc;AAC7E,CAAC","ignoreList":[]}
@@ -25,7 +25,7 @@ function toConversationItem(raw) {
25
25
  return {
26
26
  ...raw,
27
27
  lastMessage,
28
- applicationType
28
+ applicationType: applicationType
29
29
  };
30
30
  }
31
31
  export function useConversationList({
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useQuery","OpenIMSDK","conversationQueryKeys","useConversationStore","toConversationItem","raw","lastMessage","latestMsg","JSON","parse","applicationType","ex","useConversationList","page","enabled","newConversationSignal","s","query","queryKey","list","queryFn","offset","rawList","getConversationListSplitApp","count","conversations","map","getState","updateConversations","refetch"],"sourceRoot":"../../../src","sources":["hooks/useConversationList.ts"],"mappings":";;AAAA,SAASA,SAAS,QAAQ,OAAO;AACjC,SAASC,QAAQ,QAAQ,uBAAuB;AAChD,OAAOC,SAAS,MAET,+BAA+B;AACtC,SAASC,qBAAqB,QAAQ,iBAAc;AACpD,SAASC,oBAAoB,QAAQ,mBAAU;AAS/C,SAASC,kBAAkBA,CAACC,GAAqB,EAAqB;EACpE,IAAIC,WAAqC;EACzC,IAAID,GAAG,CAACE,SAAS,EAAE;IACjB,IAAI;MACFD,WAAW,GAAGE,IAAI,CAACC,KAAK,CAACJ,GAAG,CAACE,SAAS,CAAiB;IACzD,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,IAAIG,eAAmC;EACvC,IAAIL,GAAG,CAACM,EAAE,EAAE;IACV,IAAI;MACFD,eAAe,GAAIF,IAAI,CAACC,KAAK,CAACJ,GAAG,CAACM,EAAE,CAAC,CAClCD,eAAe;IACpB,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,OAAO;IAAE,GAAIL,GAAyB;IAAEC,WAAW;IAAEI;EAAgB,CAAC;AACxE;AAEA,OAAO,SAASE,mBAAmBA,CAAC;EAClCF,eAAe;EACfG,IAAI,GAAG,CAAC;EACRC,OAAO,GAAG;AACJ,CAAC,EAAE;EACT,MAAMC,qBAAqB,GAAGZ,oBAAoB,CAC/Ca,CAAC,IAAKA,CAAC,CAACD,qBACX,CAAC;EAED,MAAME,KAAK,GAAGjB,QAAQ,CAAC;IACrBkB,QAAQ,EAAE,CAAC,GAAGhB,qBAAqB,CAACiB,IAAI,CAACT,eAAe,CAAC,EAAEG,IAAI,CAAC;IAChEC,OAAO,EAAEA,OAAO,KAAK,KAAK;IAC1BM,OAAO,EAAE,MAAAA,CAAA,KAAY;MACnB,MAAMC,MAAM,GAAG,CAACR,IAAI,GAAG,CAAC,IAAI,EAAE;MAC9B,MAAMS,OAAO,GAAG,MAAMrB,SAAS,CAACsB,2BAA2B,CAAC;QAC1DF,MAAM;QACNG,KAAK,EAAE,EAAE;QACTd;MACF,CAAC,CAAC;MAEF,MAAMe,aAAa,GAAGH,OAAO,CAACI,GAAG,CAACtB,kBAAkB,CAAC;MACrDD,oBAAoB,CAACwB,QAAQ,CAAC,CAAC,CAACC,mBAAmB,CAACH,aAAa,CAAC;MAClE,OAAOA,aAAa;IACtB;EACF,CAAC,CAAC;;EAEF;EACA;EACA1B,SAAS,CAAC,MAAM;IACd,IAAIgB,qBAAqB,GAAG,CAAC,EAAE;MAC7BE,KAAK,CAACY,OAAO,CAAC,CAAC;IACjB;IACA;EACF,CAAC,EAAE,CAACd,qBAAqB,CAAC,CAAC;EAE3B,OAAOE,KAAK;AACd","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useQuery","OpenIMSDK","conversationQueryKeys","useConversationStore","toConversationItem","raw","lastMessage","latestMsg","JSON","parse","applicationType","ex","useConversationList","page","enabled","newConversationSignal","s","query","queryKey","list","queryFn","offset","rawList","getConversationListSplitApp","count","conversations","map","getState","updateConversations","refetch"],"sourceRoot":"../../../src","sources":["hooks/useConversationList.ts"],"mappings":";;AAAA,SAASA,SAAS,QAAQ,OAAO;AACjC,SAASC,QAAQ,QAAQ,uBAAuB;AAChD,OAAOC,SAAS,MAET,+BAA+B;AACtC,SAASC,qBAAqB,QAAQ,iBAAc;AACpD,SAASC,oBAAoB,QAAQ,mBAAU;AAa/C,SAASC,kBAAkBA,CAACC,GAAqB,EAAqB;EACpE,IAAIC,WAAqC;EACzC,IAAID,GAAG,CAACE,SAAS,EAAE;IACjB,IAAI;MACFD,WAAW,GAAGE,IAAI,CAACC,KAAK,CAACJ,GAAG,CAACE,SAAS,CAAiB;IACzD,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,IAAIG,eAAiD;EACrD,IAAIL,GAAG,CAACM,EAAE,EAAE;IACV,IAAI;MACFD,eAAe,GACbF,IAAI,CAACC,KAAK,CAACJ,GAAG,CAACM,EAAE,CAAC,CAClBD,eAAe;IACnB,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,OAAO;IACL,GAAIL,GAAyB;IAC7BC,WAAW;IACXI,eAAe,EAAEA;EACnB,CAAC;AACH;AAEA,OAAO,SAASE,mBAAmBA,CAAC;EAClCF,eAAe;EACfG,IAAI,GAAG,CAAC;EACRC,OAAO,GAAG;AACJ,CAAC,EAAE;EACT,MAAMC,qBAAqB,GAAGZ,oBAAoB,CAC/Ca,CAAC,IAAKA,CAAC,CAACD,qBACX,CAAC;EAED,MAAME,KAAK,GAAGjB,QAAQ,CAAC;IACrBkB,QAAQ,EAAE,CAAC,GAAGhB,qBAAqB,CAACiB,IAAI,CAACT,eAAe,CAAC,EAAEG,IAAI,CAAC;IAChEC,OAAO,EAAEA,OAAO,KAAK,KAAK;IAC1BM,OAAO,EAAE,MAAAA,CAAA,KAAY;MACnB,MAAMC,MAAM,GAAG,CAACR,IAAI,GAAG,CAAC,IAAI,EAAE;MAC9B,MAAMS,OAAO,GAAG,MAAMrB,SAAS,CAACsB,2BAA2B,CAAC;QAC1DF,MAAM;QACNG,KAAK,EAAE,EAAE;QACTd;MACF,CAAC,CAAC;MACF,MAAMe,aAAa,GAAGH,OAAO,CAACI,GAAG,CAACtB,kBAAkB,CAAC;MACrDD,oBAAoB,CAACwB,QAAQ,CAAC,CAAC,CAACC,mBAAmB,CAACH,aAAa,CAAC;MAClE,OAAOA,aAAa;IACtB;EACF,CAAC,CAAC;;EAEF;EACA;EACA1B,SAAS,CAAC,MAAM;IACd,IAAIgB,qBAAqB,GAAG,CAAC,EAAE;MAC7BE,KAAK,CAACY,OAAO,CAAC,CAAC;IACjB;IACA;EACF,CAAC,EAAE,CAACd,qBAAqB,CAAC,CAAC;EAE3B,OAAOE,KAAK;AACd","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import { keepPreviousData, useQuery } from '@tanstack/react-query';
3
+ import { useQuery } from '@tanstack/react-query';
4
4
  import { commonQueryKeys } from "../query-keys.js";
5
5
  import { apiInstance } from "../../services/apis.js";
6
6
  import { ENDPOINTS } from "../../services/endpoints.js";
@@ -9,9 +9,11 @@ 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
- enabled: !!url,
15
- placeholderData: keepPreviousData
17
+ enabled: !!url
16
18
  });
17
19
  //# sourceMappingURL=useFetchUrlMetadata.js.map
@@ -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;EACxB,CAAC;EACDC,OAAO,EAAE,CAAC,CAACT,GAAG;EACdU,eAAe,EAAEhB;AACnB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useQuery","commonQueryKeys","apiInstance","ENDPOINTS","useFetchUrlMetadata","url","queryKey","urlMetadata","queryFn","path","chatService","res","get","data","title","enabled"],"sourceRoot":"../../../../src","sources":["hooks/useLinkPreview/useFetchUrlMetadata.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,uBAAuB;AAChD,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;AACb,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;EAE/C,OAAO;IAAEc,SAAS;IAAEJ,QAAQ;IAAEE,SAAS;IAAEC;EAAQ,CAAC;AACpD","ignoreList":[]}
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":[]}