@developer_tribe/react-native-comnyx 0.3.1 → 0.3.3

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 (179) hide show
  1. package/lib/commonjs/App.js +8 -3
  2. package/lib/commonjs/App.js.map +1 -1
  3. package/lib/commonjs/assets/arrow-right.png +0 -0
  4. package/lib/commonjs/assets/headphones-01.png +0 -0
  5. package/lib/commonjs/assets/iconamoon_clock-fill.png +0 -0
  6. package/lib/commonjs/assets/info-circle.png +0 -0
  7. package/lib/commonjs/assets/message-notification-square.png +0 -0
  8. package/lib/commonjs/assets/x-close.png +0 -0
  9. package/lib/commonjs/components/ChatList.js +355 -50
  10. package/lib/commonjs/components/ChatList.js.map +1 -1
  11. package/lib/commonjs/components/CustomAlert.js +132 -0
  12. package/lib/commonjs/components/CustomAlert.js.map +1 -0
  13. package/lib/commonjs/components/CustomerForm.js +252 -198
  14. package/lib/commonjs/components/CustomerForm.js.map +1 -1
  15. package/lib/commonjs/components/EmptyList.js +36 -11
  16. package/lib/commonjs/components/EmptyList.js.map +1 -1
  17. package/lib/commonjs/components/InitFailed.js +8 -5
  18. package/lib/commonjs/components/InitFailed.js.map +1 -1
  19. package/lib/commonjs/components/MessageInput.js +49 -16
  20. package/lib/commonjs/components/MessageInput.js.map +1 -1
  21. package/lib/commonjs/components/MessageItem.js +133 -42
  22. package/lib/commonjs/components/MessageItem.js.map +1 -1
  23. package/lib/commonjs/components/ScaledSheet.js +67 -0
  24. package/lib/commonjs/components/ScaledSheet.js.map +1 -0
  25. package/lib/commonjs/components/SizeMatter.js +27 -0
  26. package/lib/commonjs/components/SizeMatter.js.map +1 -0
  27. package/lib/commonjs/index.js +7 -0
  28. package/lib/commonjs/index.js.map +1 -1
  29. package/lib/commonjs/store.js +15 -9
  30. package/lib/commonjs/store.js.map +1 -1
  31. package/lib/commonjs/types/Theme.js +20 -2
  32. package/lib/commonjs/types/Theme.js.map +1 -1
  33. package/lib/commonjs/utils/deepMap.js +38 -0
  34. package/lib/commonjs/utils/deepMap.js.map +1 -0
  35. package/lib/commonjs/utils/formatDate.js +16 -0
  36. package/lib/commonjs/utils/formatDate.js.map +1 -0
  37. package/lib/commonjs/utils/scalingUtils.js +33 -0
  38. package/lib/commonjs/utils/scalingUtils.js.map +1 -0
  39. package/lib/commonjs/viewabilityConfig.js +11 -0
  40. package/lib/commonjs/viewabilityConfig.js.map +1 -0
  41. package/lib/module/App.js +8 -3
  42. package/lib/module/App.js.map +1 -1
  43. package/lib/module/assets/arrow-right.png +0 -0
  44. package/lib/module/assets/headphones-01.png +0 -0
  45. package/lib/module/assets/iconamoon_clock-fill.png +0 -0
  46. package/lib/module/assets/info-circle.png +0 -0
  47. package/lib/module/assets/message-notification-square.png +0 -0
  48. package/lib/module/assets/x-close.png +0 -0
  49. package/lib/module/components/ChatList.js +357 -54
  50. package/lib/module/components/ChatList.js.map +1 -1
  51. package/lib/module/components/CustomAlert.js +127 -0
  52. package/lib/module/components/CustomAlert.js.map +1 -0
  53. package/lib/module/components/CustomerForm.js +253 -200
  54. package/lib/module/components/CustomerForm.js.map +1 -1
  55. package/lib/module/components/EmptyList.js +38 -13
  56. package/lib/module/components/EmptyList.js.map +1 -1
  57. package/lib/module/components/InitFailed.js +9 -6
  58. package/lib/module/components/InitFailed.js.map +1 -1
  59. package/lib/module/components/MessageInput.js +50 -17
  60. package/lib/module/components/MessageInput.js.map +1 -1
  61. package/lib/module/components/MessageItem.js +134 -44
  62. package/lib/module/components/MessageItem.js.map +1 -1
  63. package/lib/module/components/ScaledSheet.js +62 -0
  64. package/lib/module/components/ScaledSheet.js.map +1 -0
  65. package/lib/module/components/SizeMatter.js +23 -0
  66. package/lib/module/components/SizeMatter.js.map +1 -0
  67. package/lib/module/index.js +1 -0
  68. package/lib/module/index.js.map +1 -1
  69. package/lib/module/store.js +15 -9
  70. package/lib/module/store.js.map +1 -1
  71. package/lib/module/types/Theme.js +20 -2
  72. package/lib/module/types/Theme.js.map +1 -1
  73. package/lib/module/utils/deepMap.js +34 -0
  74. package/lib/module/utils/deepMap.js.map +1 -0
  75. package/lib/module/utils/formatDate.js +11 -0
  76. package/lib/module/utils/formatDate.js.map +1 -0
  77. package/lib/module/utils/scalingUtils.js +25 -0
  78. package/lib/module/utils/scalingUtils.js.map +1 -0
  79. package/lib/module/viewabilityConfig.js +7 -0
  80. package/lib/module/viewabilityConfig.js.map +1 -0
  81. package/lib/typescript/commonjs/src/App.d.ts +2 -1
  82. package/lib/typescript/commonjs/src/App.d.ts.map +1 -1
  83. package/lib/typescript/commonjs/src/components/ChatList.d.ts +3 -1
  84. package/lib/typescript/commonjs/src/components/ChatList.d.ts.map +1 -1
  85. package/lib/typescript/commonjs/src/components/CustomAlert.d.ts +15 -0
  86. package/lib/typescript/commonjs/src/components/CustomAlert.d.ts.map +1 -0
  87. package/lib/typescript/commonjs/src/components/CustomerForm.d.ts +3 -1
  88. package/lib/typescript/commonjs/src/components/CustomerForm.d.ts.map +1 -1
  89. package/lib/typescript/commonjs/src/components/EmptyList.d.ts.map +1 -1
  90. package/lib/typescript/commonjs/src/components/InitFailed.d.ts.map +1 -1
  91. package/lib/typescript/commonjs/src/components/MessageInput.d.ts +1 -0
  92. package/lib/typescript/commonjs/src/components/MessageInput.d.ts.map +1 -1
  93. package/lib/typescript/commonjs/src/components/MessageItem.d.ts +2 -1
  94. package/lib/typescript/commonjs/src/components/MessageItem.d.ts.map +1 -1
  95. package/lib/typescript/commonjs/src/components/ScaledSheet.d.ts +2 -0
  96. package/lib/typescript/commonjs/src/components/ScaledSheet.d.ts.map +1 -0
  97. package/lib/typescript/commonjs/src/components/SizeMatter.d.ts +7 -0
  98. package/lib/typescript/commonjs/src/components/SizeMatter.d.ts.map +1 -0
  99. package/lib/typescript/commonjs/src/index.d.ts +1 -0
  100. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  101. package/lib/typescript/commonjs/src/store.d.ts +6 -0
  102. package/lib/typescript/commonjs/src/store.d.ts.map +1 -1
  103. package/lib/typescript/commonjs/src/types/Conversation.d.ts +2 -0
  104. package/lib/typescript/commonjs/src/types/Conversation.d.ts.map +1 -1
  105. package/lib/typescript/commonjs/src/types/Theme.d.ts +9 -0
  106. package/lib/typescript/commonjs/src/types/Theme.d.ts.map +1 -1
  107. package/lib/typescript/commonjs/src/utils/deepMap.d.ts +7 -0
  108. package/lib/typescript/commonjs/src/utils/deepMap.d.ts.map +1 -0
  109. package/lib/typescript/commonjs/src/utils/formatDate.d.ts +2 -0
  110. package/lib/typescript/commonjs/src/utils/formatDate.d.ts.map +1 -0
  111. package/lib/typescript/commonjs/src/utils/scalingUtils.d.ts +10 -0
  112. package/lib/typescript/commonjs/src/utils/scalingUtils.d.ts.map +1 -0
  113. package/lib/typescript/commonjs/src/viewabilityConfig.d.ts +5 -0
  114. package/lib/typescript/commonjs/src/viewabilityConfig.d.ts.map +1 -0
  115. package/lib/typescript/module/src/App.d.ts +2 -1
  116. package/lib/typescript/module/src/App.d.ts.map +1 -1
  117. package/lib/typescript/module/src/components/ChatList.d.ts +3 -1
  118. package/lib/typescript/module/src/components/ChatList.d.ts.map +1 -1
  119. package/lib/typescript/module/src/components/CustomAlert.d.ts +15 -0
  120. package/lib/typescript/module/src/components/CustomAlert.d.ts.map +1 -0
  121. package/lib/typescript/module/src/components/CustomerForm.d.ts +3 -1
  122. package/lib/typescript/module/src/components/CustomerForm.d.ts.map +1 -1
  123. package/lib/typescript/module/src/components/EmptyList.d.ts.map +1 -1
  124. package/lib/typescript/module/src/components/InitFailed.d.ts.map +1 -1
  125. package/lib/typescript/module/src/components/MessageInput.d.ts +1 -0
  126. package/lib/typescript/module/src/components/MessageInput.d.ts.map +1 -1
  127. package/lib/typescript/module/src/components/MessageItem.d.ts +2 -1
  128. package/lib/typescript/module/src/components/MessageItem.d.ts.map +1 -1
  129. package/lib/typescript/module/src/components/ScaledSheet.d.ts +2 -0
  130. package/lib/typescript/module/src/components/ScaledSheet.d.ts.map +1 -0
  131. package/lib/typescript/module/src/components/SizeMatter.d.ts +7 -0
  132. package/lib/typescript/module/src/components/SizeMatter.d.ts.map +1 -0
  133. package/lib/typescript/module/src/index.d.ts +1 -0
  134. package/lib/typescript/module/src/index.d.ts.map +1 -1
  135. package/lib/typescript/module/src/store.d.ts +6 -0
  136. package/lib/typescript/module/src/store.d.ts.map +1 -1
  137. package/lib/typescript/module/src/types/Conversation.d.ts +2 -0
  138. package/lib/typescript/module/src/types/Conversation.d.ts.map +1 -1
  139. package/lib/typescript/module/src/types/Theme.d.ts +9 -0
  140. package/lib/typescript/module/src/types/Theme.d.ts.map +1 -1
  141. package/lib/typescript/module/src/utils/deepMap.d.ts +7 -0
  142. package/lib/typescript/module/src/utils/deepMap.d.ts.map +1 -0
  143. package/lib/typescript/module/src/utils/formatDate.d.ts +2 -0
  144. package/lib/typescript/module/src/utils/formatDate.d.ts.map +1 -0
  145. package/lib/typescript/module/src/utils/scalingUtils.d.ts +10 -0
  146. package/lib/typescript/module/src/utils/scalingUtils.d.ts.map +1 -0
  147. package/lib/typescript/module/src/viewabilityConfig.d.ts +5 -0
  148. package/lib/typescript/module/src/viewabilityConfig.d.ts.map +1 -0
  149. package/package.json +2 -2
  150. package/src/App.tsx +4 -2
  151. package/src/assets/arrow-right.png +0 -0
  152. package/src/assets/headphones-01.png +0 -0
  153. package/src/assets/iconamoon_clock-fill.png +0 -0
  154. package/src/assets/info-circle.png +0 -0
  155. package/src/assets/message-notification-square.png +0 -0
  156. package/src/assets/x-close.png +0 -0
  157. package/src/components/ChatList.tsx +413 -60
  158. package/src/components/CustomAlert.tsx +132 -0
  159. package/src/components/CustomerForm.tsx +272 -224
  160. package/src/components/EmptyList.tsx +31 -7
  161. package/src/components/InitFailed.tsx +9 -6
  162. package/src/components/MessageInput.tsx +86 -49
  163. package/src/components/MessageItem.tsx +181 -58
  164. package/src/components/ScaledSheet.ts +93 -0
  165. package/src/components/SizeMatter.tsx +22 -0
  166. package/src/index.tsx +1 -0
  167. package/src/store.ts +13 -3
  168. package/src/types/Conversation.ts +2 -0
  169. package/src/types/Theme.ts +27 -0
  170. package/src/utils/deepMap.ts +47 -0
  171. package/src/utils/formatDate.ts +8 -0
  172. package/src/utils/scalingUtils.ts +27 -0
  173. package/src/viewabilityConfig.ts +4 -0
  174. package/lib/commonjs/assets/double-check.png +0 -0
  175. package/lib/commonjs/assets/send.png +0 -0
  176. package/lib/module/assets/double-check.png +0 -0
  177. package/lib/module/assets/send.png +0 -0
  178. package/src/assets/double-check.png +0 -0
  179. package/src/assets/send.png +0 -0
