@droppii-org/chat-mobile 0.2.107 → 0.2.109

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 (137) hide show
  1. package/lib/module/components/ThreadCard/ThreadCard.js +2 -0
  2. package/lib/module/components/ThreadCard/ThreadCard.js.map +1 -1
  3. package/lib/module/components/messages/fileMessage/index.js +9 -2
  4. package/lib/module/components/messages/fileMessage/index.js.map +1 -1
  5. package/lib/module/components/messages/quotedMessage/index.js +6 -1
  6. package/lib/module/components/messages/quotedMessage/index.js.map +1 -1
  7. package/lib/module/context/TimelinePressGuardContext.js +14 -0
  8. package/lib/module/context/TimelinePressGuardContext.js.map +1 -0
  9. package/lib/module/hooks/useConversationList.js +4 -0
  10. package/lib/module/hooks/useConversationList.js.map +1 -1
  11. package/lib/module/hooks/useDismissKeyboardFirst.js +19 -0
  12. package/lib/module/hooks/useDismissKeyboardFirst.js.map +1 -0
  13. package/lib/module/hooks/useExpandableText.js +6 -1
  14. package/lib/module/hooks/useExpandableText.js.map +1 -1
  15. package/lib/module/hooks/useGuardedPress.js +19 -0
  16. package/lib/module/hooks/useGuardedPress.js.map +1 -0
  17. package/lib/module/screens/ChatInfo/ChatInfo.js +12 -3
  18. package/lib/module/screens/ChatInfo/ChatInfo.js.map +1 -1
  19. package/lib/module/screens/ChatInfo/ChatInfoActions.js +45 -40
  20. package/lib/module/screens/ChatInfo/ChatInfoActions.js.map +1 -1
  21. package/lib/module/screens/ChatInfo/ChatInfoProfile.js +11 -7
  22. package/lib/module/screens/ChatInfo/ChatInfoProfile.js.map +1 -1
  23. package/lib/module/screens/chat-detail/ChatComposer.js +89 -498
  24. package/lib/module/screens/chat-detail/ChatComposer.js.map +1 -1
  25. package/lib/module/screens/chat-detail/ChatDetail.js +38 -20
  26. package/lib/module/screens/chat-detail/ChatDetail.js.map +1 -1
  27. package/lib/module/screens/chat-detail/ChatListLegend.js +113 -76
  28. package/lib/module/screens/chat-detail/ChatListLegend.js.map +1 -1
  29. package/lib/module/screens/chat-detail/components/ChatComposerAccessorySlot.js +47 -0
  30. package/lib/module/screens/chat-detail/components/ChatComposerAccessorySlot.js.map +1 -0
  31. package/lib/module/screens/chat-detail/components/ChatComposerInputArea.js +149 -0
  32. package/lib/module/screens/chat-detail/components/ChatComposerInputArea.js.map +1 -0
  33. package/lib/module/screens/chat-detail/components/ChatComposerStatusBanner.js +104 -0
  34. package/lib/module/screens/chat-detail/components/ChatComposerStatusBanner.js.map +1 -0
  35. package/lib/module/screens/chat-detail/hooks/useChatComposerAnimation.js +0 -17
  36. package/lib/module/screens/chat-detail/hooks/useChatComposerAnimation.js.map +1 -1
  37. package/lib/module/screens/chat-detail/hooks/useChatComposerState.js +16 -2
  38. package/lib/module/screens/chat-detail/hooks/useChatComposerState.js.map +1 -1
  39. package/lib/module/screens/chat-detail/hooks/useComposerBotMenu.js +122 -0
  40. package/lib/module/screens/chat-detail/hooks/useComposerBotMenu.js.map +1 -0
  41. package/lib/module/screens/chat-detail/hooks/useComposerPanelActions.js +46 -0
  42. package/lib/module/screens/chat-detail/hooks/useComposerPanelActions.js.map +1 -0
  43. package/lib/module/screens/chat-detail/hooks/useComposerPanelDismiss.js +75 -0
  44. package/lib/module/screens/chat-detail/hooks/useComposerPanelDismiss.js.map +1 -0
  45. package/lib/module/screens/chat-detail/hooks/useComposerPanels.js +136 -0
  46. package/lib/module/screens/chat-detail/hooks/useComposerPanels.js.map +1 -0
  47. package/lib/module/screens/chat-detail/hooks/useComposerSend.js +74 -0
  48. package/lib/module/screens/chat-detail/hooks/useComposerSend.js.map +1 -0
  49. package/lib/module/screens/chat-detail/legend/LegendChatMessage.js +2 -0
  50. package/lib/module/screens/chat-detail/legend/LegendChatMessage.js.map +1 -1
  51. package/lib/module/screens/chat-detail/types.js +5 -0
  52. package/lib/module/screens/chat-detail/types.js.map +1 -1
  53. package/lib/module/store/message.js +14 -0
  54. package/lib/module/store/message.js.map +1 -1
  55. package/lib/module/utils/composerPanelDismissGesture.js +52 -0
  56. package/lib/module/utils/composerPanelDismissGesture.js.map +1 -0
  57. package/lib/module/utils/perf-marker.js +44 -0
  58. package/lib/module/utils/perf-marker.js.map +1 -0
  59. package/lib/typescript/src/components/ThreadCard/ThreadCard.d.ts.map +1 -1
  60. package/lib/typescript/src/components/messages/fileMessage/index.d.ts.map +1 -1
  61. package/lib/typescript/src/components/messages/quotedMessage/index.d.ts.map +1 -1
  62. package/lib/typescript/src/context/TimelinePressGuardContext.d.ts +3 -0
  63. package/lib/typescript/src/context/TimelinePressGuardContext.d.ts.map +1 -0
  64. package/lib/typescript/src/hooks/useConversationList.d.ts.map +1 -1
  65. package/lib/typescript/src/hooks/useDismissKeyboardFirst.d.ts +8 -0
  66. package/lib/typescript/src/hooks/useDismissKeyboardFirst.d.ts.map +1 -0
  67. package/lib/typescript/src/hooks/useExpandableText.d.ts.map +1 -1
  68. package/lib/typescript/src/hooks/useGuardedPress.d.ts +9 -0
  69. package/lib/typescript/src/hooks/useGuardedPress.d.ts.map +1 -0
  70. package/lib/typescript/src/screens/ChatInfo/ChatInfo.d.ts.map +1 -1
  71. package/lib/typescript/src/screens/ChatInfo/ChatInfoActions.d.ts +2 -1
  72. package/lib/typescript/src/screens/ChatInfo/ChatInfoActions.d.ts.map +1 -1
  73. package/lib/typescript/src/screens/ChatInfo/ChatInfoProfile.d.ts +2 -1
  74. package/lib/typescript/src/screens/ChatInfo/ChatInfoProfile.d.ts.map +1 -1
  75. package/lib/typescript/src/screens/chat-detail/ChatComposer.d.ts +7 -3
  76. package/lib/typescript/src/screens/chat-detail/ChatComposer.d.ts.map +1 -1
  77. package/lib/typescript/src/screens/chat-detail/ChatDetail.d.ts.map +1 -1
  78. package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts +5 -1
  79. package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts.map +1 -1
  80. package/lib/typescript/src/screens/chat-detail/components/ChatComposerAccessorySlot.d.ts +12 -0
  81. package/lib/typescript/src/screens/chat-detail/components/ChatComposerAccessorySlot.d.ts.map +1 -0
  82. package/lib/typescript/src/screens/chat-detail/components/ChatComposerInputArea.d.ts +30 -0
  83. package/lib/typescript/src/screens/chat-detail/components/ChatComposerInputArea.d.ts.map +1 -0
  84. package/lib/typescript/src/screens/chat-detail/components/ChatComposerStatusBanner.d.ts +19 -0
  85. package/lib/typescript/src/screens/chat-detail/components/ChatComposerStatusBanner.d.ts.map +1 -0
  86. package/lib/typescript/src/screens/chat-detail/hooks/useChatComposerAnimation.d.ts +0 -1
  87. package/lib/typescript/src/screens/chat-detail/hooks/useChatComposerAnimation.d.ts.map +1 -1
  88. package/lib/typescript/src/screens/chat-detail/hooks/useChatComposerState.d.ts +7 -0
  89. package/lib/typescript/src/screens/chat-detail/hooks/useChatComposerState.d.ts.map +1 -1
  90. package/lib/typescript/src/screens/chat-detail/hooks/useComposerBotMenu.d.ts +7 -0
  91. package/lib/typescript/src/screens/chat-detail/hooks/useComposerBotMenu.d.ts.map +1 -0
  92. package/lib/typescript/src/screens/chat-detail/hooks/useComposerPanelActions.d.ts +17 -0
  93. package/lib/typescript/src/screens/chat-detail/hooks/useComposerPanelActions.d.ts.map +1 -0
  94. package/lib/typescript/src/screens/chat-detail/hooks/useComposerPanelDismiss.d.ts +12 -0
  95. package/lib/typescript/src/screens/chat-detail/hooks/useComposerPanelDismiss.d.ts.map +1 -0
  96. package/lib/typescript/src/screens/chat-detail/hooks/useComposerPanels.d.ts +25 -0
  97. package/lib/typescript/src/screens/chat-detail/hooks/useComposerPanels.d.ts.map +1 -0
  98. package/lib/typescript/src/screens/chat-detail/hooks/useComposerSend.d.ts +16 -0
  99. package/lib/typescript/src/screens/chat-detail/hooks/useComposerSend.d.ts.map +1 -0
  100. package/lib/typescript/src/screens/chat-detail/legend/LegendChatMessage.d.ts.map +1 -1
  101. package/lib/typescript/src/screens/chat-detail/types.d.ts +8 -0
  102. package/lib/typescript/src/screens/chat-detail/types.d.ts.map +1 -1
  103. package/lib/typescript/src/store/message.d.ts.map +1 -1
  104. package/lib/typescript/src/utils/composerPanelDismissGesture.d.ts +33 -0
  105. package/lib/typescript/src/utils/composerPanelDismissGesture.d.ts.map +1 -0
  106. package/lib/typescript/src/utils/perf-marker.d.ts +8 -0
  107. package/lib/typescript/src/utils/perf-marker.d.ts.map +1 -0
  108. package/package.json +2 -1
  109. package/src/components/ThreadCard/ThreadCard.tsx +2 -0
  110. package/src/components/messages/fileMessage/index.tsx +17 -3
  111. package/src/components/messages/quotedMessage/index.tsx +5 -1
  112. package/src/context/TimelinePressGuardContext.tsx +15 -0
  113. package/src/hooks/useConversationList.ts +2 -0
  114. package/src/hooks/useDismissKeyboardFirst.ts +19 -0
  115. package/src/hooks/useExpandableText.ts +5 -1
  116. package/src/hooks/useGuardedPress.ts +20 -0
  117. package/src/screens/ChatInfo/ChatInfo.tsx +10 -1
  118. package/src/screens/ChatInfo/ChatInfoActions.tsx +47 -39
  119. package/src/screens/ChatInfo/ChatInfoProfile.tsx +17 -12
  120. package/src/screens/chat-detail/ChatComposer.tsx +105 -631
  121. package/src/screens/chat-detail/ChatDetail.tsx +38 -20
  122. package/src/screens/chat-detail/ChatListLegend.tsx +122 -71
  123. package/src/screens/chat-detail/components/ChatComposerAccessorySlot.tsx +61 -0
  124. package/src/screens/chat-detail/components/ChatComposerInputArea.tsx +198 -0
  125. package/src/screens/chat-detail/components/ChatComposerStatusBanner.tsx +116 -0
  126. package/src/screens/chat-detail/hooks/useChatComposerAnimation.ts +0 -29
  127. package/src/screens/chat-detail/hooks/useChatComposerState.ts +25 -2
  128. package/src/screens/chat-detail/hooks/useComposerBotMenu.tsx +140 -0
  129. package/src/screens/chat-detail/hooks/useComposerPanelActions.ts +57 -0
  130. package/src/screens/chat-detail/hooks/useComposerPanelDismiss.ts +111 -0
  131. package/src/screens/chat-detail/hooks/useComposerPanels.ts +197 -0
  132. package/src/screens/chat-detail/hooks/useComposerSend.ts +98 -0
  133. package/src/screens/chat-detail/legend/LegendChatMessage.tsx +2 -0
  134. package/src/screens/chat-detail/types.ts +9 -0
  135. package/src/store/message.ts +14 -0
  136. package/src/utils/composerPanelDismissGesture.ts +72 -0
  137. package/src/utils/perf-marker.ts +39 -0
