@messenger-box/platform-mobile 10.0.3-alpha.20 → 10.0.3-alpha.201
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/messages-container-ui/BuildModeView.js +428 -0
- package/lib/components/messages-container-ui/BuildModeView.js.map +1 -0
- package/lib/components/messages-container-ui/MessagesContainerUI.js +55 -0
- package/lib/components/messages-container-ui/MessagesContainerUI.js.map +1 -0
- package/lib/components/messages-container-ui/PlanModeView.js +336 -0
- package/lib/components/messages-container-ui/PlanModeView.js.map +1 -0
- package/lib/compute.js +2 -3
- package/lib/compute.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/module.js.map +1 -1
- package/lib/queries/inboxQueries.js +62 -0
- package/lib/queries/inboxQueries.js.map +1 -0
- package/lib/routes.json +2 -3
- package/lib/screens/inbox/DialogMessages.js +8 -3
- package/lib/screens/inbox/DialogMessages.js.map +1 -1
- package/lib/screens/inbox/DialogThreadMessages.js +6 -11
- package/lib/screens/inbox/DialogThreadMessages.js.map +1 -1
- package/lib/screens/inbox/DialogThreads.js +58 -20
- package/lib/screens/inbox/DialogThreads.js.map +1 -1
- package/lib/screens/inbox/Inbox.js.map +1 -1
- package/lib/screens/inbox/components/CachedImage/consts.js +1 -1
- package/lib/screens/inbox/components/CachedImage/consts.js.map +1 -1
- package/lib/screens/inbox/components/CachedImage/index.js +125 -115
- package/lib/screens/inbox/components/CachedImage/index.js.map +1 -1
- package/lib/screens/inbox/components/DialogItem.js +160 -0
- package/lib/screens/inbox/components/DialogItem.js.map +1 -0
- package/lib/screens/inbox/components/GiftedChatInboxComponent.js +315 -0
- package/lib/screens/inbox/components/GiftedChatInboxComponent.js.map +1 -0
- package/lib/screens/inbox/components/SlackMessageContainer/ImageViewerModal.js +3 -1
- package/lib/screens/inbox/components/SlackMessageContainer/ImageViewerModal.js.map +1 -1
- package/lib/screens/inbox/components/SlackMessageContainer/PaymentMessage.js +194 -0
- package/lib/screens/inbox/components/SlackMessageContainer/PaymentMessage.js.map +1 -0
- package/lib/screens/inbox/components/SlackMessageContainer/SlackBubble.js +149 -36
- package/lib/screens/inbox/components/SlackMessageContainer/SlackBubble.js.map +1 -1
- package/lib/screens/inbox/components/SlackMessageContainer/SlackMessage.js +4 -5
- package/lib/screens/inbox/components/SlackMessageContainer/SlackMessage.js.map +1 -1
- package/lib/screens/inbox/components/SubscriptionHandler.js +22 -0
- package/lib/screens/inbox/components/SubscriptionHandler.js.map +1 -0
- package/lib/screens/inbox/components/ThreadsViewItem.js +67 -47
- package/lib/screens/inbox/components/ThreadsViewItem.js.map +1 -1
- package/lib/screens/inbox/config/config.js +4 -2
- package/lib/screens/inbox/config/config.js.map +1 -1
- package/lib/screens/inbox/containers/ConversationView.js +1099 -1094
- package/lib/screens/inbox/containers/ConversationView.js.map +1 -1
- package/lib/screens/inbox/containers/Dialogs.js +132 -534
- package/lib/screens/inbox/containers/Dialogs.js.map +1 -1
- package/lib/screens/inbox/containers/ThreadConversationView.js +876 -1357
- package/lib/screens/inbox/containers/ThreadConversationView.js.map +1 -1
- package/lib/screens/inbox/containers/ThreadsView.js +81 -54
- package/lib/screens/inbox/containers/ThreadsView.js.map +1 -1
- package/lib/screens/inbox/hooks/useInboxMessages.js +31 -0
- package/lib/screens/inbox/hooks/useInboxMessages.js.map +1 -0
- package/lib/screens/inbox/hooks/useSafeDialogThreadsMachine.js +108 -0
- package/lib/screens/inbox/hooks/useSafeDialogThreadsMachine.js.map +1 -0
- package/lib/screens/inbox/workflow/dialog-threads-xstate.js +151 -0
- package/lib/screens/inbox/workflow/dialog-threads-xstate.js.map +1 -0
- package/package.json +9 -7
- package/CHANGELOG.md +0 -164
- package/jest.config.js +0 -24
- package/lib/screens/inbox/components/DialogsListItem.js +0 -548
- package/lib/screens/inbox/components/DialogsListItem.js.map +0 -1
- package/lib/screens/inbox/components/ServiceDialogsListItem.js +0 -489
- package/lib/screens/inbox/components/ServiceDialogsListItem.js.map +0 -1
- package/lib/screens/inbox/components/workflow/dialogs-list-item-xstate.js +0 -175
- package/lib/screens/inbox/components/workflow/dialogs-list-item-xstate.js.map +0 -1
- package/lib/screens/inbox/components/workflow/service-dialogs-list-item-xstate.js +0 -191
- package/lib/screens/inbox/components/workflow/service-dialogs-list-item-xstate.js.map +0 -1
- package/lib/screens/inbox/containers/workflow/conversation-xstate.js +0 -380
- package/lib/screens/inbox/containers/workflow/conversation-xstate.js.map +0 -1
- package/lib/screens/inbox/containers/workflow/dialogs-xstate.js +0 -211
- package/lib/screens/inbox/containers/workflow/dialogs-xstate.js.map +0 -1
- package/lib/screens/inbox/containers/workflow/thread-conversation-xstate.js +0 -438
- package/lib/screens/inbox/containers/workflow/thread-conversation-xstate.js.map +0 -1
- package/rollup.config.mjs +0 -45
- package/src/components/index.ts +0 -0
- package/src/compute.ts +0 -63
- package/src/index.ts +0 -7
- package/src/module.ts +0 -10
- package/src/navigation/InboxNavigation.tsx +0 -102
- package/src/navigation/index.ts +0 -1
- package/src/screens/inbox/DialogMessages.tsx +0 -21
- package/src/screens/inbox/DialogThreadMessages.tsx +0 -97
- package/src/screens/inbox/DialogThreads.tsx +0 -129
- package/src/screens/inbox/Inbox.tsx +0 -17
- package/src/screens/inbox/components/CachedImage/consts.ts +0 -6
- package/src/screens/inbox/components/CachedImage/index.tsx +0 -223
- package/src/screens/inbox/components/DialogsHeader.tsx +0 -30
- package/src/screens/inbox/components/DialogsListItem.tsx +0 -819
- package/src/screens/inbox/components/ServiceDialogsListItem.tsx +0 -679
- package/src/screens/inbox/components/SlackMessageContainer/ImageViewerModal.tsx +0 -113
- package/src/screens/inbox/components/SlackMessageContainer/SlackBubble.tsx +0 -313
- package/src/screens/inbox/components/SlackMessageContainer/SlackMessage.tsx +0 -145
- package/src/screens/inbox/components/SlackMessageContainer/index.ts +0 -3
- package/src/screens/inbox/components/SupportServiceDialogsListItem.tsx +0 -301
- package/src/screens/inbox/components/ThreadsViewItem.tsx +0 -321
- package/src/screens/inbox/components/workflow/dialogs-list-item-xstate.ts +0 -145
- package/src/screens/inbox/components/workflow/service-dialogs-list-item-xstate.ts +0 -159
- package/src/screens/inbox/config/config.ts +0 -15
- package/src/screens/inbox/config/index.ts +0 -1
- package/src/screens/inbox/containers/ConversationView.tsx +0 -1782
- package/src/screens/inbox/containers/Dialogs.tsx +0 -794
- package/src/screens/inbox/containers/SupportServiceDialogs.tsx +0 -119
- package/src/screens/inbox/containers/ThreadConversationView.tsx +0 -2312
- package/src/screens/inbox/containers/ThreadsView.tsx +0 -305
- package/src/screens/inbox/containers/workflow/apollo/handleResult.ts +0 -20
- package/src/screens/inbox/containers/workflow/conversation-xstate.ts +0 -313
- package/src/screens/inbox/containers/workflow/dialogs-xstate.ts +0 -196
- package/src/screens/inbox/containers/workflow/thread-conversation-xstate.ts +0 -401
- package/src/screens/index.ts +0 -4
- package/tsconfig.json +0 -13
- package/webpack.config.js +0 -58
|
@@ -0,0 +1,336 @@
|
|
|
1
|
+
import React__default,{useRef,useState,useCallback,useMemo}from'react';import {StyleSheet,View,KeyboardAvoidingView,Platform,TouchableOpacity,Text}from'react-native';import {Bubble,MessageText,GiftedChat}from'react-native-gifted-chat';import Markdown from'react-native-markdown-display';var __defProp = Object.defineProperty;
|
|
2
|
+
var __defProps = Object.defineProperties;
|
|
3
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __spreadValues = (a, b) => {
|
|
9
|
+
for (var prop in b || (b = {}))
|
|
10
|
+
if (__hasOwnProp.call(b, prop))
|
|
11
|
+
__defNormalProp(a, prop, b[prop]);
|
|
12
|
+
if (__getOwnPropSymbols)
|
|
13
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
+
if (__propIsEnum.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
}
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
20
|
+
const USER_BUBBLE_BG = "#2563eb";
|
|
21
|
+
const ASSISTANT_BUBBLE_BG = "#ffffff";
|
|
22
|
+
const BORDER_COLOR = "#e5e7eb";
|
|
23
|
+
function planMessageToGifted(msg, currentUserId, index, total) {
|
|
24
|
+
const isUser = msg.role === "user";
|
|
25
|
+
return {
|
|
26
|
+
_id: msg.id,
|
|
27
|
+
text: msg.content,
|
|
28
|
+
createdAt: new Date(Date.now() - (total - 1 - index) * 6e4),
|
|
29
|
+
user: {
|
|
30
|
+
_id: isUser ? currentUserId : "assistant",
|
|
31
|
+
name: isUser ? "You" : "Assistant",
|
|
32
|
+
avatar: isUser ? void 0 : void 0
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
function PlanModeView({
|
|
37
|
+
messages,
|
|
38
|
+
streamingContent,
|
|
39
|
+
currentUser,
|
|
40
|
+
onSend,
|
|
41
|
+
disabled = false,
|
|
42
|
+
isLoading = false,
|
|
43
|
+
onStop,
|
|
44
|
+
messagesContainerStyle: messagesContainerStyleOverride,
|
|
45
|
+
listContentStyle: listContentStyleOverride,
|
|
46
|
+
showDate = false,
|
|
47
|
+
showAvatar = false,
|
|
48
|
+
showMessageBubbleBorder = false,
|
|
49
|
+
renderInputToolbar
|
|
50
|
+
}) {
|
|
51
|
+
var _a;
|
|
52
|
+
const [inputValue, setInputValue] = React__default.useState("");
|
|
53
|
+
const messageListRef = useRef(null);
|
|
54
|
+
const [scrollFlags, setScrollFlags] = useState({
|
|
55
|
+
showScrollToBottom: false,
|
|
56
|
+
showScrollToTop: false
|
|
57
|
+
});
|
|
58
|
+
const SCROLL_THRESHOLD = 60;
|
|
59
|
+
const handleScroll = useCallback((e) => {
|
|
60
|
+
var _a2, _b;
|
|
61
|
+
const {
|
|
62
|
+
contentOffset,
|
|
63
|
+
contentSize,
|
|
64
|
+
layoutMeasurement
|
|
65
|
+
} = e.nativeEvent;
|
|
66
|
+
const {
|
|
67
|
+
y: offsetY
|
|
68
|
+
} = contentOffset;
|
|
69
|
+
const contentHeight = (_a2 = contentSize == null ? void 0 : contentSize.height) != null ? _a2 : 0;
|
|
70
|
+
const layoutHeight = (_b = layoutMeasurement == null ? void 0 : layoutMeasurement.height) != null ? _b : 0;
|
|
71
|
+
const maxOffset = Math.max(0, contentHeight - layoutHeight);
|
|
72
|
+
setScrollFlags({
|
|
73
|
+
showScrollToBottom: maxOffset > SCROLL_THRESHOLD && offsetY > SCROLL_THRESHOLD,
|
|
74
|
+
showScrollToTop: maxOffset > SCROLL_THRESHOLD && offsetY < maxOffset - SCROLL_THRESHOLD
|
|
75
|
+
});
|
|
76
|
+
}, []);
|
|
77
|
+
const scrollToBottom = useCallback(() => {
|
|
78
|
+
var _a2, _b;
|
|
79
|
+
(_b = (_a2 = messageListRef.current) == null ? void 0 : _a2.scrollToOffset) == null ? void 0 : _b.call(_a2, {
|
|
80
|
+
offset: 0,
|
|
81
|
+
animated: true
|
|
82
|
+
});
|
|
83
|
+
}, []);
|
|
84
|
+
const scrollToTop = useCallback(() => {
|
|
85
|
+
var _a2, _b;
|
|
86
|
+
(_b = (_a2 = messageListRef.current) == null ? void 0 : _a2.scrollToEnd) == null ? void 0 : _b.call(_a2, {
|
|
87
|
+
animated: true
|
|
88
|
+
});
|
|
89
|
+
}, []);
|
|
90
|
+
const giftedMessages = useMemo(() => {
|
|
91
|
+
const list = messages.map((m, i) => planMessageToGifted(m, currentUser.id, i, messages.length));
|
|
92
|
+
return [...list].reverse();
|
|
93
|
+
}, [messages, currentUser.id]);
|
|
94
|
+
const messagesWithStreaming = useMemo(() => {
|
|
95
|
+
if (!(streamingContent == null ? void 0 : streamingContent.trim())) return giftedMessages;
|
|
96
|
+
const streamMsg = {
|
|
97
|
+
_id: "__streaming__",
|
|
98
|
+
text: streamingContent,
|
|
99
|
+
createdAt: new Date(Date.now() + 6e4),
|
|
100
|
+
user: {
|
|
101
|
+
_id: "assistant",
|
|
102
|
+
name: "Assistant"
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
return [streamMsg, ...giftedMessages];
|
|
106
|
+
}, [giftedMessages, streamingContent]);
|
|
107
|
+
const handleSend = useCallback((msgs = []) => {
|
|
108
|
+
var _a2, _b;
|
|
109
|
+
const text = ((_b = (_a2 = msgs[0]) == null ? void 0 : _a2.text) != null ? _b : "").trim();
|
|
110
|
+
if (!text) return;
|
|
111
|
+
onSend(text);
|
|
112
|
+
}, [onSend]);
|
|
113
|
+
const renderBubble = useCallback((props) => {
|
|
114
|
+
var _a2, _b, _c;
|
|
115
|
+
((_b = (_a2 = props.currentMessage) == null ? void 0 : _a2.user) == null ? void 0 : _b._id) === ((_c = props.user) == null ? void 0 : _c._id);
|
|
116
|
+
return /* @__PURE__ */ React__default.createElement(Bubble, __spreadProps(__spreadValues({}, props), { renderTime: showDate ? void 0 : () => null, wrapperStyle: {
|
|
117
|
+
right: {
|
|
118
|
+
backgroundColor: USER_BUBBLE_BG,
|
|
119
|
+
borderRadius: 16,
|
|
120
|
+
padding: 12,
|
|
121
|
+
maxWidth: "92%",
|
|
122
|
+
marginHorizontal: 8
|
|
123
|
+
},
|
|
124
|
+
left: __spreadValues({
|
|
125
|
+
backgroundColor: ASSISTANT_BUBBLE_BG,
|
|
126
|
+
borderRadius: 16,
|
|
127
|
+
padding: 12,
|
|
128
|
+
width: "100%",
|
|
129
|
+
maxWidth: "100%",
|
|
130
|
+
alignSelf: "stretch",
|
|
131
|
+
marginHorizontal: 0
|
|
132
|
+
}, showMessageBubbleBorder && {
|
|
133
|
+
borderWidth: 1,
|
|
134
|
+
borderColor: BORDER_COLOR
|
|
135
|
+
})
|
|
136
|
+
}, textStyle: {
|
|
137
|
+
right: {
|
|
138
|
+
color: "#ffffff",
|
|
139
|
+
fontSize: 15
|
|
140
|
+
},
|
|
141
|
+
left: {
|
|
142
|
+
color: "#111827",
|
|
143
|
+
fontSize: 15
|
|
144
|
+
}
|
|
145
|
+
} }));
|
|
146
|
+
}, [showDate, showMessageBubbleBorder]);
|
|
147
|
+
const renderMessage = useCallback((props) => /* @__PURE__ */ React__default.createElement(View, { style: styles.messageRow }, showAvatar && props.renderAvatar ? /* @__PURE__ */ React__default.createElement(View, { style: styles.messageAvatarWrap }, props.renderAvatar(props)) : null, /* @__PURE__ */ React__default.createElement(View, { style: [styles.messageBubbleWrap, !showAvatar && styles.messageBubbleWrapFull] }, renderBubble(props))), [showAvatar, renderBubble]);
|
|
148
|
+
const renderMessageText = useCallback((props) => {
|
|
149
|
+
var _a2, _b, _c, _d;
|
|
150
|
+
const isAssistant = ((_b = (_a2 = props.currentMessage) == null ? void 0 : _a2.user) == null ? void 0 : _b._id) !== currentUser.id;
|
|
151
|
+
const text = (_d = (_c = props.currentMessage) == null ? void 0 : _c.text) != null ? _d : "";
|
|
152
|
+
if (isAssistant && text) {
|
|
153
|
+
return /* @__PURE__ */ React__default.createElement(Markdown, { style: {
|
|
154
|
+
body: {
|
|
155
|
+
color: "#111827",
|
|
156
|
+
fontSize: 15,
|
|
157
|
+
lineHeight: 22
|
|
158
|
+
},
|
|
159
|
+
heading1: {
|
|
160
|
+
fontSize: 18,
|
|
161
|
+
fontWeight: "700",
|
|
162
|
+
marginTop: 12,
|
|
163
|
+
marginBottom: 4
|
|
164
|
+
},
|
|
165
|
+
heading2: {
|
|
166
|
+
fontSize: 16,
|
|
167
|
+
fontWeight: "700",
|
|
168
|
+
marginTop: 10,
|
|
169
|
+
marginBottom: 4
|
|
170
|
+
},
|
|
171
|
+
heading3: {
|
|
172
|
+
fontSize: 15,
|
|
173
|
+
fontWeight: "600",
|
|
174
|
+
marginTop: 8,
|
|
175
|
+
marginBottom: 4
|
|
176
|
+
},
|
|
177
|
+
strong: {
|
|
178
|
+
fontWeight: "700"
|
|
179
|
+
},
|
|
180
|
+
paragraph: {
|
|
181
|
+
marginTop: 4,
|
|
182
|
+
marginBottom: 4
|
|
183
|
+
},
|
|
184
|
+
list_item: {
|
|
185
|
+
marginVertical: 2
|
|
186
|
+
},
|
|
187
|
+
bullet_list: {
|
|
188
|
+
marginVertical: 4
|
|
189
|
+
},
|
|
190
|
+
ordered_list: {
|
|
191
|
+
marginVertical: 4
|
|
192
|
+
},
|
|
193
|
+
code_inline: {
|
|
194
|
+
backgroundColor: "#f3f4f6",
|
|
195
|
+
paddingHorizontal: 4,
|
|
196
|
+
borderRadius: 4,
|
|
197
|
+
fontSize: 14
|
|
198
|
+
},
|
|
199
|
+
code_block: {
|
|
200
|
+
backgroundColor: "#f3f4f6",
|
|
201
|
+
padding: 12,
|
|
202
|
+
borderRadius: 8,
|
|
203
|
+
marginVertical: 8,
|
|
204
|
+
fontSize: 14
|
|
205
|
+
}
|
|
206
|
+
} }, text);
|
|
207
|
+
}
|
|
208
|
+
return /* @__PURE__ */ React__default.createElement(MessageText, __spreadValues({}, props));
|
|
209
|
+
}, [currentUser.id]);
|
|
210
|
+
const onSendFromInput = useCallback(() => {
|
|
211
|
+
const t = inputValue.trim();
|
|
212
|
+
if (!t) return;
|
|
213
|
+
onSend(t);
|
|
214
|
+
setInputValue("");
|
|
215
|
+
}, [inputValue, onSend]);
|
|
216
|
+
const renderInputToolbarCallback = useCallback((props) => /* @__PURE__ */ React__default.createElement(View, { style: styles.inputToolbarWrap }, renderInputToolbar({
|
|
217
|
+
value: inputValue,
|
|
218
|
+
onChange: setInputValue,
|
|
219
|
+
onSend: onSendFromInput,
|
|
220
|
+
disabled: disabled || isLoading
|
|
221
|
+
})), [inputValue, disabled, isLoading, onSendFromInput, renderInputToolbar]);
|
|
222
|
+
return /* @__PURE__ */ React__default.createElement(KeyboardAvoidingView, { style: styles.container, behavior: Platform.OS === "ios" ? "padding" : void 0, keyboardVerticalOffset: Platform.OS === "ios" ? 64 : 0 }, /* @__PURE__ */ React__default.createElement(View, { style: styles.chatArea }, /* @__PURE__ */ React__default.createElement(GiftedChat, { messageContainerRef: messageListRef, messages: messagesWithStreaming, onSend: handleSend, user: {
|
|
223
|
+
_id: currentUser.id,
|
|
224
|
+
name: (_a = currentUser.name) != null ? _a : "You",
|
|
225
|
+
avatar: currentUser.avatar
|
|
226
|
+
}, renderMessage, renderBubble, renderMessageText, renderInputToolbar: renderInputToolbarCallback, renderComposer: () => null, renderSend: () => null, renderAvatar: showAvatar ? void 0 : () => null, showUserAvatar: showAvatar, renderTime: showDate ? void 0 : () => null, renderDay: showDate ? void 0 : () => null, listViewProps: {
|
|
227
|
+
style: styles.list,
|
|
228
|
+
contentContainerStyle: [styles.listContent, listContentStyleOverride],
|
|
229
|
+
onScroll: handleScroll,
|
|
230
|
+
scrollEventThrottle: 100
|
|
231
|
+
}, messagesContainerStyle: [styles.messagesContainer, styles.messagesContainerFullWidth, messagesContainerStyleOverride], scrollToBottom: false, minInputToolbarHeight: 56 }), scrollFlags.showScrollToBottom && /* @__PURE__ */ React__default.createElement(TouchableOpacity, { style: styles.scrollFabBottom, onPress: scrollToBottom, activeOpacity: 0.8, accessibilityLabel: "Scroll to bottom" }, /* @__PURE__ */ React__default.createElement(Text, { style: styles.scrollFabText }, "\u2193")), scrollFlags.showScrollToTop && /* @__PURE__ */ React__default.createElement(TouchableOpacity, { style: styles.scrollFabTop, onPress: scrollToTop, activeOpacity: 0.8, accessibilityLabel: "Scroll to top" }, /* @__PURE__ */ React__default.createElement(Text, { style: styles.scrollFabText }, "\u2191"))));
|
|
232
|
+
}
|
|
233
|
+
const styles = StyleSheet.create({
|
|
234
|
+
container: {
|
|
235
|
+
flex: 1
|
|
236
|
+
},
|
|
237
|
+
chatArea: {
|
|
238
|
+
flex: 1
|
|
239
|
+
},
|
|
240
|
+
list: {
|
|
241
|
+
flex: 1
|
|
242
|
+
},
|
|
243
|
+
listContent: {
|
|
244
|
+
flexGrow: 1,
|
|
245
|
+
justifyContent: "flex-end",
|
|
246
|
+
paddingTop: 0,
|
|
247
|
+
paddingBottom: 8,
|
|
248
|
+
paddingHorizontal: 0
|
|
249
|
+
},
|
|
250
|
+
messagesContainer: {
|
|
251
|
+
paddingTop: 0,
|
|
252
|
+
paddingBottom: 8
|
|
253
|
+
},
|
|
254
|
+
messagesContainerFullWidth: {
|
|
255
|
+
paddingHorizontal: 0,
|
|
256
|
+
paddingLeft: 0,
|
|
257
|
+
paddingRight: 0,
|
|
258
|
+
marginHorizontal: 0
|
|
259
|
+
},
|
|
260
|
+
messageRow: {
|
|
261
|
+
width: "100%",
|
|
262
|
+
paddingHorizontal: 0,
|
|
263
|
+
marginHorizontal: 0,
|
|
264
|
+
flexDirection: "row",
|
|
265
|
+
alignItems: "flex-end",
|
|
266
|
+
marginBottom: 4
|
|
267
|
+
},
|
|
268
|
+
messageAvatarWrap: {
|
|
269
|
+
marginRight: 8
|
|
270
|
+
},
|
|
271
|
+
messageBubbleWrap: {
|
|
272
|
+
flex: 1,
|
|
273
|
+
minWidth: 0
|
|
274
|
+
},
|
|
275
|
+
messageBubbleWrapFull: {
|
|
276
|
+
width: "100%",
|
|
277
|
+
flex: void 0
|
|
278
|
+
},
|
|
279
|
+
scrollToBottom: {
|
|
280
|
+
width: 32,
|
|
281
|
+
height: 32,
|
|
282
|
+
borderRadius: 16,
|
|
283
|
+
backgroundColor: "#fff",
|
|
284
|
+
marginBottom: 8
|
|
285
|
+
},
|
|
286
|
+
scrollFabBottom: {
|
|
287
|
+
position: "absolute",
|
|
288
|
+
right: 12,
|
|
289
|
+
bottom: 120,
|
|
290
|
+
width: 40,
|
|
291
|
+
height: 40,
|
|
292
|
+
borderRadius: 20,
|
|
293
|
+
backgroundColor: "#fff",
|
|
294
|
+
alignItems: "center",
|
|
295
|
+
justifyContent: "center",
|
|
296
|
+
shadowColor: "#000",
|
|
297
|
+
shadowOffset: {
|
|
298
|
+
width: 0,
|
|
299
|
+
height: 1
|
|
300
|
+
},
|
|
301
|
+
shadowOpacity: 0.2,
|
|
302
|
+
shadowRadius: 2,
|
|
303
|
+
elevation: 3
|
|
304
|
+
},
|
|
305
|
+
scrollFabTop: {
|
|
306
|
+
position: "absolute",
|
|
307
|
+
right: 12,
|
|
308
|
+
top: 12,
|
|
309
|
+
width: 40,
|
|
310
|
+
height: 40,
|
|
311
|
+
borderRadius: 20,
|
|
312
|
+
backgroundColor: "#fff",
|
|
313
|
+
alignItems: "center",
|
|
314
|
+
justifyContent: "center",
|
|
315
|
+
shadowColor: "#000",
|
|
316
|
+
shadowOffset: {
|
|
317
|
+
width: 0,
|
|
318
|
+
height: 1
|
|
319
|
+
},
|
|
320
|
+
shadowOpacity: 0.2,
|
|
321
|
+
shadowRadius: 2,
|
|
322
|
+
elevation: 3
|
|
323
|
+
},
|
|
324
|
+
scrollFabText: {
|
|
325
|
+
fontSize: 20,
|
|
326
|
+
color: "#2563eb",
|
|
327
|
+
fontWeight: "600"
|
|
328
|
+
},
|
|
329
|
+
inputToolbarWrap: {
|
|
330
|
+
paddingHorizontal: 8,
|
|
331
|
+
paddingVertical: 8,
|
|
332
|
+
backgroundColor: "#fff",
|
|
333
|
+
borderTopWidth: 1,
|
|
334
|
+
borderTopColor: BORDER_COLOR
|
|
335
|
+
}
|
|
336
|
+
});export{PlanModeView};//# sourceMappingURL=PlanModeView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlanModeView.js","sources":["../../../src/components/messages-container-ui/PlanModeView.tsx"],"sourcesContent":["import React, { useCallback, useMemo, useRef, useState } from 'react';\nimport {\n View,\n Text,\n TouchableOpacity,\n StyleSheet,\n Platform,\n KeyboardAvoidingView,\n type StyleProp,\n type ViewStyle,\n} from 'react-native';\nimport { GiftedChat, IMessage, MessageText, Bubble } from 'react-native-gifted-chat';\nimport Markdown from 'react-native-markdown-display';\nimport type { PlanMessage } from './types';\n\nconst USER_BUBBLE_BG = '#2563eb';\nconst ASSISTANT_BUBBLE_BG = '#ffffff';\nconst BORDER_COLOR = '#e5e7eb';\n\nexport interface PlanModeViewInputToolbarProps {\n value: string;\n onChange: (text: string) => void;\n onSend: () => void;\n disabled?: boolean;\n}\n\nexport interface PlanModeViewProps {\n messages: PlanMessage[];\n streamingContent?: string;\n currentUser: { id: string; name?: string; avatar?: string };\n onSend: (text: string) => void;\n disabled?: boolean;\n isLoading?: boolean;\n onStop?: () => void;\n /** Optional overrides for message list layout */\n messagesContainerStyle?: StyleProp<ViewStyle>;\n /** Optional overrides for list content */\n listContentStyle?: StyleProp<ViewStyle>;\n /** Show date/timestamp on messages. Default false (Kimi-style: hide). */\n showDate?: boolean;\n /** Show avatar/icon next to messages. Default false (Kimi-style: hide). */\n showAvatar?: boolean;\n /** Show border around assistant message bubbles. Default false (hide). */\n showMessageBubbleBorder?: boolean;\n /** Input component is passed from outside; receives value, onChange, onSend, disabled */\n renderInputToolbar: (props: PlanModeViewInputToolbarProps) => React.ReactNode;\n}\n\nfunction planMessageToGifted(msg: PlanMessage, currentUserId: string, index: number, total: number): IMessage {\n const isUser = msg.role === 'user';\n return {\n _id: msg.id,\n text: msg.content,\n createdAt: new Date(Date.now() - (total - 1 - index) * 60000),\n user: {\n _id: isUser ? currentUserId : 'assistant',\n name: isUser ? 'You' : 'Assistant',\n avatar: isUser ? undefined : undefined,\n },\n };\n}\n\nexport function PlanModeView({\n messages,\n streamingContent,\n currentUser,\n onSend,\n disabled = false,\n isLoading = false,\n onStop,\n messagesContainerStyle: messagesContainerStyleOverride,\n listContentStyle: listContentStyleOverride,\n showDate = false,\n showAvatar = false,\n showMessageBubbleBorder = false,\n renderInputToolbar,\n}: PlanModeViewProps) {\n const [inputValue, setInputValue] = React.useState('');\n const messageListRef = useRef<any>(null);\n const [scrollFlags, setScrollFlags] = useState({ showScrollToBottom: false, showScrollToTop: false });\n\n const SCROLL_THRESHOLD = 60;\n const handleScroll = useCallback((e: any) => {\n const { contentOffset, contentSize, layoutMeasurement } = e.nativeEvent;\n const { y: offsetY } = contentOffset;\n const contentHeight = contentSize?.height ?? 0;\n const layoutHeight = layoutMeasurement?.height ?? 0;\n const maxOffset = Math.max(0, contentHeight - layoutHeight);\n setScrollFlags({\n showScrollToBottom: maxOffset > SCROLL_THRESHOLD && offsetY > SCROLL_THRESHOLD,\n showScrollToTop: maxOffset > SCROLL_THRESHOLD && offsetY < maxOffset - SCROLL_THRESHOLD,\n });\n }, []);\n\n const scrollToBottom = useCallback(() => {\n messageListRef.current?.scrollToOffset?.({ offset: 0, animated: true });\n }, []);\n const scrollToTop = useCallback(() => {\n messageListRef.current?.scrollToEnd?.({ animated: true });\n }, []);\n\n const giftedMessages: IMessage[] = useMemo(() => {\n const list = messages.map((m, i) => planMessageToGifted(m, currentUser.id, i, messages.length));\n return [...list].reverse();\n }, [messages, currentUser.id]);\n\n const messagesWithStreaming = useMemo(() => {\n if (!streamingContent?.trim()) return giftedMessages;\n const streamMsg: IMessage = {\n _id: '__streaming__',\n text: streamingContent,\n createdAt: new Date(Date.now() + 60000),\n user: { _id: 'assistant', name: 'Assistant' },\n };\n return [streamMsg, ...giftedMessages];\n }, [giftedMessages, streamingContent]);\n\n const handleSend = useCallback(\n (msgs: IMessage[] = []) => {\n const text = (msgs[0]?.text ?? '').trim();\n if (!text) return;\n onSend(text);\n },\n [onSend],\n );\n\n const renderBubble = useCallback(\n (props: any) => {\n const isUser = props.currentMessage?.user?._id === props.user?._id;\n return (\n <Bubble\n {...props}\n renderTime={showDate ? undefined : () => null}\n wrapperStyle={{\n right: {\n backgroundColor: USER_BUBBLE_BG,\n borderRadius: 16,\n padding: 12,\n maxWidth: '92%',\n marginHorizontal: 8,\n },\n left: {\n backgroundColor: ASSISTANT_BUBBLE_BG,\n borderRadius: 16,\n padding: 12,\n width: '100%',\n maxWidth: '100%',\n alignSelf: 'stretch',\n marginHorizontal: 0,\n ...(showMessageBubbleBorder && { borderWidth: 1, borderColor: BORDER_COLOR }),\n },\n }}\n textStyle={{\n right: { color: '#ffffff', fontSize: 15 },\n left: { color: '#111827', fontSize: 15 },\n }}\n />\n );\n },\n [showDate, showMessageBubbleBorder],\n );\n\n const renderMessage = useCallback(\n (props: any) => (\n <View style={styles.messageRow}>\n {showAvatar && props.renderAvatar ? (\n <View style={styles.messageAvatarWrap}>{props.renderAvatar(props)}</View>\n ) : null}\n <View style={[styles.messageBubbleWrap, !showAvatar && styles.messageBubbleWrapFull]}>\n {renderBubble(props)}\n </View>\n </View>\n ),\n [showAvatar, renderBubble],\n );\n\n const renderMessageText = useCallback(\n (props: any) => {\n const isAssistant = props.currentMessage?.user?._id !== currentUser.id;\n const text = props.currentMessage?.text ?? '';\n if (isAssistant && text) {\n return (\n <Markdown\n style={{\n body: { color: '#111827', fontSize: 15, lineHeight: 22 },\n heading1: { fontSize: 18, fontWeight: '700', marginTop: 12, marginBottom: 4 },\n heading2: { fontSize: 16, fontWeight: '700', marginTop: 10, marginBottom: 4 },\n heading3: { fontSize: 15, fontWeight: '600', marginTop: 8, marginBottom: 4 },\n strong: { fontWeight: '700' },\n paragraph: { marginTop: 4, marginBottom: 4 },\n list_item: { marginVertical: 2 },\n bullet_list: { marginVertical: 4 },\n ordered_list: { marginVertical: 4 },\n code_inline: {\n backgroundColor: '#f3f4f6',\n paddingHorizontal: 4,\n borderRadius: 4,\n fontSize: 14,\n },\n code_block: {\n backgroundColor: '#f3f4f6',\n padding: 12,\n borderRadius: 8,\n marginVertical: 8,\n fontSize: 14,\n },\n }}\n >\n {text}\n </Markdown>\n );\n }\n return <MessageText {...props} />;\n },\n [currentUser.id],\n );\n\n const onSendFromInput = useCallback(() => {\n const t = inputValue.trim();\n if (!t) return;\n onSend(t);\n setInputValue('');\n }, [inputValue, onSend]);\n\n const renderInputToolbarCallback = useCallback(\n (props: any) => (\n <View style={styles.inputToolbarWrap}>\n {renderInputToolbar({\n value: inputValue,\n onChange: setInputValue,\n onSend: onSendFromInput,\n disabled: disabled || isLoading,\n })}\n </View>\n ),\n [inputValue, disabled, isLoading, onSendFromInput, renderInputToolbar],\n );\n\n return (\n <KeyboardAvoidingView\n style={styles.container}\n behavior={Platform.OS === 'ios' ? 'padding' : undefined}\n keyboardVerticalOffset={Platform.OS === 'ios' ? 64 : 0}\n >\n <View style={styles.chatArea}>\n <GiftedChat\n messageContainerRef={messageListRef}\n messages={messagesWithStreaming}\n onSend={handleSend}\n user={{ _id: currentUser.id, name: currentUser.name ?? 'You', avatar: currentUser.avatar }}\n renderMessage={renderMessage}\n renderBubble={renderBubble}\n renderMessageText={renderMessageText}\n renderInputToolbar={renderInputToolbarCallback}\n renderComposer={() => null}\n renderSend={() => null}\n renderAvatar={showAvatar ? undefined : () => null}\n showUserAvatar={showAvatar}\n renderTime={showDate ? undefined : () => null}\n renderDay={showDate ? undefined : () => null}\n listViewProps={{\n style: styles.list,\n contentContainerStyle: [styles.listContent, listContentStyleOverride],\n onScroll: handleScroll,\n scrollEventThrottle: 100,\n }}\n messagesContainerStyle={[\n styles.messagesContainer,\n styles.messagesContainerFullWidth,\n messagesContainerStyleOverride,\n ]}\n scrollToBottom={false}\n minInputToolbarHeight={56}\n />\n {scrollFlags.showScrollToBottom && (\n <TouchableOpacity\n style={styles.scrollFabBottom}\n onPress={scrollToBottom}\n activeOpacity={0.8}\n accessibilityLabel=\"Scroll to bottom\"\n >\n <Text style={styles.scrollFabText}>↓</Text>\n </TouchableOpacity>\n )}\n {scrollFlags.showScrollToTop && (\n <TouchableOpacity\n style={styles.scrollFabTop}\n onPress={scrollToTop}\n activeOpacity={0.8}\n accessibilityLabel=\"Scroll to top\"\n >\n <Text style={styles.scrollFabText}>↑</Text>\n </TouchableOpacity>\n )}\n </View>\n </KeyboardAvoidingView>\n );\n}\n\nconst styles = StyleSheet.create({\n container: { flex: 1 },\n chatArea: { flex: 1 },\n list: { flex: 1 },\n listContent: { flexGrow: 1, justifyContent: 'flex-end', paddingTop: 0, paddingBottom: 8, paddingHorizontal: 0 },\n messagesContainer: { paddingTop: 0, paddingBottom: 8 },\n messagesContainerFullWidth: { paddingHorizontal: 0, paddingLeft: 0, paddingRight: 0, marginHorizontal: 0 },\n messageRow: {\n width: '100%',\n paddingHorizontal: 0,\n marginHorizontal: 0,\n flexDirection: 'row',\n alignItems: 'flex-end',\n marginBottom: 4,\n },\n messageAvatarWrap: { marginRight: 8 },\n messageBubbleWrap: { flex: 1, minWidth: 0 },\n messageBubbleWrapFull: { width: '100%', flex: undefined },\n scrollToBottom: { width: 32, height: 32, borderRadius: 16, backgroundColor: '#fff', marginBottom: 8 },\n scrollFabBottom: {\n position: 'absolute',\n right: 12,\n bottom: 120,\n width: 40,\n height: 40,\n borderRadius: 20,\n backgroundColor: '#fff',\n alignItems: 'center',\n justifyContent: 'center',\n shadowColor: '#000',\n shadowOffset: { width: 0, height: 1 },\n shadowOpacity: 0.2,\n shadowRadius: 2,\n elevation: 3,\n },\n scrollFabTop: {\n position: 'absolute',\n right: 12,\n top: 12,\n width: 40,\n height: 40,\n borderRadius: 20,\n backgroundColor: '#fff',\n alignItems: 'center',\n justifyContent: 'center',\n shadowColor: '#000',\n shadowOffset: { width: 0, height: 1 },\n shadowOpacity: 0.2,\n shadowRadius: 2,\n elevation: 3,\n },\n scrollFabText: { fontSize: 20, color: '#2563eb', fontWeight: '600' },\n inputToolbarWrap: {\n paddingHorizontal: 8,\n paddingVertical: 8,\n backgroundColor: '#fff',\n borderTopWidth: 1,\n borderTopColor: BORDER_COLOR,\n },\n});\n"],"names":["React","_a"],"mappings":"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"}
|
package/lib/compute.js
CHANGED
|
@@ -42,8 +42,7 @@ const inboxPageStore = [{
|
|
|
42
42
|
componentPath: "@messenger-box/platform-mobile/lib/screens/inbox/DialogThreads.js",
|
|
43
43
|
hasComponent: true,
|
|
44
44
|
queries: {
|
|
45
|
-
|
|
46
|
-
ThreadMessagesDocument: "{channelId: params.channelId,role: params.role,limit: params.limit,repliesLimit2: 5}"
|
|
45
|
+
ChannelDetailDocument: "{}"
|
|
47
46
|
}
|
|
48
47
|
}, {
|
|
49
48
|
key: "threadmessage",
|
|
@@ -68,7 +67,7 @@ const inboxPageStore = [{
|
|
|
68
67
|
componentPath: "@messenger-box/platform-mobile/lib/screens/inbox/DialogThreadMessages.js",
|
|
69
68
|
hasComponent: true,
|
|
70
69
|
queries: {
|
|
71
|
-
|
|
70
|
+
ChannelDetailDocument: "{}"
|
|
72
71
|
}
|
|
73
72
|
}];
|
|
74
73
|
const selectedRoutes = ["message", "thread", "threadmessage"];
|
package/lib/compute.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compute.js","sources":["../src/compute.ts"],"sourcesContent":["/* eslint-disable import/no-extraneous-dependencies */\nimport { getFilteredRoutes } from '@common-stack/client-react/lib/utils/filteredRoutes.js';\nimport type { IRouteModule } from '@common-stack/core';\n\nexport const inboxPageStore: IRouteModule[] = [\n {\n key: 'message',\n path: '/message',\n name: 'Message',\n exact: true,\n component: () => import('./screens/inbox/DialogMessages'),\n props: {\n initialParams: { channelId: null, role: null, isShowThreadMessage: true },\n options: {\n headerShown: true,\n title: 'Inbox',\n headerBackTitleVisible: false,\n gestureEnabled: false,\n swipeEnabled: false,\n },\n },\n },\n {\n key: 'thread',\n path: '/thread',\n name: 'Thread',\n exact: true,\n component: () => import('./screens/inbox/DialogThreads'),\n props: {\n initialParams: { channelId: null, postParentId: null, role: null },\n options: {\n headerShown: true,\n title: 'Thread',\n headerBackTitleVisible: false,\n gestureEnabled: false,\n swipeEnabled: false,\n },\n },\n },\n {\n key: 'threadmessage',\n path: '/threadmessage',\n name: 'ThreadMessage',\n exact: true,\n component: () => import('./screens/inbox/DialogThreadMessages'),\n props: {\n initialParams: { channelId: null, postParentId: null, isPostParentIdThread: null, role: null },\n options: {\n headerShown: true,\n title: 'Inbox',\n headerBackTitleVisible: false,\n gestureEnabled: false,\n swipeEnabled: false,\n },\n },\n },\n];\n\nconst selectedRoutes = ['message', 'thread', 'threadmessage'];\n\nconst filteredRoutes = getFilteredRoutes(inboxPageStore, selectedRoutes);\n\nexport { filteredRoutes };\n"],"names":[],"mappings":"uFAGO,MAAM,iBAAiC,CAAC;AAAA,EAC7C,
|
|
1
|
+
{"version":3,"file":"compute.js","sources":["../src/compute.ts"],"sourcesContent":["/* eslint-disable import/no-extraneous-dependencies */\nimport { getFilteredRoutes } from '@common-stack/client-react/lib/utils/filteredRoutes.js';\nimport type { IRouteModule } from '@common-stack/core';\n\nexport const inboxPageStore: IRouteModule[] = [\n {\n key: 'message',\n path: '/message',\n name: 'Message',\n exact: true,\n component: () => import('./screens/inbox/DialogMessages'),\n props: {\n initialParams: { channelId: null, role: null, isShowThreadMessage: true },\n options: {\n headerShown: true,\n title: 'Inbox',\n headerBackTitleVisible: false,\n gestureEnabled: false,\n swipeEnabled: false,\n },\n },\n },\n {\n key: 'thread',\n path: '/thread',\n name: 'Thread',\n exact: true,\n component: () => import('./screens/inbox/DialogThreads'),\n props: {\n initialParams: { channelId: null, postParentId: null, role: null },\n options: {\n headerShown: true,\n title: 'Thread',\n headerBackTitleVisible: false,\n gestureEnabled: false,\n swipeEnabled: false,\n },\n },\n },\n {\n key: 'threadmessage',\n path: '/threadmessage',\n name: 'ThreadMessage',\n exact: true,\n component: () => import('./screens/inbox/DialogThreadMessages'),\n props: {\n initialParams: { channelId: null, postParentId: null, isPostParentIdThread: null, role: null },\n options: {\n headerShown: true,\n title: 'Inbox',\n headerBackTitleVisible: false,\n gestureEnabled: false,\n swipeEnabled: false,\n },\n },\n },\n];\n\nconst selectedRoutes = ['message', 'thread', 'threadmessage'];\n\nconst filteredRoutes = getFilteredRoutes(inboxPageStore, selectedRoutes);\n\nexport { filteredRoutes };\n"],"names":[],"mappings":"uFAGO,MAAM,iBAAiC,CAAC;AAAA,EAC7C,GAAA,EAAK,SAAA;AAAA,EACL,IAAA,EAAM,UAAA;AAAA,EACN,IAAA,EAAM,SAAA;AAAA,EACN,KAAA,EAAO,IAAA;AAAA,EACP,SAAA,EAAW,MAAM,OAAO,mCAAgC,CAAA;AAAA,EACxD,KAAA,EAAO;AAAA,IACL,aAAA,EAAe;AAAA,MACb,SAAA,EAAW,IAAA;AAAA,MACX,IAAA,EAAM,IAAA;AAAA,MACN,mBAAA,EAAqB;AAAA,KACvB;AAAA,IACA,OAAA,EAAS;AAAA,MACP,WAAA,EAAa,IAAA;AAAA,MACb,KAAA,EAAO,OAAA;AAAA,MACP,sBAAA,EAAwB,KAAA;AAAA,MACxB,cAAA,EAAgB,KAAA;AAAA,MAChB,YAAA,EAAc;AAAA;AAChB;AAEJ,CAAA,EAAG;AAAA,EACD,GAAA,EAAK,QAAA;AAAA,EACL,IAAA,EAAM,SAAA;AAAA,EACN,IAAA,EAAM,QAAA;AAAA,EACN,KAAA,EAAO,IAAA;AAAA,EACP,SAAA,EAAW,MAAM,OAAO,kCAA+B,CAAA;AAAA,EACvD,KAAA,EAAO;AAAA,IACL,aAAA,EAAe;AAAA,MACb,SAAA,EAAW,IAAA;AAAA,MACX,YAAA,EAAc,IAAA;AAAA,MACd,IAAA,EAAM;AAAA,KACR;AAAA,IACA,OAAA,EAAS;AAAA,MACP,WAAA,EAAa,IAAA;AAAA,MACb,KAAA,EAAO,QAAA;AAAA,MACP,sBAAA,EAAwB,KAAA;AAAA,MACxB,cAAA,EAAgB,KAAA;AAAA,MAChB,YAAA,EAAc;AAAA;AAChB;AAEJ,CAAA,EAAG;AAAA,EACD,GAAA,EAAK,eAAA;AAAA,EACL,IAAA,EAAM,gBAAA;AAAA,EACN,IAAA,EAAM,eAAA;AAAA,EACN,KAAA,EAAO,IAAA;AAAA,EACP,SAAA,EAAW,MAAM,OAAO,yCAAsC,CAAA;AAAA,EAC9D,KAAA,EAAO;AAAA,IACL,aAAA,EAAe;AAAA,MACb,SAAA,EAAW,IAAA;AAAA,MACX,YAAA,EAAc,IAAA;AAAA,MACd,oBAAA,EAAsB,IAAA;AAAA,MACtB,IAAA,EAAM;AAAA,KACR;AAAA,IACA,OAAA,EAAS;AAAA,MACP,WAAA,EAAa,IAAA;AAAA,MACb,KAAA,EAAO,OAAA;AAAA,MACP,sBAAA,EAAwB,KAAA;AAAA,MACxB,cAAA,EAAgB,KAAA;AAAA,MAChB,YAAA,EAAc;AAAA;AAChB;AAEJ,CAAC;AACD,MAAM,cAAA,GAAiB,CAAC,SAAA,EAAW,QAAA,EAAU,eAAe,CAAA;AAC5D,MAAM,cAAA,GAAiB,iBAAA,CAAkB,cAAA,EAAgB,cAAc"}
|
package/lib/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import PlatformModule from'./module.js';import {Feature}from'@common-stack/client-react';export{Inbox}from'./screens/inbox/Inbox.js';export{DialogMessages}from'./screens/inbox/DialogMessages.js';export{DialogThreads}from'./screens/inbox/DialogThreads.js';export{DialogThreadMessages}from'./screens/inbox/DialogThreadMessages.js';var index = new Feature(PlatformModule);export{index as default};//# sourceMappingURL=index.js.map
|
|
1
|
+
import PlatformModule from'./module.js';import {Feature}from'@common-stack/client-react';export{Inbox}from'./screens/inbox/Inbox.js';export{DialogMessages}from'./screens/inbox/DialogMessages.js';export{DialogThreads}from'./screens/inbox/DialogThreads.js';export{DialogThreadMessages}from'./screens/inbox/DialogThreadMessages.js';export{MessagesContainerUI,MessagesContainerUI as MessengerDisplayUI}from'./components/messages-container-ui/MessagesContainerUI.js';export{PlanModeView}from'./components/messages-container-ui/PlanModeView.js';export{BuildModeView}from'./components/messages-container-ui/BuildModeView.js';var index = new Feature(PlatformModule);export{index as default};//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["import PlatformModule from './module';\n\nimport { Feature } from '@common-stack/client-react';\n\nexport default new Feature(PlatformModule);\n// export * from './navigation';\nexport * from './screens';\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["import PlatformModule from './module';\n\nimport { Feature } from '@common-stack/client-react';\n// import * as inboxQueries from './queries/inboxQueries';\n\nexport default new Feature(PlatformModule);\n// export * from './navigation';\nexport * from './screens';\nexport * from './components';\n// export { inboxQueries };\n"],"names":[],"mappings":"0mBAIA,YAAe,IAAI,QAAQ,cAAc,CAAA"}
|
package/lib/module.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.js","sources":["../src/module.ts"],"sourcesContent":["/* eslint-disable import/no-extraneous-dependencies */\nimport { Feature } from '@common-stack/client-react';\nimport { schema, typePolicies, dataIdFromObject } from '@messenger-box/platform-client';\nimport {filteredRoutes} from './compute';\n\nexport default new Feature({\n dataIdFromObject,\n clientStateParams: { typeDefs: schema, typePolicies },\n routeConfig: filteredRoutes as any,\n});\n"],"names":[],"mappings":"6KAIA,qBAAe,IAAI,
|
|
1
|
+
{"version":3,"file":"module.js","sources":["../src/module.ts"],"sourcesContent":["/* eslint-disable import/no-extraneous-dependencies */\nimport { Feature } from '@common-stack/client-react';\nimport { schema, typePolicies, dataIdFromObject } from '@messenger-box/platform-client';\nimport {filteredRoutes} from './compute';\n\nexport default new Feature({\n dataIdFromObject,\n clientStateParams: { typeDefs: schema, typePolicies },\n routeConfig: filteredRoutes as any,\n});\n"],"names":[],"mappings":"6KAIA,qBAAe,IAAI,OAAA,CAAQ;AAAA,EACzB,gBAAA;AAAA,EACA,iBAAA,EAAmB;AAAA,IACjB,QAAA,EAAU,MAAA;AAAA,IACV;AAAA,GACF;AAAA,EACA,WAAA,EAAa;AACf,CAAC,CAAA"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import {useViewChannelDetailQuery,useThreadMessagesQuery,OnThreadCreatedUpdatedDocument,useSendThreadMessageMutation,OnChatMessageAddedDocument,MessagesDocument,useOnThreadCreatedUpdatedSubscription,useCreatePostThreadMutation,useSendExpoNotificationOnPostMutation,useGetPostThreadLazyQuery,useAddDirectChannelMutation,useMessagesQuery}from'common/graphql';export{useMessagesQuery,useSendMessagesMutation,useThreadMessagesQuery}from'common/graphql';import'react';var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
3
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
4
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
|
+
var __spreadValues = (a, b) => {
|
|
7
|
+
for (var prop in b || (b = {}))
|
|
8
|
+
if (__hasOwnProp.call(b, prop))
|
|
9
|
+
__defNormalProp(a, prop, b[prop]);
|
|
10
|
+
if (__getOwnPropSymbols)
|
|
11
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
12
|
+
if (__propIsEnum.call(b, prop))
|
|
13
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14
|
+
}
|
|
15
|
+
return a;
|
|
16
|
+
};
|
|
17
|
+
const useChannelDetailQuery = (channelId, options = {}) => {
|
|
18
|
+
return useViewChannelDetailQuery(__spreadValues({
|
|
19
|
+
variables: {
|
|
20
|
+
channelId
|
|
21
|
+
}
|
|
22
|
+
}, options));
|
|
23
|
+
};
|
|
24
|
+
const useThreadMessagesQueryWithOptions = (variables, options = {}) => {
|
|
25
|
+
return useThreadMessagesQuery(__spreadValues({
|
|
26
|
+
variables,
|
|
27
|
+
fetchPolicy: "cache-and-network",
|
|
28
|
+
refetchWritePolicy: "overwrite",
|
|
29
|
+
nextFetchPolicy: "network-only"
|
|
30
|
+
}, options));
|
|
31
|
+
};
|
|
32
|
+
const useChannelMessagesQuery = (variables = {}, options = {}) => {
|
|
33
|
+
return useMessagesQuery(__spreadValues({
|
|
34
|
+
variables,
|
|
35
|
+
fetchPolicy: "cache-and-network",
|
|
36
|
+
nextFetchPolicy: "cache-first",
|
|
37
|
+
refetchWritePolicy: "merge"
|
|
38
|
+
}, options));
|
|
39
|
+
};
|
|
40
|
+
const useAddDirectChannel = () => {
|
|
41
|
+
return useAddDirectChannelMutation();
|
|
42
|
+
};
|
|
43
|
+
const MESSAGES_DOCUMENT = MessagesDocument;
|
|
44
|
+
const useSendThreadMessage = () => {
|
|
45
|
+
return useSendThreadMessageMutation();
|
|
46
|
+
};
|
|
47
|
+
const useSendExpoNotification = () => {
|
|
48
|
+
return useSendExpoNotificationOnPostMutation();
|
|
49
|
+
};
|
|
50
|
+
const useCreatePostThread = (options = {}) => {
|
|
51
|
+
return useCreatePostThreadMutation(options);
|
|
52
|
+
};
|
|
53
|
+
const CHAT_MESSAGE_ADDED = OnChatMessageAddedDocument;
|
|
54
|
+
const THREAD_CREATED_UPDATED = OnThreadCreatedUpdatedDocument;
|
|
55
|
+
const useThreadCreatedUpdatedSubscription = (options = {}) => {
|
|
56
|
+
return useOnThreadCreatedUpdatedSubscription(__spreadValues({}, options));
|
|
57
|
+
};
|
|
58
|
+
const useGetPostThreadLazy = (options = {}) => {
|
|
59
|
+
return useGetPostThreadLazyQuery(__spreadValues({
|
|
60
|
+
fetchPolicy: "cache-and-network"
|
|
61
|
+
}, options));
|
|
62
|
+
};export{CHAT_MESSAGE_ADDED,MESSAGES_DOCUMENT,THREAD_CREATED_UPDATED,useAddDirectChannel,useChannelDetailQuery,useChannelMessagesQuery,useCreatePostThread,useGetPostThreadLazy,useSendExpoNotification,useSendThreadMessage,useThreadCreatedUpdatedSubscription,useThreadMessagesQueryWithOptions};//# sourceMappingURL=inboxQueries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inboxQueries.js","sources":["../../src/queries/inboxQueries.ts"],"sourcesContent":["// Imports from common/graphql\nimport {\n useGetChannelsByUserWithServiceChannelsQuery,\n useGetChannelsByUserQuery,\n OnChatMessageAddedDocument,\n OnThreadCreatedUpdatedDocument,\n useViewChannelDetailQuery,\n useThreadMessagesQuery,\n useSupportServiceChannelsQuery,\n useSendThreadMessageMutation,\n useMessagesQuery,\n useSendMessagesMutation,\n useAddDirectChannelMutation,\n MessagesDocument,\n useSendExpoNotificationOnPostMutation,\n useOnThreadCreatedUpdatedSubscription,\n useOnChatMessageAddedSubscription,\n useOnThreadChatMessageAddedSubscription,\n useCreatePostThreadMutation,\n useGetPostThreadLazyQuery,\n} from 'common/graphql';\nimport { useCallback } from 'react';\n\n// ====== CHANNEL QUERIES ======\n\n/**\n * Hook for fetching channels by user including service channels\n * @param options - Query options\n * @returns Query result with data, loading state, refetch and fetchMore functions\n */\nexport const useChannelsQuery = (options: any = {}) => {\n return useGetChannelsByUserQuery({\n ...options,\n fetchPolicy: 'cache-and-network',\n //nextFetchPolicy: 'network-only',\n });\n};\n\n/**\n * Hook for fetching service channels\n * @param options - Query options\n * @returns Query result with data, loading state and refetch function\n */\nexport const useServiceChannelsQuery = (options: any = {}) => {\n return useSupportServiceChannelsQuery({\n ...options,\n fetchPolicy: 'cache-and-network',\n });\n};\n\n/**\n * Hook for fetching channel details\n * @param channelId - ID of the channel to fetch\n * @param options - Additional query options\n * @returns Query result with channel details\n */\nexport const useChannelDetailQuery = (channelId: string, options: any = {}) => {\n return useViewChannelDetailQuery({\n variables: { channelId },\n ...options,\n });\n};\n\n// ====== THREAD QUERIES ======\n\n/**\n * Direct export of the thread messages query hook\n */\nexport { useThreadMessagesQuery };\n\n/**\n * Direct export of the messages query hook\n */\nexport { useMessagesQuery };\n\n/**\n * Hook for fetching thread messages with default options\n * @param variables - Query variables including channelId, role, and limit\n * @param options - Additional query options\n * @returns Query result with thread messages data\n */\nexport const useThreadMessagesQueryWithOptions = (variables: any, options: any = {}) => {\n return useThreadMessagesQuery({\n variables,\n fetchPolicy: 'cache-and-network',\n refetchWritePolicy: 'overwrite',\n nextFetchPolicy: 'network-only',\n ...options,\n });\n};\n\n// ====== MESSAGE QUERIES ======\n\n/**\n * Hook for fetching channel messages\n * @param variables - Query variables including channelId, parentId, and pagination params\n * @param options - Additional query options\n * @returns Query result for messages\n */\nexport const useChannelMessagesQuery = (variables: any = {}, options: any = {}) => {\n return useMessagesQuery({\n variables,\n fetchPolicy: 'cache-and-network',\n nextFetchPolicy: 'cache-first',\n refetchWritePolicy: 'merge',\n ...options,\n });\n};\n\n/**\n * Hook for sending messages in a channel\n * @returns Mutation function and result\n */\nexport { useSendMessagesMutation };\n\n/**\n * Hook for adding a direct channel\n * @returns Mutation function and result\n */\nexport const useAddDirectChannel = () => {\n return useAddDirectChannelMutation();\n};\n\n/**\n * Messages document for queries\n */\nexport const MESSAGES_DOCUMENT = MessagesDocument;\n\n// ====== MUTATIONS ======\n\n/**\n * Hook for sending thread messages\n * @returns Mutation function and result\n */\nexport const useSendThreadMessage = () => {\n return useSendThreadMessageMutation();\n};\n\n/**\n * Hook for sending expo notifications\n * @returns Mutation function and result\n */\nexport const useSendExpoNotification = () => {\n return useSendExpoNotificationOnPostMutation();\n};\n\n/**\n * Hook for creating a post thread\n * @param options - Mutation options\n * @returns Mutation function and result\n */\nexport const useCreatePostThread = (options: any = {}) => {\n return useCreatePostThreadMutation(options);\n};\n\n// ====== SUBSCRIPTION DOCUMENTS ======\n\n/**\n * Document for chat message added subscription\n */\nexport const CHAT_MESSAGE_ADDED = OnChatMessageAddedDocument;\n\n/**\n * Document for thread created/updated subscription\n */\nexport const THREAD_CREATED_UPDATED = OnThreadCreatedUpdatedDocument;\n\n/**\n * Hook for subscribing to thread creation and updates\n * @returns Subscription result for thread creation/update events\n */\nexport const useThreadCreatedUpdatedSubscription = (options: any = {}) => {\n return useOnThreadCreatedUpdatedSubscription({\n ...options,\n });\n};\n\n/**\n * Hook for subscribing to chat message additions\n * @param options - Subscription options including variables like channelId\n * @returns Subscription result for new chat messages\n */\nexport const useChatMessageAddedSubscription = (options: any = {}) => {\n return useOnChatMessageAddedSubscription({\n ...options,\n });\n};\n\n/**\n * Hook for subscribing to thread chat message additions\n * @param options - Subscription options including variables like channelId and threadId\n * @returns Subscription result for new thread chat messages\n */\nexport const useThreadChatMessageAddedSubscription = (options: any = {}) => {\n return useOnThreadChatMessageAddedSubscription({\n ...options,\n });\n};\n\n// ====== LAZY QUERIES ======\n\n/**\n * Hook for lazily fetching a post thread\n * @param options - Lazy query options\n * @returns Lazy query function and result\n */\nexport const useGetPostThreadLazy = (options: any = {}) => {\n return useGetPostThreadLazyQuery({\n fetchPolicy: 'cache-and-network',\n ...options,\n });\n};\n\n// ====== CUSTOM QUERY HOOKS ======\n\n/**\n * Custom hook that combines channels and provides refresh functionality\n */\nexport const useInboxChannels = () => {\n const queryResult = useChannelsQuery();\n\n const refresh = useCallback(() => {\n return queryResult.refetch();\n }, [queryResult.refetch]);\n\n const loadMore = useCallback(\n (page: number) => {\n if (queryResult.loading || !queryResult.data) return;\n\n return queryResult.fetchMore({\n variables: { page },\n updateQuery: (prev, { fetchMoreResult }) => {\n if (!fetchMoreResult) return prev;\n\n return {\n ...fetchMoreResult,\n channelsByUser: [...(prev.channelsByUser || []), ...(fetchMoreResult.channelsByUser || [])],\n // supportServiceChannels: [\n // ...(prev.supportServiceChannels || []),\n // ...(fetchMoreResult.supportServiceChannels || []),\n // ],\n };\n },\n });\n },\n [queryResult.fetchMore, queryResult.loading, queryResult.data],\n );\n\n return {\n ...queryResult,\n refresh,\n loadMore,\n };\n};\n\n/**\n * Custom hook for thread message operations\n */\nexport const useThreadOperations = (channelId: string, options: any = {}) => {\n const queryResult = useThreadMessagesQueryWithOptions({ channelId, ...options.variables }, options.queryOptions);\n\n const [sendMessage, sendMessageResult] = useSendThreadMessage();\n\n const refresh = useCallback(() => {\n return queryResult.refetch();\n }, [queryResult.refetch]);\n\n const fetchMoreMessages = useCallback(\n (variables: any) => {\n return queryResult.fetchMore({\n variables,\n updateQuery: (prev, { fetchMoreResult }) => {\n if (!fetchMoreResult?.threadMessages?.data) return prev;\n\n return {\n ...prev,\n threadMessages: {\n ...prev.threadMessages,\n data: [...fetchMoreResult.threadMessages.data, ...(prev.threadMessages?.data || [])],\n },\n };\n },\n });\n },\n [queryResult.fetchMore],\n );\n\n return {\n data: queryResult.data,\n loading: queryResult.loading,\n error: queryResult.error,\n refresh,\n fetchMoreMessages,\n sendMessage,\n sendMessageResult,\n };\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAqCO,MAAM,qBAAA,GAAwB,CAAC,SAAA,EAAmB,OAAA,GAAe,EAAC,KAAM;AAC7E,EAAA,OAAO,yBAAA,CAA0B,cAAA,CAAA;AAAA,IAC/B,SAAA,EAAW;AAAA,MACT;AAAA;AACF,GAAA,EACG,OAAA,CACJ,CAAA;AACH;AAoBO,MAAM,iCAAA,GAAoC,CAAC,SAAA,EAAgB,OAAA,GAAe,EAAC,KAAM;AACtF,EAAA,OAAO,sBAAA,CAAuB,cAAA,CAAA;AAAA,IAC5B,SAAA;AAAA,IACA,WAAA,EAAa,mBAAA;AAAA,IACb,kBAAA,EAAoB,WAAA;AAAA,IACpB,eAAA,EAAiB;AAAA,GAAA,EACd,OAAA,CACJ,CAAA;AACH;AAUO,MAAM,0BAA0B,CAAC,SAAA,GAAiB,EAAC,EAAG,OAAA,GAAe,EAAC,KAAM;AACjF,EAAA,OAAO,gBAAA,CAAiB,cAAA,CAAA;AAAA,IACtB,SAAA;AAAA,IACA,WAAA,EAAa,mBAAA;AAAA,IACb,eAAA,EAAiB,aAAA;AAAA,IACjB,kBAAA,EAAoB;AAAA,GAAA,EACjB,OAAA,CACJ,CAAA;AACH;AAYO,MAAM,sBAAsB,MAAM;AACvC,EAAA,OAAO,2BAAA,EAA4B;AACrC;AAKO,MAAM,iBAAA,GAAoB;AAQ1B,MAAM,uBAAuB,MAAM;AACxC,EAAA,OAAO,4BAAA,EAA6B;AACtC;AAMO,MAAM,0BAA0B,MAAM;AAC3C,EAAA,OAAO,qCAAA,EAAsC;AAC/C;AAOO,MAAM,mBAAA,GAAsB,CAAC,OAAA,GAAe,EAAC,KAAM;AACxD,EAAA,OAAO,4BAA4B,OAAO,CAAA;AAC5C;AAOO,MAAM,kBAAA,GAAqB;AAK3B,MAAM,sBAAA,GAAyB;AAM/B,MAAM,mCAAA,GAAsC,CAAC,OAAA,GAAe,EAAC,KAAM;AACxE,EAAA,OAAO,qCAAA,CAAsC,mBACxC,OAAA,CACJ,CAAA;AACH;AA+BO,MAAM,oBAAA,GAAuB,CAAC,OAAA,GAAe,EAAC,KAAM;AACzD,EAAA,OAAO,yBAAA,CAA0B,cAAA,CAAA;AAAA,IAC/B,WAAA,EAAa;AAAA,GAAA,EACV,OAAA,CACJ,CAAA;AACH"}
|
package/lib/routes.json
CHANGED
|
@@ -46,8 +46,7 @@
|
|
|
46
46
|
"componentPath": "@messenger-box/platform-mobile/lib/screens/inbox/DialogThreads.js",
|
|
47
47
|
"hasComponent": true,
|
|
48
48
|
"queries": {
|
|
49
|
-
"
|
|
50
|
-
"ThreadMessagesDocument": "{channelId: params.channelId,role: params.role,limit: params.limit,repliesLimit2: 5}"
|
|
49
|
+
"ChannelDetailDocument": "{}"
|
|
51
50
|
}
|
|
52
51
|
}
|
|
53
52
|
},
|
|
@@ -75,7 +74,7 @@
|
|
|
75
74
|
"componentPath": "@messenger-box/platform-mobile/lib/screens/inbox/DialogThreadMessages.js",
|
|
76
75
|
"hasComponent": true,
|
|
77
76
|
"queries": {
|
|
78
|
-
"
|
|
77
|
+
"ChannelDetailDocument": "{}"
|
|
79
78
|
}
|
|
80
79
|
}
|
|
81
80
|
}
|
|
@@ -33,13 +33,18 @@ function DialogMessages(_a) {
|
|
|
33
33
|
var _b = _a, {
|
|
34
34
|
channelId,
|
|
35
35
|
role,
|
|
36
|
-
isShowThreadMessage = true
|
|
36
|
+
isShowThreadMessage = true,
|
|
37
|
+
isPaymentChatUI = false
|
|
37
38
|
} = _b, rest = __objRest(_b, [
|
|
38
39
|
"channelId",
|
|
39
40
|
"role",
|
|
40
|
-
"isShowThreadMessage"
|
|
41
|
+
"isShowThreadMessage",
|
|
42
|
+
"isPaymentChatUI"
|
|
41
43
|
]);
|
|
42
44
|
var _a2, _b2, _c;
|
|
43
45
|
const currentRoute = navigationRef.isReady() ? (_a2 = navigationRef) == null ? void 0 : _a2.getCurrentRoute() : null;
|
|
44
|
-
return
|
|
46
|
+
return (
|
|
47
|
+
// <Box bg={'white'} flex={1} pt={5}>
|
|
48
|
+
/* @__PURE__ */ React.createElement(Box, { className: "bg-white flex-1" }, /* @__PURE__ */ React.createElement(ConversationView, __spreadProps(__spreadValues({}, rest), { channelId: (_c = (_b2 = currentRoute == null ? void 0 : currentRoute.params) == null ? void 0 : _b2.channelId) != null ? _c : channelId, role, isShowThreadMessage, isPaymentChatUI })))
|
|
49
|
+
);
|
|
45
50
|
}export{DialogMessages,DialogMessages as default};//# sourceMappingURL=DialogMessages.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogMessages.js","sources":["../../../src/screens/inbox/DialogMessages.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Box } from '@admin-layout/gluestack-ui-mobile';\nimport { ConversationView } from './containers/ConversationView';\nimport { navigationRef } from '@common-stack/client-react';\n\nexport function DialogMessages({ channelId, role, isShowThreadMessage = true, ...rest }) {\n const currentRoute = navigationRef.isReady() ? navigationRef?.getCurrentRoute() : null;\n return (\n // <Box bg={'white'} flex={1} pt={5}>\n <Box className=\"bg-white flex-1\">\n <ConversationView\n {...rest}\n channelId={currentRoute?.params?.channelId ?? channelId}\n role={role}\n isShowThreadMessage={isShowThreadMessage}\n />\n </Box>\n );\n}\n\nexport default DialogMessages;\n"],"names":["_a","_b"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIO,SAAS,eAAe,
|
|
1
|
+
{"version":3,"file":"DialogMessages.js","sources":["../../../src/screens/inbox/DialogMessages.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Box } from '@admin-layout/gluestack-ui-mobile';\nimport { ConversationView } from './containers/ConversationView';\nimport { navigationRef } from '@common-stack/client-react';\n\nexport function DialogMessages({ channelId, role, isShowThreadMessage = true, isPaymentChatUI = false, ...rest }) {\n const currentRoute = navigationRef.isReady() ? navigationRef?.getCurrentRoute() : null;\n return (\n // <Box bg={'white'} flex={1} pt={5}>\n <Box className=\"bg-white flex-1\">\n <ConversationView\n {...rest}\n channelId={currentRoute?.params?.channelId ?? channelId}\n role={role}\n isShowThreadMessage={isShowThreadMessage}\n isPaymentChatUI={isPaymentChatUI}\n />\n </Box>\n );\n}\n\nexport default DialogMessages;\n"],"names":["_a","_b"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIO,SAAS,eAAe,EAAA,EAM5B;AAN4B,EAAA,IAAA,EAAA,GAAA,EAAA,EAC7B;AAAA,IAAA,SAAA;AAAA,IACA,IAAA;AAAA,IACA,mBAAA,GAAsB,IAAA;AAAA,IACtB,eAAA,GAAkB;AAAA,GARpB,GAI+B,EAAA,EAK1B,IAAA,GAAA,SAAA,CAL0B,EAAA,EAK1B;AAAA,IAJH,WAAA;AAAA,IACA,MAAA;AAAA,IACA,qBAAA;AAAA,IACA;AAAA,GAAA,CAAA;AARF,EAAA,IAAAA,KAAAC,GAAAA,EAAA,EAAA;AAWE,EAAA,MAAM,eAAe,aAAA,CAAc,OAAA,MAAYD,GAAAA,GAAA,aAAA,KAAA,IAAA,GAAA,MAAA,GAAAA,IAAe,eAAA,EAAA,GAAoB,IAAA;AAClF,EAAA;AAAA;AAAA,oBAEE,KAAA,CAAA,aAAA,CAAC,OAAI,SAAA,EAAU,iBAAA,EAAA,sCACN,gBAAA,EAAA,aAAA,CAAA,cAAA,CAAA,EAAA,EAAqB,IAAA,CAAA,EAArB,EAA2B,SAAA,EAAA,CAAW,EAAA,GAAA,CAAAC,MAAA,YAAA,IAAA,IAAA,GAAA,MAAA,GAAA,YAAA,CAAc,MAAA,KAAd,gBAAAA,GAAAA,CAAsB,SAAA,KAAtB,YAAmC,SAAA,EAAW,IAAA,EAAY,mBAAA,EAA0C,eAAA,EAAA,CAAkC,CACjL;AAAA;AAER"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import*as React from'react';import {Box,Spinner}from'@admin-layout/gluestack-ui-mobile';import {ThreadConversationView}from'./containers/ThreadConversationView.js';import {
|
|
1
|
+
import*as React from'react';import {Box,Spinner}from'@admin-layout/gluestack-ui-mobile';import {ThreadConversationView}from'./containers/ThreadConversationView.js';import {useChannelDetailQuery,useSendThreadMessage}from'../../queries/inboxQueries.js';import {useFocusEffect}from'@react-navigation/native';import colors from'tailwindcss/colors';function DialogThreadMessages({
|
|
2
2
|
channelId,
|
|
3
3
|
postParentId,
|
|
4
4
|
isPostParentIdThread,
|
|
@@ -8,12 +8,8 @@ import*as React from'react';import {Box,Spinner}from'@admin-layout/gluestack-ui-
|
|
|
8
8
|
data,
|
|
9
9
|
loading: channelLoading,
|
|
10
10
|
refetch
|
|
11
|
-
} =
|
|
12
|
-
|
|
13
|
-
id: channelId == null ? void 0 : channelId.toString()
|
|
14
|
-
}
|
|
15
|
-
});
|
|
16
|
-
const [sendThreadMessage] = useSendThreadMessageMutation();
|
|
11
|
+
} = useChannelDetailQuery(channelId == null ? void 0 : channelId.toString(), {});
|
|
12
|
+
const [sendThreadMessage] = useSendThreadMessage();
|
|
17
13
|
const [loading, setLoading] = React.useState(true);
|
|
18
14
|
const [channel, setChannel] = React.useState(null);
|
|
19
15
|
const [parentId, setParentId] = React.useState(postParentId);
|
|
@@ -23,10 +19,9 @@ import*as React from'react';import {Box,Spinner}from'@admin-layout/gluestack-ui-
|
|
|
23
19
|
});
|
|
24
20
|
}, [channelId]);
|
|
25
21
|
useFocusEffect(React.useCallback(() => {
|
|
26
|
-
if (channelId)
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
});
|
|
22
|
+
if (channelId) refetch({
|
|
23
|
+
id: channelId == null ? void 0 : channelId.toString()
|
|
24
|
+
});
|
|
30
25
|
return () => {
|
|
31
26
|
};
|
|
32
27
|
}, [channelId]));
|