@@ -1,17 +1,22 @@
1
1
  "use strict";
2
2
 
3
- import { useCallback, useEffect, useRef, useState } from 'react';
3
+ import { useCallback, useEffect, useRef, useState, useMemo } from 'react';
4
4
  import { useAppStore } from "../store.js";
5
- import { FlatList, View, useWindowDimensions, ActivityIndicator, Image, TouchableOpacity, Keyboard, Pressable } from 'react-native';
6
- import { getCustomerConversation } from "../api/index.js";
7
- import { StyleSheet } from 'react-native';
5
+ import { SectionList, View, useWindowDimensions, ActivityIndicator, Image, TouchableOpacity } from 'react-native';
6
+ import { getCustomerConversation, sendCustomerMessage } from "../api/index.js";
8
7
  import { MessageItem } from "./MessageItem.js";
9
8
  import { MessageInput } from "./MessageInput.js";
10
9
  import { useThemeColors } from "../hooks/useThemeColors.js";
11
10
  import { AppText } from "./AppText.js";
12
11
  import { InitFailed } from "./InitFailed.js";
13
12
  import { EmptyList } from "./EmptyList.js";
13
+ import CustomPopup from "./CustomAlert.js";
14
+ import { ScaledSheet } from "./ScaledSheet.js";
15
+ import { formatDate } from "../utils/formatDate.js";
16
+ import { viewabilityConfig } from "../viewabilityConfig.js";
14
17
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
18
+ const headphonesIcon = require('../assets/headphones-01.png');
19
+ const closeIcon = require('../assets/x-close.png');
15
20
  function LoadingItem() {
16
21
  const themeColors = useThemeColors();
17
22
  return /*#__PURE__*/_jsx(View, {
@@ -24,7 +29,9 @@ function LoadingItem() {
24
29
  })
25
30
  });