@@ -1 +1 @@
1
- {"version":3,"names":["create","DeviceEventEmitter","OpenIMSDK","MessageType","ViewType","ChatEvent","mergeMessages","isMessageRevoked","useConversationStore","PAGE_SIZE","useMessageStore","set","get","messages","hasMoreOld","hasMoreNew","initLoading","moreOldLoading","moreNewLoading","setMessages","hasMore","pushNewMessage","message","state","updateOneMessage","tmpList","idx","findIndex","msg","clientMsgID","deleteOneMessage","filter","getMoreOldMessages","loadMore","applicationType","conversationId","params","count","startClientMsgID","conversationID","viewType","History","res","getAdvancedHistoryMessageListApp","getState","currentConversationId","messageList","isEnd","error","console","log","getMoreNewMessages","length","getAdvancedHistoryMessageListReverseApp","Promise","resolve","setTimeout","emit","ScrollToBottom","searchMessages","startClientMsgId","searchPrevParams","Search","searchNextParams","searchCurrentParams","clientMsgIDList","findMessageList","searchPrevRes","searchNextRes","currentMessages","findResultItems","find","item","newMessages","targetMessage","TargetMessageUnavailable","ScrollToMessage","clientMessageId","reset","markMessageRevoked","alreadyRevoked","some","contentType","RevokeMessage","MessageRevoked","revokeQuotedReferences","forEach","quoteElem","quoteMessage","atTextElem"],"sourceRoot":"../../../src","sources":["store/message.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["create","DeviceEventEmitter","OpenIMSDK","MessageType","ViewType","ChatEvent","mergeMessages","isMessageRevoked","useConversationStore","perfMark","PAGE_SIZE","useMessageStore","set","get","messages","hasMoreOld","hasMoreNew","initLoading","moreOldLoading","moreNewLoading","setMessages","hasMore","pushNewMessage","message","state","updateOneMessage","tmpList","idx","findIndex","msg","clientMsgID","deleteOneMessage","filter","getMoreOldMessages","loadMore","applicationType","conversationId","params","count","startClientMsgID","conversationID","viewType","History","loaded","length","res","getAdvancedHistoryMessageListApp","received","messageList","isEnd","getState","currentConversationId","total","error","console","log","getMoreNewMessages","getAdvancedHistoryMessageListReverseApp","Promise","resolve","setTimeout","emit","ScrollToBottom","searchMessages","startClientMsgId","searchPrevParams","Search","searchNextParams","searchCurrentParams","clientMsgIDList","findMessageList","searchPrevRes","searchNextRes","currentMessages","findResultItems","find","item","newMessages","targetMessage","TargetMessageUnavailable","ScrollToMessage","clientMessageId","reset","markMessageRevoked","alreadyRevoked","some","contentType","RevokeMessage","MessageRevoked","revokeQuotedReferences","forEach","quoteElem","quoteMessage","atTextElem"],"sourceRoot":"../../../src","sources":["store/message.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Per-touch state for dismissing the composer's attachment/sticker panel by
5
+ * tapping the chat timeline: a touch that began while the panel was open and
6
+ * ended without dragging is a dismiss tap. Drag detection is explicit — a
7
+ * movement threshold or the list's scroll-begin — since the touch is only
8
+ * observed (touch events), never claimed as the JS responder.
9
+ */
10
+ export const DISMISS_DRAG_THRESHOLD_PX = 10;
11
+ export const IDLE_DISMISS_TOUCH = {
12
+ panelOpenAtStart: false,
13
+ dragged: false,
14
+ startX: 0,
15
+ startY: 0
16
+ };
17
+ export const startDismissTouch = (panelOpen, x, y) => ({
18
+ panelOpenAtStart: panelOpen,
19
+ dragged: false,
20
+ startX: x,
21
+ startY: y
22
+ });
23
+ export const moveDismissTouch = (touch, x, y) => {
24
+ if (touch.dragged) return touch;
25
+ const movedBeyondThreshold = Math.abs(x - touch.startX) > DISMISS_DRAG_THRESHOLD_PX || Math.abs(y - touch.startY) > DISMISS_DRAG_THRESHOLD_PX;
26
+ return movedBeyondThreshold ? {
27
+ ...touch,
28
+ dragged: true
29
+ } : touch;
30
+ };
31
+ export const markDismissTouchDragged = touch => touch.dragged ? touch : {
32
+ ...touch,
33
+ dragged: true
34
+ };
35
+
36
+ /** Whether releasing this touch should close the panel. */
37
+ export const shouldDismissOnRelease = touch => touch.panelOpenAtStart && !touch.dragged;
38
+
39
+ /**
40
+ * How long after the finger lifts a press still belongs to the dismissing
41
+ * touch. RNGH Tap and JS onPress callbacks land right after touchEnd; a later
42
+ * press (e.g. a screen-reader activation, which sends no touch events) must
43
+ * not be swallowed by a stale flag.
44
+ */
45
+ export const SWALLOW_AFTER_RELEASE_MS = 500;
46
+
47
+ /**
48
+ * Whether a timeline press must be swallowed. `releasedAt` is null while the
49
+ * dismissing touch is still down.
50
+ */
51
+ export const isPressSwallowed = (swallow, releasedAt, now) => swallow && (releasedAt === null || now - releasedAt < SWALLOW_AFTER_RELEASE_MS);
52
+ //# sourceMappingURL=composerPanelDismissGesture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DISMISS_DRAG_THRESHOLD_PX","IDLE_DISMISS_TOUCH","panelOpenAtStart","dragged","startX","startY","startDismissTouch","panelOpen","x","y","moveDismissTouch","touch","movedBeyondThreshold","Math","abs","markDismissTouchDragged","shouldDismissOnRelease","SWALLOW_AFTER_RELEASE_MS","isPressSwallowed","swallow","releasedAt","now"],"sourceRoot":"../../../src","sources":["utils/composerPanelDismissGesture.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMA,yBAAyB,GAAG,EAAE;AAS3C,OAAO,MAAMC,kBAAgC,GAAG;EAC9CC,gBAAgB,EAAE,KAAK;EACvBC,OAAO,EAAE,KAAK;EACdC,MAAM,EAAE,CAAC;EACTC,MAAM,EAAE;AACV,CAAC;AAED,OAAO,MAAMC,iBAAiB,GAAGA,CAC/BC,SAAkB,EAClBC,CAAS,EACTC,CAAS,MACS;EAClBP,gBAAgB,EAAEK,SAAS;EAC3BJ,OAAO,EAAE,KAAK;EACdC,MAAM,EAAEI,CAAC;EACTH,MAAM,EAAEI;AACV,CAAC,CAAC;AAEF,OAAO,MAAMC,gBAAgB,GAAGA,CAC9BC,KAAmB,EACnBH,CAAS,EACTC,CAAS,KACQ;EACjB,IAAIE,KAAK,CAACR,OAAO,EAAE,OAAOQ,KAAK;EAC/B,MAAMC,oBAAoB,GACxBC,IAAI,CAACC,GAAG,CAACN,CAAC,GAAGG,KAAK,CAACP,MAAM,CAAC,GAAGJ,yBAAyB,IACtDa,IAAI,CAACC,GAAG,CAACL,CAAC,GAAGE,KAAK,CAACN,MAAM,CAAC,GAAGL,yBAAyB;EACxD,OAAOY,oBAAoB,GAAG;IAAE,GAAGD,KAAK;IAAER,OAAO,EAAE;EAAK,CAAC,GAAGQ,KAAK;AACnE,CAAC;AAED,OAAO,MAAMI,uBAAuB,GAAIJ,KAAmB,IACzDA,KAAK,CAACR,OAAO,GAAGQ,KAAK,GAAG;EAAE,GAAGA,KAAK;EAAER,OAAO,EAAE;AAAK,CAAC;;AAErD;AACA,OAAO,MAAMa,sBAAsB,GAAIL,KAAmB,IACxDA,KAAK,CAACT,gBAAgB,IAAI,CAACS,KAAK,CAACR,OAAO;;AAE1C;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMc,wBAAwB,GAAG,GAAG;;AAE3C;AACA;AACA;AACA;AACA,OAAO,MAAMC,gBAAgB,GAAGA,CAC9BC,OAAgB,EAChBC,UAAyB,EACzBC,GAAW,KAEXF,OAAO,KACNC,UAAU,KAAK,IAAI,IAAIC,GAAG,GAAGD,UAAU,GAAGH,wBAAwB,CAAC","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Opt-in performance markers for the local perf framework (`performance/`).
5
+ *
6
+ * Internal, not exported from the package: only exampleLegacy (the perf harness) imports `enablePerfMarkers` directly.
7
+ * Disabled by default, so every call is a no-op in consumer apps. When enabled, markers are written as
8
+ * `[PERF] {"name":..,"t":<epoch ms>,...}` through console.log, which the perf runner reads from the device log.
9
+ * Durations are computed between markers on the device clock, so no host/device clock sync is needed.
10
+ */
11
+ let enabled = false;
12
+ const FLUSH_INTERVAL_MS = 500;
13
+ let renderCounts = {};
14
+ let flushTimer = null;
15
+ export const enablePerfMarkers = (on = true) => {
16
+ enabled = on;
17
+ };
18
+ export const perfMark = (name, data) => {
19
+ if (!enabled) return;
20
+ console.log(`[PERF] ${JSON.stringify({
21
+ name,
22
+ t: Date.now(),
23
+ ...data
24
+ })}`);
25
+ };
26
+ const flushRenderCounts = () => {
27
+ flushTimer = null;
28
+ const counts = renderCounts;
29
+ renderCounts = {};
30
+ perfMark('render_counts', {
31
+ counts
32
+ });
33
+ };
34
+
35
+ /**
36
+ * Counts render-function invocations of `component`, including renders React later discards.
37
+ * Counts are batched and emitted as a delta every ~500 ms, so logging never happens per render.
38
+ */
39
+ export const perfCountRender = component => {
40
+ if (!enabled) return;
41
+ renderCounts[component] = (renderCounts[component] ?? 0) + 1;
42
+ if (!flushTimer) flushTimer = setTimeout(flushRenderCounts, FLUSH_INTERVAL_MS);
43
+ };
44
+ //# sourceMappingURL=perf-marker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["enabled","FLUSH_INTERVAL_MS","renderCounts","flushTimer","enablePerfMarkers","on","perfMark","name","data","console","log","JSON","stringify","t","Date","now","flushRenderCounts","counts","perfCountRender","component","setTimeout"],"sourceRoot":"../../../src","sources":["utils/perf-marker.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAIA,OAAO,GAAG,KAAK;AACnB,MAAMC,iBAAiB,GAAG,GAAG;AAC7B,IAAIC,YAAoC,GAAG,CAAC,CAAC;AAC7C,IAAIC,UAAgD,GAAG,IAAI;AAE3D,OAAO,MAAMC,iBAAiB,GAAGA,CAACC,EAAE,GAAG,IAAI,KAAK;EAC9CL,OAAO,GAAGK,EAAE;AACd,CAAC;AAED,OAAO,MAAMC,QAAQ,GAAGA,CAACC,IAAY,EAAEC,IAA8B,KAAK;EACxE,IAAI,CAACR,OAAO,EAAE;EACdS,OAAO,CAACC,GAAG,CAAC,UAAUC,IAAI,CAACC,SAAS,CAAC;IAAEL,IAAI;IAAEM,CAAC,EAAEC,IAAI,CAACC,GAAG,CAAC,CAAC;IAAE,GAAGP;EAAK,CAAC,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED,MAAMQ,iBAAiB,GAAGA,CAAA,KAAM;EAC9Bb,UAAU,GAAG,IAAI;EACjB,MAAMc,MAAM,GAAGf,YAAY;EAC3BA,YAAY,GAAG,CAAC,CAAC;EACjBI,QAAQ,CAAC,eAAe,EAAE;IAAEW;EAAO,CAAC,CAAC;AACvC,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,eAAe,GAAIC,SAAiB,IAAK;EACpD,IAAI,CAACnB,OAAO,EAAE;EACdE,YAAY,CAACiB,SAAS,CAAC,GAAG,CAACjB,YAAY,CAACiB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;EAC5D,IAAI,CAAChB,UAAU,EACbA,UAAU,GAAGiB,UAAU,CAACJ,iBAAiB,EAAEf,iBAAiB,CAAC;AACjE,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadCard.d.ts","sourceRoot":"","sources":["../../../../../src/components/ThreadCard/ThreadCard.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAe1D,OAAO,EAIL,KAAK,gBAAgB,EAEtB,MAAM,+BAA+B,CAAC;AAMvC,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE;QACjB,IAAI,CAAC,EAAE,gBAAgB,CAAC;QACxB,KAAK,EAAE,qBAAqB,CAAC;KAC9B,KAAK,IAAI,CAAC;CACZ;AAED,QAAA,MAAM,UAAU,0DAA4B,eAAe,iCA6KzD,CAAC;AAIH,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"ThreadCard.d.ts","sourceRoot":"","sources":["../../../../../src/components/ThreadCard/ThreadCard.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAe1D,OAAO,EAIL,KAAK,gBAAgB,EAEtB,MAAM,+BAA+B,CAAC;AAOvC,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE;QACjB,IAAI,CAAC,EAAE,gBAAgB,CAAC;QACxB,KAAK,EAAE,qBAAqB,CAAC;KAC9B,KAAK,IAAI,CAAC;CACZ;AAED,QAAA,MAAM,UAAU,0DAA4B,eAAe,iCA8KzD,CAAC;AAIH,eAAe,UAAU,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/messages/fileMessage/index.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAQvD,eAAO,MAAM,WAAW,+EACmB,sBAAsB,iCAuIhE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/messages/fileMessage/index.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAWvD,eAAO,MAAM,WAAW,+EACmB,sBAAsB,iCAkJhE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/messages/quotedMessage/index.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAqB,KAAK,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAyB1E,UAAU,kBAAmB,SAAQ,sBAAsB;IACzD,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED,QAAA,MAAM,aAAa,8CAAgB,kBAAkB,iCA6JnD,CAAC;AAIH,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/messages/quotedMessage/index.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAqB,KAAK,sBAAsB,EAAE,MAAM,UAAU,CAAC;AA0B1E,UAAU,kBAAmB,SAAQ,sBAAsB;IACzD,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED,QAAA,MAAM,aAAa,8CAAgB,kBAAkB,iCAgKnD,CAAC;AAIH,eAAe,aAAa,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const TimelinePressGuardProvider: import("react").Provider<() => boolean>;
2
+ export declare const useTimelinePressGuard: () => () => boolean;
3
+ //# sourceMappingURL=TimelinePressGuardContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimelinePressGuardContext.d.ts","sourceRoot":"","sources":["../../../../src/context/TimelinePressGuardContext.tsx"],"names":[],"mappings":"AAWA,eAAO,MAAM,0BAA0B,iCAFe,OAAO,CAEe,CAAC;AAE7E,eAAO,MAAM,qBAAqB,cAJoB,OAKf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useConversationList.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useConversationList.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAE1D,KAAK,MAAM,GAAG;IACZ,eAAe,EAAE,oBAAoB,CAAC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,EAClC,eAAe,EACf,IAAQ,EACR,OAAc,GACf,EAAE,MAAM,8HAgCR"}
1
+ {"version":3,"file":"useConversationList.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useConversationList.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAG1D,KAAK,MAAM,GAAG;IACZ,eAAe,EAAE,oBAAoB,CAAC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,EAClC,eAAe,EACf,IAAQ,EACR,OAAc,GACf,EAAE,MAAM,8HAiCR"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Wraps a press that leaves the timeline (media viewer, link, file viewer) so
3
+ * the keyboard is dismissed first. The timeline uses
4
+ * `keyboardShouldPersistTaps="handled"`, so the keyboard would otherwise stay
5
+ * up over the screen the press opens. An absent handler stays absent.
6
+ */
7
+ export declare const useDismissKeyboardFirst: <A extends unknown[]>(handler: ((...args: A) => unknown) | undefined) => ((...args: A) => void) | undefined;
8
+ //# sourceMappingURL=useDismissKeyboardFirst.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDismissKeyboardFirst.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useDismissKeyboardFirst.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAAI,CAAC,SAAS,OAAO,EAAE,EACzD,SAAS,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,SAAS,KAC7C,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,SAOb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useExpandableText.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useExpandableText.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAEzE,OAAO,EACL,eAAe,EAGf,KAAK,cAAc,EACpB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,eAAe,EAAE,CAAC;AAiB3B,eAAO,MAAM,wBAAwB,YAA6B,CAAC;AAsBnE,MAAM,MAAM,kBAAkB,GAC1B,OAAO,GACP,WAAW,GACX,SAAS,GACT,WAAW,CAAC;AAEhB,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,cAAc;;;;sDAwCQ,eAAe;kDAgBf,eAAe;EAuB/C"}
1
+ {"version":3,"file":"useExpandableText.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useExpandableText.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAGzE,OAAO,EACL,eAAe,EAGf,KAAK,cAAc,EACpB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,eAAe,EAAE,CAAC;AAiB3B,eAAO,MAAM,wBAAwB,YAA6B,CAAC;AAsBnE,MAAM,MAAM,kBAAkB,GAC1B,OAAO,GACP,WAAW,GACX,SAAS,GACT,WAAW,CAAC;AAEhB,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,cAAc;;;;sDAwCQ,eAAe;kDAgBf,eAAe;EA0B/C"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Wraps a timeline press handler so it is skipped while `shouldSwallow()` is
3
+ * true — the tap-outside panel dismiss (useComposerPanelDismiss) swallows the
4
+ * press of a touch that began with a composer panel open. An absent handler
5
+ * stays absent, so "not tappable" rows keep behaving as before. The wrapper's
6
+ * return value is dropped: press handlers are fire-and-forget.
7
+ */
8
+ export declare const useGuardedPress: <A extends unknown[]>(handler: ((...args: A) => unknown) | undefined, shouldSwallow: (() => boolean) | undefined) => ((...args: A) => void) | undefined;
9
+ //# sourceMappingURL=useGuardedPress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGuardedPress.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useGuardedPress.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,OAAO,EAAE,EACjD,SAAS,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,SAAS,EAC9C,eAAe,CAAC,MAAM,OAAO,CAAC,GAAG,SAAS,KACzC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,SAOE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChatInfo.d.ts","sourceRoot":"","sources":["../../../../../src/screens/ChatInfo/ChatInfo.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;;AA0F7C,wBAAgD"}
1
+ {"version":3,"file":"ChatInfo.d.ts","sourceRoot":"","sources":["../../../../../src/screens/ChatInfo/ChatInfo.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;;AAmG7C,wBAAgD"}
@@ -8,7 +8,8 @@ interface ChatInfoActionsProps {
8
8
  onPressAddToGroup?: () => void;
9
9
  onPressLeaveGroup?: () => void;
10
10
  onDismissGroup?: () => void;
11
+ isNotInGroup?: boolean;
11
12
  }
12
- declare const ChatInfoActions: import("react").MemoExoticComponent<({ conversation, isTargetActive, isGroup, onPressOrders, onPressCreateGroup, onPressAddToGroup, onPressLeaveGroup, onDismissGroup, }: ChatInfoActionsProps) => import("react").JSX.Element>;
13
+ declare const ChatInfoActions: import("react").MemoExoticComponent<({ conversation, isTargetActive, isGroup, onPressOrders, onPressCreateGroup, onPressAddToGroup, onPressLeaveGroup, onDismissGroup, isNotInGroup, }: ChatInfoActionsProps) => import("react").JSX.Element>;
13
14
  export default ChatInfoActions;
14
15
  //# sourceMappingURL=ChatInfoActions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChatInfoActions.d.ts","sourceRoot":"","sources":["../../../../../src/screens/ChatInfo/ChatInfoActions.tsx"],"names":[],"mappings":"AAQA,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,+BAA+B,CAAC;AAQvC,UAAU,oBAAoB;IAC5B,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,cAAc,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED,QAAA,MAAM,eAAe,4KAUhB,oBAAoB,iCAuNxB,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"ChatInfoActions.d.ts","sourceRoot":"","sources":["../../../../../src/screens/ChatInfo/ChatInfoActions.tsx"],"names":[],"mappings":"AAQA,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,+BAA+B,CAAC;AAQvC,UAAU,oBAAoB;IAC5B,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,cAAc,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,QAAA,MAAM,eAAe,0LAWhB,oBAAoB,iCA6NxB,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -2,7 +2,8 @@ import { type ConversationItem } from '@droppii/openim-rn-client-sdk';
2
2
  interface ChatInfoProfileProps {
3
3
  conversation?: ConversationItem;
4
4
  onPressSearch?: () => void;
5
+ isNotInGroup?: boolean;
5
6
  }
6
- declare const ChatInfoProfile: import("react").MemoExoticComponent<({ conversation, onPressSearch }: ChatInfoProfileProps) => import("react").JSX.Element>;
7
+ declare const ChatInfoProfile: import("react").MemoExoticComponent<({ conversation, onPressSearch, isNotInGroup }: ChatInfoProfileProps) => import("react").JSX.Element>;
7
8
  export default ChatInfoProfile;
8
9
  //# sourceMappingURL=ChatInfoProfile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChatInfoProfile.d.ts","sourceRoot":"","sources":["../../../../../src/screens/ChatInfo/ChatInfoProfile.tsx"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,+BAA+B,CAAC;AAwCvC,UAAU,oBAAoB;IAC5B,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED,QAAA,MAAM,eAAe,wEACe,oBAAoB,iCAuFvD,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"ChatInfoProfile.d.ts","sourceRoot":"","sources":["../../../../../src/screens/ChatInfo/ChatInfoProfile.tsx"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,+BAA+B,CAAC;AAwCvC,UAAU,oBAAoB;IAC5B,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,QAAA,MAAM,eAAe,sFAC6B,oBAAoB,iCA2FrE,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { type RefObject } from 'react';
2
- import { type LayoutChangeEvent, type View } from 'react-native';
3
- import { type DChatPannelAction } from './types';
2
+ import type { LayoutChangeEvent, View } from 'react-native';
3
+ import type { ComposerPanelController, DChatPannelAction } from './types';
4
4
  interface ChatComposerInternalProps {
5
5
  isEmptyMessage?: boolean;
6
6
  pannelActions?: DChatPannelAction[];
@@ -9,7 +9,11 @@ interface ChatComposerInternalProps {
9
9
  onComposerLayout?: (event: LayoutChangeEvent) => void;
10
10
  onPressJoinGroup?: () => void;
11
11
  isJoiningGroup?: boolean;
12
+ /** @internal Filled with the panel controller for tap-outside dismiss. */
13
+ panelControllerRef?: RefObject<ComposerPanelController | null>;
14
+ /** @internal Reports whether the attachment/sticker panel is open. */
15
+ onPanelOpenChange?: (open: boolean) => void;
12
16
  }
13
- export declare const ChatComposer: import("react").MemoExoticComponent<({ isEmptyMessage, pannelActions, isComposeDisabled, composerRef, onComposerLayout, onPressJoinGroup, isJoiningGroup, }: ChatComposerInternalProps) => import("react").JSX.Element>;
17
+ export declare const ChatComposer: import("react").MemoExoticComponent<({ isEmptyMessage, pannelActions, isComposeDisabled, composerRef, onComposerLayout, onPressJoinGroup, isJoiningGroup, panelControllerRef, onPanelOpenChange, }: ChatComposerInternalProps) => import("react").JSX.Element>;
14
18
  export {};
15
19
  //# sourceMappingURL=ChatComposer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChatComposer.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/ChatComposer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAIL,KAAK,iBAAiB,EACtB,KAAK,IAAI,EACV,MAAM,cAAc,CAAC;AA8BtB,OAAO,EAA6B,KAAK,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAgC5E,UAAU,yBAAyB;IACjC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACpC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IACrC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACtD,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,eAAO,MAAM,YAAY,+JASpB,yBAAyB,iCA6oB7B,CAAC"}
1
+ {"version":3,"file":"ChatComposer.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/ChatComposer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA8B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAQ5D,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAqB1E,UAAU,yBAAyB;IACjC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACpC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IACrC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACtD,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,0EAA0E;IAC1E,kBAAkB,CAAC,EAAE,SAAS,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAC;IAC/D,sEAAsE;IACtE,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7C;AAED,eAAO,MAAM,YAAY,sMAWpB,yBAAyB,iCA2L7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChatDetail.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/ChatDetail.tsx"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AA2V/C,QAAA,MAAM,YAAY,GAAI,OAAO,eAAe,gCAS3C,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"ChatDetail.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/ChatDetail.tsx"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AA2W/C,QAAA,MAAM,YAAY,GAAI,OAAO,eAAe,gCAS3C,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -2,6 +2,7 @@ import { type RefObject } from 'react';
2
2
  import { type SharedValue } from 'react-native-reanimated';
3
3
  import { type LegendListRef } from '@legendapp/list/react-native';
4
4
  import type { ChatListProps } from './types';
5
+ import type { DismissAreaTouchProps } from './hooks/useComposerPanelDismiss';
5
6
  interface ChatListLegendInternalProps extends ChatListProps {
6
7
  listRef: RefObject<LegendListRef | null>;
7
8
  freeze: SharedValue<boolean>;
@@ -10,7 +11,10 @@ interface ChatListLegendInternalProps extends ChatListProps {
10
11
  closeKeyboard: boolean;
11
12
  }) => Promise<void>;
12
13
  keyboardOffset: number;
14
+ dismissAreaTouchProps?: DismissAreaTouchProps;
15
+ isComposerPanelOpen?: boolean;
16
+ onDismissAreaScrollBeginDrag?: () => void;
13
17
  }
14
- export declare const ChatListLegend: import("react").MemoExoticComponent<({ messages, conversationId, customMessageItemFactory, onLoadMoreOld, moreOldLoading, hasMoreOld, onLoadMoreNew, hasMoreNew, onMediaPress, onPressUrl, onLongPress, listRef, freeze, scrollMessageToEnd, keyboardOffset, isLoading, renderConversationViewHeader, }: ChatListLegendInternalProps) => import("react").JSX.Element>;
18
+ export declare const ChatListLegend: import("react").MemoExoticComponent<({ messages, conversationId, customMessageItemFactory, onLoadMoreOld, moreOldLoading, hasMoreOld, onLoadMoreNew, hasMoreNew, onMediaPress: onMediaPressProp, onPressUrl: onPressUrlProp, onLongPress, listRef, freeze, scrollMessageToEnd, keyboardOffset, isLoading, renderConversationViewHeader, dismissAreaTouchProps, isComposerPanelOpen, onDismissAreaScrollBeginDrag, }: ChatListLegendInternalProps) => import("react").JSX.Element>;
15
19
  export {};
16
20
  //# sourceMappingURL=ChatListLegend.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChatListLegend.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/ChatListLegend.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAQf,OAAiB,EAKf,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAMjC,OAAO,EACL,KAAK,aAAa,EAEnB,MAAM,8BAA8B,CAAC;AActC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAoF7C,UAAU,2BAA4B,SAAQ,aAAa;IACzD,OAAO,EAAE,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IACzC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC7B,kBAAkB,EAAE,CAAC,IAAI,EAAE;QACzB,QAAQ,EAAE,OAAO,CAAC;QAClB,aAAa,EAAE,OAAO,CAAC;KACxB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,cAAc,2SAmBtB,2BAA2B,iCAq2B/B,CAAC"}
1
+ {"version":3,"file":"ChatListLegend.d.ts","sourceRoot":"","sources":["../../../../../src/screens/chat-detail/ChatListLegend.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAQf,OAAiB,EAKf,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAMjC,OAAO,EACL,KAAK,aAAa,EAEnB,MAAM,8BAA8B,CAAC;AActC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AA0B7C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AA+D7E,UAAU,2BAA4B,SAAQ,aAAa;IACzD,OAAO,EAAE,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IACzC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC7B,kBAAkB,EAAE,CAAC,IAAI,EAAE;QACzB,QAAQ,EAAE,OAAO,CAAC;QAClB,aAAa,EAAE,OAAO,CAAC;KACxB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IAGvB,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAE9C,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,4BAA4B,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3C;AAED,eAAO,MAAM,cAAc,uZAsBtB,2BAA2B,iCAu4B/B,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { ActivePanelType } from '../hooks/useChatComposerState';
2
+ import type { DChatPannelAction } from '../types';
3
+ interface ChatComposerAccessorySlotProps {
4
+ visible: boolean;
5
+ accessorySlotStyle: any;
6
+ isAttachmentOpen: boolean;
7
+ activePanelType: ActivePanelType;
8
+ pannelActions: DChatPannelAction[];
9
+ }
10
+ export declare const ChatComposerAccessorySlot: ({ visible, accessorySlotStyle, isAttachmentOpen, activePanelType, pannelActions, }: ChatComposerAccessorySlotProps) => import("react").JSX.Element;
11
+ export {};
12
+ //# sourceMappingURL=ChatComposerAccessorySlot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatComposerAccessorySlot.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/components/ChatComposerAccessorySlot.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAElD,UAAU,8BAA8B;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,EAAE,GAAG,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,eAAe,CAAC;IACjC,aAAa,EAAE,iBAAiB,EAAE,CAAC;CACpC;AAID,eAAO,MAAM,yBAAyB,GAAI,oFAMvC,8BAA8B,gCAyBhC,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { type RefObject } from 'react';
2
+ import type { ActivePanelType } from '../hooks/useChatComposerState';
3
+ import type { useMentionComposer } from '../hooks/useMentionComposer';
4
+ import type { useChatCompose } from '../../../hooks/useChatCompose';
5
+ interface ChatComposerInputAreaProps {
6
+ compose: ReturnType<typeof useChatCompose>;
7
+ mentionComposer: ReturnType<typeof useMentionComposer>;
8
+ activePanelType: ActivePanelType;
9
+ isAttachmentOpen: boolean;
10
+ isInputFocused: boolean;
11
+ isMultilineInput: boolean;
12
+ inputRef: RefObject<any>;
13
+ onToggleAttachment: () => void;
14
+ onToggleSticker: () => void;
15
+ onChangeText: (text?: string) => void;
16
+ onInputFocus: () => void;
17
+ onInputBlur: () => void;
18
+ onInputContentSizeChange: (event: {
19
+ nativeEvent: {
20
+ contentSize: {
21
+ height: number;
22
+ };
23
+ };
24
+ }) => void;
25
+ onOpenBotMenu?: () => void;
26
+ onSend: () => void;
27
+ }
28
+ export declare const ChatComposerInputArea: ({ compose, mentionComposer, activePanelType, isAttachmentOpen, isInputFocused, isMultilineInput, inputRef, onToggleAttachment, onToggleSticker, onChangeText, onInputFocus, onInputBlur, onInputContentSizeChange, onOpenBotMenu, onSend, }: ChatComposerInputAreaProps) => import("react").JSX.Element;
29
+ export {};
30
+ //# sourceMappingURL=ChatComposerInputArea.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatComposerInputArea.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/components/ChatComposerInputArea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAe7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAGpE,UAAU,0BAA0B;IAClC,OAAO,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;IAC3C,eAAe,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;IACvD,eAAe,EAAE,eAAe,CAAC;IACjC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;IACzB,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,YAAY,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,wBAAwB,EAAE,CAAC,KAAK,EAAE;QAChC,WAAW,EAAE;YAAE,WAAW,EAAE;gBAAE,MAAM,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC;KAClD,KAAK,IAAI,CAAC;IACX,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAID,eAAO,MAAM,qBAAqB,GAAI,6OAgBnC,0BAA0B,gCA4H5B,CAAC"}
@@ -0,0 +1,19 @@
1
+ export type ComposerStatusVariant = 'sellerInactive' | 'botStart' | 'notInGroup' | 'sendDenied';
2
+ export declare const getComposerStatusVariant: ({ isDisableCompose, isGroupConversation, isNewBotConversation, isNotInGroup, isSendMessageAllowed, }: {
3
+ isDisableCompose: boolean;
4
+ isGroupConversation: boolean;
5
+ isNewBotConversation: boolean;
6
+ isNotInGroup: boolean;
7
+ isSendMessageAllowed: boolean;
8
+ }) => ComposerStatusVariant | null;
9
+ interface ChatComposerStatusBannerProps {
10
+ variant: ComposerStatusVariant;
11
+ isRunFlowPending?: boolean;
12
+ onStartConversationFlow?: () => void;
13
+ isJoiningGroup?: boolean;
14
+ onPressJoinGroup?: () => void;
15
+ sendDeniedReason?: string;
16
+ }
17
+ export declare const ChatComposerStatusBanner: ({ variant, isRunFlowPending, onStartConversationFlow, isJoiningGroup, onPressJoinGroup, sendDeniedReason, }: ChatComposerStatusBannerProps) => import("react").JSX.Element;
18
+ export {};
19
+ //# sourceMappingURL=ChatComposerStatusBanner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatComposerStatusBanner.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/components/ChatComposerStatusBanner.tsx"],"names":[],"mappings":"AAIA,MAAM,MAAM,qBAAqB,GAC7B,gBAAgB,GAChB,UAAU,GACV,YAAY,GACZ,YAAY,CAAC;AAGjB,eAAO,MAAM,wBAAwB,GAAI,sGAMtC;IACD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,YAAY,EAAE,OAAO,CAAC;IACtB,oBAAoB,EAAE,OAAO,CAAC;CAC/B,KAAG,qBAAqB,GAAG,IAM3B,CAAC;AAEF,UAAU,6BAA6B;IACrC,OAAO,EAAE,qBAAqB,CAAC;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,uBAAuB,CAAC,EAAE,MAAM,IAAI,CAAC;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAgBD,eAAO,MAAM,wBAAwB,GAAI,6GAOtC,6BAA6B,gCAsD/B,CAAC"}
@@ -5,7 +5,6 @@ interface UseChatComposerAnimationProps {
5
5
  interface UseChatComposerAnimationReturn {
6
6
  attachmentHeightSV: any;
7
7
  accessorySlotStyle: any;
8
- toggleAttachmentVisibility: () => void;
9
8
  openAttachment: () => void;
10
9
  openWithHeight: (height: number) => void;
11
10
  closeAttachment: (speedUp?: boolean, immediate?: boolean) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"useChatComposerAnimation.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/hooks/useChatComposerAnimation.ts"],"names":[],"mappings":"AAWA,UAAU,6BAA6B;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CACnD;AAED,UAAU,8BAA8B;IACtC,kBAAkB,EAAE,GAAG,CAAC;IACxB,kBAAkB,EAAE,GAAG,CAAC;IACxB,0BAA0B,EAAE,MAAM,IAAI,CAAC;IACvC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,eAAe,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACnE;AAED,eAAO,MAAM,wBAAwB,GAAI,0CAGtC,6BAA6B,KAAG,8BA4ElC,CAAC"}
1
+ {"version":3,"file":"useChatComposerAnimation.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/hooks/useChatComposerAnimation.ts"],"names":[],"mappings":"AASA,UAAU,6BAA6B;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CACnD;AAED,UAAU,8BAA8B;IACtC,kBAAkB,EAAE,GAAG,CAAC;IACxB,kBAAkB,EAAE,GAAG,CAAC;IACxB,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,eAAe,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACnE;AAED,eAAO,MAAM,wBAAwB,GAAI,0CAGtC,6BAA6B,KAAG,8BAkDlC,CAAC"}
@@ -9,6 +9,13 @@ interface UseChatComposerStateReturn {
9
9
  isInputWrapped: boolean;
10
10
  setIsInputWrapped: (wrapped: boolean) => void;
11
11
  isMultilineInput: boolean;
12
+ handleInputContentSizeChange: (event: {
13
+ nativeEvent: {
14
+ contentSize: {
15
+ height: number;
16
+ };
17
+ };
18
+ }) => void;
12
19
  inputRef: React.RefObject<any>;
13
20
  }
14
21
  export declare const useChatComposerState: (value: string) => UseChatComposerStateReturn;
@@ -1 +1 @@
1
- {"version":3,"file":"useChatComposerState.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/hooks/useChatComposerState.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC;AAE1E,UAAU,0BAA0B;IAClC,eAAe,EAAE,eAAe,CAAC;IACjC,kBAAkB,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACpD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mBAAmB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;CAChC;AAED,eAAO,MAAM,oBAAoB,GAC/B,OAAO,MAAM,KACZ,0BA2BF,CAAC"}
1
+ {"version":3,"file":"useChatComposerState.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/hooks/useChatComposerState.ts"],"names":[],"mappings":"AAeA,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC;AAE1E,UAAU,0BAA0B;IAClC,eAAe,EAAE,eAAe,CAAC;IACjC,kBAAkB,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACpD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mBAAmB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,4BAA4B,EAAE,CAAC,KAAK,EAAE;QACpC,WAAW,EAAE;YAAE,WAAW,EAAE;gBAAE,MAAM,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC;KAClD,KAAK,IAAI,CAAC;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;CAChC;AAED,eAAO,MAAM,oBAAoB,GAC/B,OAAO,MAAM,KACZ,0BAwCF,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare const useComposerBotMenu: () => {
2
+ hasBotMenuOptions: boolean;
3
+ handleOpenBotMenu: () => void;
4
+ onStartConversationFlow: () => void;
5
+ isRunFlowPending: boolean;
6
+ };
7
+ //# sourceMappingURL=useComposerBotMenu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useComposerBotMenu.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/hooks/useComposerBotMenu.tsx"],"names":[],"mappings":"AAgBA,eAAO,MAAM,kBAAkB;;;;;CA2H9B,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { DChatPannelActionItemType, type DChatPannelAction } from '../types';
2
+ interface UseComposerPanelActionsProps {
3
+ pannelActions?: DChatPannelAction[];
4
+ addImages?: () => void;
5
+ addFiles?: () => void;
6
+ }
7
+ export declare const useComposerPanelActions: ({ pannelActions, addImages, addFiles, }: UseComposerPanelActionsProps) => {
8
+ onPress: any;
9
+ id: DChatPannelActionItemType;
10
+ label: string;
11
+ iconName: string;
12
+ iconProvider?: import("..").DChatActionIconProvider;
13
+ disabled?: boolean;
14
+ meta?: Record<string, unknown>;
15
+ }[];
16
+ export {};
17
+ //# sourceMappingURL=useComposerPanelActions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useComposerPanelActions.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/hooks/useComposerPanelActions.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,yBAAyB,EAAE,KAAK,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7E,UAAU,4BAA4B;IACpC,aAAa,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAID,eAAO,MAAM,uBAAuB,GAAI,yCAIrC,4BAA4B;;;;;;;;GAsC9B,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { ViewProps } from 'react-native';
2
+ import type { ComposerPanelController } from '../types';
3
+ export type DismissAreaTouchProps = Pick<ViewProps, 'onTouchStart' | 'onTouchMove' | 'onTouchEnd' | 'onTouchCancel'>;
4
+ export declare const useComposerPanelDismiss: () => {
5
+ panelControllerRef: import("react").RefObject<ComposerPanelController>;
6
+ isComposerPanelOpen: boolean;
7
+ onComposerPanelOpenChange: import("react").Dispatch<import("react").SetStateAction<boolean>>;
8
+ dismissAreaTouchProps: DismissAreaTouchProps;
9
+ notifyScrollBeginDrag: () => void;
10
+ shouldSwallowPress: () => boolean;
11
+ };
12
+ //# sourceMappingURL=useComposerPanelDismiss.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useComposerPanelDismiss.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/hooks/useComposerPanelDismiss.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAyB,SAAS,EAAE,MAAM,cAAc,CAAC;AAErE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAWxD,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,SAAS,EACT,cAAc,GAAG,aAAa,GAAG,YAAY,GAAG,eAAe,CAChE,CAAC;AAoBF,eAAO,MAAM,uBAAuB;;;;;;;CAyEnC,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { type RefObject } from 'react';
2
+ import type { ActivePanelType } from './useChatComposerState';
3
+ import type { ComposerPanelController } from '../types';
4
+ export type ClosePanelMode = 'immediate' | 'fast' | 'animated';
5
+ interface UseComposerPanelsProps {
6
+ activePanelType: ActivePanelType;
7
+ setActivePanelType: (type: ActivePanelType) => void;
8
+ isAttachmentOpen: boolean;
9
+ setIsAttachmentOpen: (open: boolean) => void;
10
+ isMentionPanelOpen: boolean;
11
+ closeMentionPanel: () => void;
12
+ isKeyboardVisible: boolean;
13
+ isSlotVisible: boolean;
14
+ panelControllerRef?: RefObject<ComposerPanelController | null>;
15
+ onPanelOpenChange?: (open: boolean) => void;
16
+ }
17
+ export declare const useComposerPanels: ({ activePanelType, setActivePanelType, isAttachmentOpen, setIsAttachmentOpen, isMentionPanelOpen, closeMentionPanel, isKeyboardVisible, isSlotVisible, panelControllerRef, onPanelOpenChange, }: UseComposerPanelsProps) => {
18
+ accessorySlotStyle: any;
19
+ closeActivePanel: (mode: ClosePanelMode) => void;
20
+ yieldingCloseMode: "immediate" | "fast";
21
+ handleToggleAttachment: () => void;
22
+ handleToggleSticker: () => void;
23
+ };
24
+ export {};
25
+ //# sourceMappingURL=useComposerPanels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useComposerPanels.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/hooks/useComposerPanels.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAIf,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAOxD,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC;AAE/D,UAAU,sBAAsB;IAC9B,eAAe,EAAE,eAAe,CAAC;IACjC,kBAAkB,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACpD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mBAAmB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,kBAAkB,EAAE,OAAO,CAAC;IAC5B,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,iBAAiB,EAAE,OAAO,CAAC;IAG3B,aAAa,EAAE,OAAO,CAAC;IACvB,kBAAkB,CAAC,EAAE,SAAS,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAC;IAE/D,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7C;AAED,eAAO,MAAM,iBAAiB,GAAI,iMAW/B,sBAAsB;;6BA8Bd,cAAc;;;;CAsHxB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { type RefObject } from 'react';
2
+ import type { useChatCompose } from '../../../hooks/useChatCompose';
3
+ import type { useMentionComposer } from './useMentionComposer';
4
+ type Mentions = ReturnType<typeof useMentionComposer>['mentions'];
5
+ interface UseComposerSendProps {
6
+ compose: ReturnType<typeof useChatCompose>;
7
+ isSendMessageAllowed: boolean;
8
+ sendDeniedReason?: string;
9
+ mentions: Mentions;
10
+ clearMentions: () => void;
11
+ notifyStoppedTyping: () => void;
12
+ inputRef: RefObject<any>;
13
+ }
14
+ export declare const useComposerSend: ({ compose, isSendMessageAllowed, sendDeniedReason, mentions, clearMentions, notifyStoppedTyping, inputRef, }: UseComposerSendProps) => () => Promise<void>;
15
+ export {};
16
+ //# sourceMappingURL=useComposerSend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useComposerSend.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/hooks/useComposerSend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAQpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,KAAK,QAAQ,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,UAAU,CAAC,CAAC;AAElE,UAAU,oBAAoB;IAC5B,OAAO,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;IAC3C,oBAAoB,EAAE,OAAO,CAAC;IAC9B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;CAC1B;AAED,eAAO,MAAM,eAAe,GAAI,8GAQ7B,oBAAoB,wBAkEnB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"LegendChatMessage.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/legend/LegendChatMessage.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAoC,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAGjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAe/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AASrE,UAAU,sBAAsB;IAC9B,OAAO,EAAE,WAAW,CAAC;IACrB,yKAAyK;IACzK,SAAS,EAAE,MAAM,CAAC;IAClB,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;IACnC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IACzC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC;;;;;;;;OAQG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAChE,wBAAwB,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,SAAS,CAAC;IACzD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6EAA6E;IAC7E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,wEAAwE;IACxE,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;;;OAKG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,sEAAsE;IACtE,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAsCD,eAAO,MAAM,iBAAiB,2SAqBzB,sBAAsB,wRAsH1B,CAAC"}
1
+ {"version":3,"file":"LegendChatMessage.d.ts","sourceRoot":"","sources":["../../../../../../src/screens/chat-detail/legend/LegendChatMessage.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAoC,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAGjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAe/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAUrE,UAAU,sBAAsB;IAC9B,OAAO,EAAE,WAAW,CAAC;IACrB,yKAAyK;IACzK,SAAS,EAAE,MAAM,CAAC;IAClB,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;IACnC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IACzC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC;;;;;;;;OAQG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAChE,wBAAwB,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,SAAS,CAAC;IACzD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6EAA6E;IAC7E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,wEAAwE;IACxE,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;;;OAKG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,sEAAsE;IACtE,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAsCD,eAAO,MAAM,iBAAiB,2SAqBzB,sBAAsB,wRAuH1B,CAAC"}
@@ -89,4 +89,12 @@ export interface ChatDetailProps extends Omit<ChatDetailHeaderProps, 'showAddMem
89
89
  groupJoinSource?: GroupJoinSource;
90
90
  renderConversationViewHeader?: () => ReactNode;
91
91
  }
92
+ /**
93
+ * @internal Imperative handle to the composer's attachment/sticker panel,
94
+ * used by ChatDetail for tap-outside dismiss. Not part of the public API.
95
+ */
96
+ export interface ComposerPanelController {
97
+ isOpen: () => boolean;
98
+ close: () => void;
99
+ }
92
100
  //# sourceMappingURL=types.d.ts.map