26
31
  }
27
- export function ChatList() {
32
+ export function ChatList({
33
+ onBack
34
+ }) {
28
35
  const themeColors = useThemeColors();
29
36
  const {
30
37
  height: windowHeight
@@ -49,6 +56,89 @@ export function ChatList() {
49
56
  const [initFailed, setInitFailed] = useState(false);
50
57
  const [isScrollingUp, setIsScrollingUp] = useState(false);
51
58
  const listChangedRef = useRef(false);
59
+ const [popupVisible, setPopupVisible] = useState(false);
60
+ const [selectedMessage, setSelectedMessage] = useState('');
61
+ const [currentSection, setCurrentSection] = useState('');
62
+ const sections = useMemo(() => {
63
+ if (!data || data.length === 0) return [];
64
+ const messagesByDate = {};
65
+ data.forEach(message => {
66
+ const dateKey = formatDate(message.created_at);
67
+ if (!messagesByDate[dateKey]) {
68
+ messagesByDate[dateKey] = [];
69
+ }
70
+ // @ts-ignore
71
+ messagesByDate[dateKey].push(message);
72
+ });
73
+ return Object.entries(messagesByDate).map(([title, messages]) => ({
74
+ title,
75
+ data: messages.sort((a, b) => b.created_at.getTime() - a.created_at.getTime())
76
+ }));
77
+ }, [data]);
78
+ const resendMessage = useCallback(() => {
79
+ if (selectedMessage && customer?.external_id) {
80
+ const currentMessage = useAppStore.getState().data || [];
81
+ const messageIndex = currentMessage.findIndex(msg => msg.content === selectedMessage);
82
+ if (messageIndex === -1) {
83
+ return;
84
+ }
85
+ const updatedValue = [...currentMessage];
86
+ const existingValue = updatedValue[messageIndex];
87
+ if (existingValue) {
88
+ updatedValue[messageIndex] = {
89
+ ...existingValue,
90
+ approved: false,
91
+ error: false
92
+ };
93
+ useAppStore.setState({
94
+ data: updatedValue
95
+ });
96
+ sendCustomerMessage(customer.external_id, selectedMessage, {
97
+ fake: useAppStore.getState().fake
98
+ }).then(res => {
99
+ const currentData = useAppStore.getState().data || [];
100
+ const dataIndex = currentData.findIndex(msg => msg.content === selectedMessage);
101
+ if (dataIndex !== -1) {
102
+ const updatedData = [...currentData];
103
+ const existingMessage = updatedData[dataIndex];
104
+ if (existingMessage) {
105
+ updatedData[dataIndex] = {
106
+ ...existingMessage,
107
+ id: res.message.id,
108
+ content: res.message.content,
109
+ user: res.message.user || existingMessage.user,
110
+ approved: true,
111
+ error: false,
112
+ created_at: new Date(res.message.created_at)
113
+ };
114
+ useAppStore.setState({
115
+ data: updatedData
116
+ });
117
+ }
118
+ }
119
+ setSelectedMessage('');
120
+ }).catch(error => {
121
+ const currentData = useAppStore.getState().data || [];
122
+ const dataIndex = currentData.findIndex(msg => msg.content === selectedMessage);
123
+ if (dataIndex !== -1) {
124
+ const updatedMessage = [...currentData];
125
+ const existingData = updatedMessage[dataIndex];
126
+ if (existingData) {
127
+ updatedMessage[dataIndex] = {
128
+ ...existingData,
129
+ error: true
130
+ };
131
+ useAppStore.setState({
132
+ data: updatedMessage
133
+ });
134
+ }
135
+ }
136
+ console.error('Mesajı yeniden gönderme hatası:', error);
137
+ setSelectedMessage('');
138
+ });
139
+ }
140
+ }
141
+ }, [selectedMessage, customer]);
52
142
  const nextPage = useCallback(() => {
53
143
  if (nextPageStatus.current) {
54
144
  return;
@@ -90,26 +180,94 @@ export function ChatList() {
90
180
  }, [MESSAGES_PER_PAGE, customer?.external_id, page, setData]);
91
181
  const renderItem = useCallback(({
92
182
  item
93
- }) => /*#__PURE__*/_jsx(MessageItem, {
94
- item: item
95
- }), []);
183
+ }) => {
184
+ return /*#__PURE__*/_jsx(MessageItem, {
185
+ item: item,
186
+ onShowPopup: () => {
187
+ setSelectedMessage(item.content);
188
+ setPopupVisible(true);
189
+ }
190
+ });
191
+ }, []);
192
+ const handleViewabilityChange = useCallback(info => {
193
+ if (info.viewableItems && info.viewableItems.length > 0) {
194
+ // Find the first viewable item with a section
195
+ for (const viewableItem of info.viewableItems) {
196
+ if (viewableItem.section && viewableItem.section.title) {
197
+ const title = viewableItem.section.title;
198
+ if (title !== currentSection) {
199
+ setCurrentSection(title);
200
+ break;
201
+ }
202
+ }
203
+ }
204
+ }
205
+ }, [currentSection]);
206
+ const viewabilityConfigCallbackPairs = useRef([{
207
+ viewabilityConfig,
208
+ onViewableItemsChanged: handleViewabilityChange
209
+ }]);
210
+
211
+ // We'll use onScroll instead of onMomentumScrollEnd for more responsive updates
96
212
  const handleScroll = useCallback(event => {
97
213
  const currentScrollY = event.nativeEvent.contentOffset.y;
98
214
  const contentHeight = event.nativeEvent.contentSize.height;
99
215
  const scrollViewHeight = event.nativeEvent.layoutMeasurement.height;
100
216
  setIsScrollingUp(currentScrollY > 100);
217
+
218
+ // Only proceed if we have sections and the list is scrolled enough
219
+ if (sections && sections.length > 0 && currentScrollY > 0) {
220
+ // Create visibility info for each section
221
+ let visibleSectionIndex = -1;
222
+ let maxVisibility = 0;
223
+
224
+ // For inverted lists, we need to iterate through sections to find which one is most visible
225
+ for (let i = 0; i < sections.length; i++) {
226
+ const section = sections[i];
227
+ if (!section || !section.data) continue;
228
+ const sectionStartPercent = i / sections.length;
229
+ const sectionEndPercent = (i + 1) / sections.length;
230
+
231
+ // Convert percentages to scroll positions
232
+ const sectionStartPosition = contentHeight * sectionStartPercent;
233
+ const sectionEndPosition = contentHeight * sectionEndPercent;
234
+
235
+ // Calculate how much of this section is visible
236
+ const visibleTop = Math.max(currentScrollY, sectionStartPosition);
237
+ const visibleBottom = Math.min(currentScrollY + scrollViewHeight, sectionEndPosition);
238
+ const visibleHeight = Math.max(0, visibleBottom - visibleTop);
239
+
240
+ // Track which section has the most visibility
241
+ if (visibleHeight > maxVisibility) {
242
+ maxVisibility = visibleHeight;
243
+ visibleSectionIndex = i;
244
+ }
245
+ }
246
+
247
+ // If we found a visible section, update the header
248
+ if (visibleSectionIndex >= 0 && visibleSectionIndex < sections.length) {
249
+ const visibleSection = sections[visibleSectionIndex];
250
+ if (visibleSection?.title && visibleSection.title !== currentSection) {
251
+ console.log(`Most visible section: ${visibleSection.title} (index ${visibleSectionIndex})`);
252
+ setCurrentSection(visibleSection.title);
253
+ }
254
+ }
255
+ }
256
+
257
+ // Check if we need to load more data
101
258
  if (currentScrollY >= contentHeight - scrollViewHeight - 200) {
102
259
  nextPage();
103
260
  }
104
- }, [nextPage]);
261
+ }, [nextPage, sections, currentSection]);
105
262
  const scrollToBottom = useCallback(animated => {
106
- if (ref.current && data?.length) {
107
- ref.current.scrollToOffset({
108
- offset: 0,
263
+ if (ref.current && sections.length) {
264
+ ref.current.scrollToLocation({
265
+ sectionIndex: 0,
266
+ itemIndex: 0,
109
267
  animated
110
268
  });
111
269
  }
112
- }, [data]);
270
+ }, [sections]);
113
271
  useEffect(() => {
114
272
  if (customer?.external_id && !initFailed) {
115
273
  getCustomerConversation(customer?.external_id, new Date(), 1, {
@@ -119,16 +277,16 @@ export function ChatList() {
119
277
  setData(prevData => {
120
278
  const newMessages = newData?.page?.data ?? [];
121
279
  const existingIds = new Set(prevData?.map(msg => msg.id));
122
- const uniqueNewMessages = newMessages.filter(msg => !existingIds.has(msg.id));
123
- const processedMessages = uniqueNewMessages.map(u => ({
280
+ const uniqueNewMessages = newMessages?.filter(msg => !existingIds?.has(msg.id));
281
+ const processedMessages = uniqueNewMessages?.map(u => ({
124
282
  ...u,
125
283
  created_at: new Date(u.created_at),
126
284
  approved: true
127
285
  }));
128
286
  useAppStore.setState({
129
- firstMessage: processedMessages[0]
287
+ firstMessage: processedMessages?.[0]
130
288
  });
131
- if (processedMessages.length === 0) {
289
+ if (processedMessages?.length === 0) {
132
290
  setLoading(false);
133
291
  }
134
292
  return processedMessages;
@@ -136,9 +294,18 @@ export function ChatList() {
136
294
  }).catch(e => {
137
295
  setInitFailed(true);
138
296
  console.error(e);
297
+ }).finally(() => {
298
+ setLoading(false);
139
299
  });
140
300
  }
141
301
  }, [MESSAGES_PER_PAGE, customer?.external_id, initFailed, setData]);
302
+
303
+ // Initialize the current section when sections are loaded
304
+ useEffect(() => {
305
+ if (sections.length > 0 && sections[0]?.title) {
306
+ setCurrentSection(sections[0].title);
307
+ }
308
+ }, [sections]);
142
309
  if (nexPageFailed) {
143
310
  return /*#__PURE__*/_jsx(View, {
144
311
  style: [styles.retryContainer, {
@@ -167,34 +334,83 @@ export function ChatList() {
167
334
  setInitFailed: setInitFailed
168
335
  });
169
336
  }
170
- return /*#__PURE__*/_jsxs(Pressable, {
337
+ return /*#__PURE__*/_jsxs(View, {
171
338
  style: [styles.container, {
172
339
  backgroundColor: themeColors.background
173
340
  }],
174
- onPress: Keyboard.dismiss,
175
- children: [/*#__PURE__*/_jsx(FlatList, {
176
- ref: ref,
177
- data: data,
178
- inverted: true,
179
- renderItem: renderItem,
180
- contentContainerStyle: [styles.contentContainer, {
181
- backgroundColor: themeColors.background
341
+ children: [/*#__PURE__*/_jsx(TouchableOpacity, {
342
+ style: [styles.iconContainer],
343
+ onPress: onBack,
344
+ children: /*#__PURE__*/_jsx(Image, {
345
+ source: closeIcon,
346
+ style: [styles.closeIcon, {
347
+ tintColor: themeColors.text
348
+ }]
349
+ })
350
+ }), /*#__PURE__*/_jsxs(View, {
351
+ style: [styles.headerContainer, {
352
+ backgroundColor: themeColors.background,
353
+ borderBottomColor: themeColors.lavender
182
354
  }],
183
- style: styles.list,
184
- ListEmptyComponent: !loading && (!data || data.length === 0) ? /*#__PURE__*/_jsx(EmptyList, {}) : null,
185
- ListFooterComponent: loading ? /*#__PURE__*/_jsx(LoadingItem, {}) : null,
186
- keyExtractor: item => item.id + '-' + item.created_at,
187
- removeClippedSubviews: true,
188
- maxToRenderPerBatch: 10,
189
- windowSize: 21,
190
- initialNumToRender: MESSAGES_PER_PAGE,
191
- getItemLayout: (_, index) => ({
192
- length: MESSAGE_MIN_HEIGHT + 10,
193
- offset: (MESSAGE_MIN_HEIGHT + 10) * index,
194
- index
195
- }),
196
- onScroll: handleScroll,
197
- scrollEventThrottle: 16
355
+ children: [/*#__PURE__*/_jsx(AppText, {
356
+ localization: "chat.empty",
357
+ style: [styles.header, {
358
+ color: themeColors.text
359
+ }]
360
+ }), /*#__PURE__*/_jsxs(View, {
361
+ style: [styles.headerText, {
362
+ backgroundColor: themeColors.background
363
+ }],
364
+ children: [/*#__PURE__*/_jsx(Image, {
365
+ source: headphonesIcon,
366
+ style: [styles.headphonesIcon, {
367
+ tintColor: themeColors.text
368
+ }]
369
+ }), /*#__PURE__*/_jsx(AppText, {
370
+ localization: "chat.empty",
371
+ style: [styles.liveChat, {
372
+ color: themeColors.text
373
+ }]
374
+ }), /*#__PURE__*/_jsx(View, {
375
+ style: [styles.dot, {
376
+ backgroundColor: themeColors.green
377
+ }]
378
+ })]
379
+ })]
380
+ }), /*#__PURE__*/_jsxs(View, {
381
+ style: styles.listContainer,
382
+ children: [/*#__PURE__*/_jsx(AppText, {
383
+ style: [styles.fixedDateText, {
384
+ color: themeColors.slate,
385
+ backgroundColor: themeColors.ghost
386
+ }],
387
+ children: currentSection
388
+ }), /*#__PURE__*/_jsx(SectionList, {
389
+ ref: ref,
390
+ sections: sections,
391
+ inverted: true,
392
+ renderItem: renderItem,
393
+ contentContainerStyle: [styles.contentContainer, {
394
+ backgroundColor: themeColors.background
395
+ }],
396
+ style: styles.list,
397
+ ListEmptyComponent: !loading && (!data || data.length === 0) ? /*#__PURE__*/_jsx(EmptyList, {}) : null,
398
+ ListFooterComponent: loading ? /*#__PURE__*/_jsx(LoadingItem, {}) : null,
399
+ keyExtractor: item => item.id + '-' + item.created_at,
400
+ removeClippedSubviews: true,
401
+ maxToRenderPerBatch: 10,
402
+ windowSize: 21,
403
+ initialNumToRender: MESSAGES_PER_PAGE,
404
+ getItemLayout: (_, index) => ({
405
+ length: MESSAGE_MIN_HEIGHT + 10,
406
+ offset: (MESSAGE_MIN_HEIGHT + 10) * index,
407
+ index
408
+ }),
409
+ onScroll: handleScroll,
410
+ scrollEventThrottle: 16,
411
+ viewabilityConfigCallbackPairs: viewabilityConfigCallbackPairs.current,
412
+ stickySectionHeadersEnabled: false
413
+ })]
198
414
  }), isScrollingUp && /*#__PURE__*/_jsx(TouchableOpacity, {
199
415
  style: [styles.scrollDownButton, {
200
416
  backgroundColor: themeColors.background
@@ -207,20 +423,37 @@ export function ChatList() {
207
423
  }]
208
424
  })
209
425
  }), /*#__PURE__*/_jsx(MessageInput, {
210
- scrollToBottom: scrollToBottom
426
+ scrollToBottom: scrollToBottom,
427
+ selectedMessage: selectedMessage
428
+ }), /*#__PURE__*/_jsx(CustomPopup, {
429
+ isVisible: popupVisible,
430
+ onClose: () => setPopupVisible(false),
431
+ title: 'chat.list-failed-message.title',
432
+ description: 'chat.list-failed-message.description',
433
+ onCancelButton: () => {
434
+ setPopupVisible(false);
435
+ },
436
+ onResendButton: () => {
437
+ resendMessage();
438
+ setPopupVisible(false);
439
+ },
440
+ buttonText: 'chat.list-cancel'
211
441
  })]
212
442
  });
213
443
  }
214
- const styles = StyleSheet.create({
444
+ const styles = ScaledSheet.create({
215
445
  container: {
216
- flex: 1
446
+ flex: 1,
447
+ paddingVertical: '20@vs',
448
+ position: 'relative'
217
449
  },
218
450
  list: {
219
451
  flex: 1
220
452
  },
221
453
  contentContainer: {
222
- paddingVertical: 10,
223
- paddingHorizontal: 10
454
+ paddingHorizontal: '10@s',
455
+ paddingVertical: '10@vs',
456
+ flexGrow: 1
224
457
  },
225
458
  loadingItem: {
226
459
  height: 200,
@@ -229,10 +462,11 @@ const styles = StyleSheet.create({
229
462
  },
230
463
  scrollDownButton: {
231
464
  position: 'absolute',
232
- right: 20,
465
+ right: '20@s',
233
466
  bottom: '15%',
234
- borderRadius: 25,
235
- padding: 10,
467
+ borderRadius: '25@s',
468
+ paddingHorizontal: '10@s',
469
+ paddingVertical: '10@vs',
236
470
  shadowColor: '#000',
237
471
  shadowOffset: {
238
472
  width: 0,
@@ -243,24 +477,93 @@ const styles = StyleSheet.create({
243
477
  elevation: 5
244
478
  },
245
479
  scrollUpIcon: {
246
- width: 24,
247
- height: 24
480
+ width: '24@s',
481
+ height: '24@vs'
248
482
  },
249
483
  retryContainer: {
250
484
  flex: 1,
251
485
  alignItems: 'center',
252
486
  justifyContent: 'center',
253
- padding: 20
487
+ paddingHorizontal: '20@s',
488
+ paddingVertical: '20@vs'
254
489
  },
255
490
  retryButton: {
256
491
  padding: 15,
257
- borderRadius: 8,
492
+ borderRadius: '8@s',
258
493
  alignItems: 'center',
259
494
  justifyContent: 'center'
260
495
  },
261
496
  retryText: {
262
- fontSize: 16,
497
+ fontSize: '16@vs',
263
498
  fontWeight: '500'
499
+ },
500
+ headphonesIcon: {
501
+ width: '24@s',
502
+ height: '24@vs'
503
+ },
504
+ header: {
505
+ fontSize: '16@vs',
506
+ textAlign: 'center',
507
+ fontWeight: 600
508
+ },
509
+ liveChat: {
510
+ fontSize: '16@vs',
511
+ textAlign: 'center',
512
+ fontWeight: 400
513
+ },
514
+ headerContainer: {
515
+ alignItems: 'center',
516
+ gap: 16,
517
+ borderBottomWidth: 1,
518
+ paddingBottom: '16@vs'
519
+ },
520
+ iconContainer: {
521
+ paddingHorizontal: '20@s',
522
+ paddingVertical: '20@vs',
523
+ position: 'absolute',
524
+ zIndex: 9999
525
+ },
526
+ closeIcon: {
527
+ width: '24@s',
528
+ height: '24@vs'
529
+ },
530
+ dot: {
531
+ width: '10@s',
532
+ height: '10@vs',
533
+ borderRadius: '8@s'
534
+ },
535
+ headerText: {
536
+ flexDirection: 'row',
537
+ alignItems: 'center',
538
+ gap: 4
539
+ },
540
+ sectionHeader: {
541
+ fontSize: '14@vs',
542
+ fontWeight: '400',
543
+ borderRadius: '8@s',
544
+ paddingHorizontal: '8@s',
545
+ paddingVertical: '4@vs',
546
+ alignSelf: 'center',
547
+ marginVertical: '8@vs'
548
+ },
549
+ fixedDateText: {
550
+ fontSize: '14@vs',
551
+ fontWeight: '500',
552
+ borderRadius: '8@s',
553
+ paddingHorizontal: '10@s',
554
+ paddingVertical: '4@s',
555
+ position: 'absolute',
556
+ top: '10@vs',
557
+ zIndex: 10,
558
+ alignSelf: 'center'
559
+ },
560
+ listContainer: {
561
+ flex: 1,
562
+ position: 'relative'
563
+ },
564
+ sectionHeaderContainer: {
565
+ alignItems: 'center',
566
+ marginVertical: '8@vs'
264
567
  }
265
568
  });
266
569
  //# sourceMappingURL=ChatList.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","useRef","useState","useAppStore","FlatList","View","useWindowDimensions","ActivityIndicator","Image","TouchableOpacity","Keyboard","Pressable","getCustomerConversation","StyleSheet","MessageItem","MessageInput","useThemeColors","AppText","InitFailed","EmptyList","jsx","_jsx","jsxs","_jsxs","LoadingItem","themeColors","style","styles","loadingItem","backgroundColor","background","children","size","color","primary","ChatList","height","windowHeight","MESSAGE_MIN_HEIGHT","FLATLIST_PADDING","MESSAGES_PER_PAGE","Math","ceil","loading","setLoading","customer","data","setData","s","ref","page","setPage","nextPageStatus","nexPageFailed","setNexPageFailed","initFailed","setInitFailed","isScrollingUp","setIsScrollingUp","listChangedRef","nextPage","current","external_id","newPage","firstMessage","getState","created_at","fake","per_page","then","newData","prevData","newMessages","existingIds","Set","map","msg","id","uniqueNewMessages","filter","has","processedMessages","u","Date","approved","length","undefined","catch","_","finally","renderItem","item","handleScroll","event","currentScrollY","nativeEvent","contentOffset","y","contentHeight","contentSize","scrollViewHeight","layoutMeasurement","scrollToBottom","animated","scrollToOffset","offset","setState","e","console","error","retryContainer","retryButton","onPress","localization","retryText","container","dismiss","inverted","contentContainerStyle","contentContainer","list","ListEmptyComponent","ListFooterComponent","keyExtractor","removeClippedSubviews","maxToRenderPerBatch","windowSize","initialNumToRender","getItemLayout","index","onScroll","scrollEventThrottle","scrollDownButton","source","require","scrollUpIcon","tintColor","text","create","flex","paddingVertical","paddingHorizontal","alignItems","justifyContent","position","right","bottom","borderRadius","padding","shadowColor","shadowOffset","width","shadowOpacity","shadowRadius","elevation","fontSize","fontWeight"],"sourceRoot":"../../../src","sources":["components/ChatList.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useRef","useState","useMemo","useAppStore","SectionList","View","useWindowDimensions","ActivityIndicator","Image","TouchableOpacity","getCustomerConversation","sendCustomerMessage","MessageItem","MessageInput","useThemeColors","AppText","InitFailed","EmptyList","CustomPopup","ScaledSheet","formatDate","viewabilityConfig","jsx","_jsx","jsxs","_jsxs","headphonesIcon","require","closeIcon","LoadingItem","themeColors","style","styles","loadingItem","backgroundColor","background","children","size","color","primary","ChatList","onBack","height","windowHeight","MESSAGE_MIN_HEIGHT","FLATLIST_PADDING","MESSAGES_PER_PAGE","Math","ceil","loading","setLoading","customer","data","setData","s","ref","page","setPage","nextPageStatus","nexPageFailed","setNexPageFailed","initFailed","setInitFailed","isScrollingUp","setIsScrollingUp","listChangedRef","popupVisible","setPopupVisible","selectedMessage","setSelectedMessage","currentSection","setCurrentSection","sections","length","messagesByDate","forEach","message","dateKey","created_at","push","Object","entries","map","title","messages","sort","a","b","getTime","resendMessage","external_id","currentMessage","getState","messageIndex","findIndex","msg","content","updatedValue","existingValue","approved","error","setState","fake","then","res","currentData","dataIndex","updatedData","existingMessage","id","user","Date","catch","updatedMessage","existingData","console","nextPage","current","newPage","firstMessage","per_page","newData","prevData","newMessages","existingIds","Set","uniqueNewMessages","filter","has","processedMessages","u","undefined","_","finally","renderItem","item","onShowPopup","handleViewabilityChange","info","viewableItems","viewableItem","section","viewabilityConfigCallbackPairs","onViewableItemsChanged","handleScroll","event","currentScrollY","nativeEvent","contentOffset","y","contentHeight","contentSize","scrollViewHeight","layoutMeasurement","visibleSectionIndex","maxVisibility","i","sectionStartPercent","sectionEndPercent","sectionStartPosition","sectionEndPosition","visibleTop","max","visibleBottom","min","visibleHeight","visibleSection","log","scrollToBottom","animated","scrollToLocation","sectionIndex","itemIndex","e","retryContainer","retryButton","onPress","localization","retryText","container","iconContainer","source","tintColor","text","headerContainer","borderBottomColor","lavender","header","headerText","liveChat","dot","green","listContainer","fixedDateText","slate","ghost","inverted","contentContainerStyle","contentContainer","list","ListEmptyComponent","ListFooterComponent","keyExtractor","removeClippedSubviews","maxToRenderPerBatch","windowSize","initialNumToRender","getItemLayout","index","offset","onScroll","scrollEventThrottle","stickySectionHeadersEnabled","scrollDownButton","scrollUpIcon","isVisible","onClose","description","onCancelButton","onResendButton","buttonText","create","flex","paddingVertical","position","paddingHorizontal","flexGrow","alignItems","justifyContent","right","bottom","borderRadius","shadowColor","shadowOffset","width","shadowOpacity","shadowRadius","elevation","padding","fontSize","fontWeight","textAlign","gap","borderBottomWidth","paddingBottom","zIndex","flexDirection","sectionHeader","alignSelf","marginVertical","top","sectionHeaderContainer"],"sourceRoot":"../../../src","sources":["components/ChatList.tsx"],"mappings":"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","ignoreList":[]}