@kesha-antonov/react-native-chat 6.0.0 → 6.1.0

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/README.md +28 -5
  2. package/lib/Actions.d.ts.map +1 -1
  3. package/lib/Actions.js +33 -27
  4. package/lib/Actions.js.map +1 -1
  5. package/lib/Chat/Chat.d.ts.map +1 -1
  6. package/lib/Chat/Chat.js +253 -203
  7. package/lib/Chat/Chat.js.map +1 -1
  8. package/lib/Chat/ChatMessageList.d.ts.map +1 -1
  9. package/lib/Chat/ChatMessageList.js +4 -0
  10. package/lib/Chat/ChatMessageList.js.map +1 -1
  11. package/lib/Chat/index.d.ts +9 -1
  12. package/lib/Chat/index.d.ts.map +1 -1
  13. package/lib/Chat/index.js +14 -1
  14. package/lib/Chat/index.js.map +1 -1
  15. package/lib/Chat/types.d.ts +29 -0
  16. package/lib/Chat/types.d.ts.map +1 -1
  17. package/lib/Chat/types.js.map +1 -1
  18. package/lib/Chat/useMessageActions.d.ts +1 -0
  19. package/lib/Chat/useMessageActions.d.ts.map +1 -1
  20. package/lib/Chat/useMessageActions.js +97 -89
  21. package/lib/Chat/useMessageActions.js.map +1 -1
  22. package/lib/ChatHeader.d.ts +50 -0
  23. package/lib/ChatHeader.d.ts.map +1 -0
  24. package/lib/ChatHeader.js +356 -0
  25. package/lib/ChatHeader.js.map +1 -0
  26. package/lib/ChatList/ChatListCell.d.ts +1 -1
  27. package/lib/ChatList/ChatListCell.d.ts.map +1 -1
  28. package/lib/ChatList/ChatListCell.js +42 -11
  29. package/lib/ChatList/ChatListCell.js.map +1 -1
  30. package/lib/ChatList/index.js +332 -323
  31. package/lib/ChatList/index.js.map +1 -1
  32. package/lib/ChatList/types.d.ts +17 -1
  33. package/lib/ChatList/types.d.ts.map +1 -1
  34. package/lib/ChatList/types.js.map +1 -1
  35. package/lib/ChatList/utils.d.ts +4 -1
  36. package/lib/ChatList/utils.d.ts.map +1 -1
  37. package/lib/ChatList/utils.js +3 -2
  38. package/lib/ChatList/utils.js.map +1 -1
  39. package/lib/Composer.js +5 -1
  40. package/lib/Composer.js.map +1 -1
  41. package/lib/InputToolbar/fragments.d.ts +1 -1
  42. package/lib/InputToolbar/fragments.d.ts.map +1 -1
  43. package/lib/InputToolbar/fragments.js +9 -7
  44. package/lib/InputToolbar/fragments.js.map +1 -1
  45. package/lib/InputToolbar/index.d.ts.map +1 -1
  46. package/lib/InputToolbar/index.js +3 -2
  47. package/lib/InputToolbar/index.js.map +1 -1
  48. package/lib/InputToolbar/types.d.ts +6 -0
  49. package/lib/InputToolbar/types.d.ts.map +1 -1
  50. package/lib/InputToolbar/types.js.map +1 -1
  51. package/lib/InputToolbar/useActionsFragment.d.ts.map +1 -1
  52. package/lib/InputToolbar/useActionsFragment.js +83 -59
  53. package/lib/InputToolbar/useActionsFragment.js.map +1 -1
  54. package/lib/InputToolbar/useKeyboardInset.d.ts +1 -1
  55. package/lib/InputToolbar/useKeyboardInset.d.ts.map +1 -1
  56. package/lib/InputToolbar/useKeyboardInset.js +2 -2
  57. package/lib/InputToolbar/useKeyboardInset.js.map +1 -1
  58. package/lib/MessageText.d.ts.map +1 -1
  59. package/lib/MessageText.js +39 -33
  60. package/lib/MessageText.js.map +1 -1
  61. package/lib/MessagesContainer/index.d.ts.map +1 -1
  62. package/lib/MessagesContainer/index.js +113 -94
  63. package/lib/MessagesContainer/index.js.map +1 -1
  64. package/lib/MessagesContainer/types.d.ts +5 -2
  65. package/lib/MessagesContainer/types.d.ts.map +1 -1
  66. package/lib/MessagesContainer/types.js.map +1 -1
  67. package/lib/MessagesContainer/useChained.d.ts +6 -0
  68. package/lib/MessagesContainer/useChained.d.ts.map +1 -0
  69. package/lib/MessagesContainer/useChained.js +38 -0
  70. package/lib/MessagesContainer/useChained.js.map +1 -0
  71. package/lib/MessagesContainer/useListChrome.d.ts.map +1 -1
  72. package/lib/MessagesContainer/useListChrome.js +1 -1
  73. package/lib/MessagesContainer/useListChrome.js.map +1 -1
  74. package/lib/Models.d.ts +2 -1
  75. package/lib/Models.d.ts.map +1 -1
  76. package/lib/Models.js.map +1 -1
  77. package/lib/Send.d.ts.map +1 -1
  78. package/lib/Send.js +18 -13
  79. package/lib/Send.js.map +1 -1
  80. package/lib/Theme.d.ts +11 -0
  81. package/lib/Theme.d.ts.map +1 -1
  82. package/lib/Theme.js +17 -1
  83. package/lib/Theme.js.map +1 -1
  84. package/lib/attachments/AttachmentButton.js +17 -15
  85. package/lib/attachments/AttachmentButton.js.map +1 -1
  86. package/lib/attachments/AttachmentMenu/GalleryGrid.d.ts +3 -1
  87. package/lib/attachments/AttachmentMenu/GalleryGrid.d.ts.map +1 -1
  88. package/lib/attachments/AttachmentMenu/GalleryGrid.js +69 -68
  89. package/lib/attachments/AttachmentMenu/GalleryGrid.js.map +1 -1
  90. package/lib/attachments/AttachmentMenu/TabPanel.d.ts +3 -1
  91. package/lib/attachments/AttachmentMenu/TabPanel.d.ts.map +1 -1
  92. package/lib/attachments/AttachmentMenu/TabPanel.js +23 -21
  93. package/lib/attachments/AttachmentMenu/TabPanel.js.map +1 -1
  94. package/lib/attachments/AttachmentMenu/index.d.ts +6 -2
  95. package/lib/attachments/AttachmentMenu/index.d.ts.map +1 -1
  96. package/lib/attachments/AttachmentMenu/index.js +259 -247
  97. package/lib/attachments/AttachmentMenu/index.js.map +1 -1
  98. package/lib/attachments/buildMessages.d.ts +4 -4
  99. package/lib/attachments/buildMessages.d.ts.map +1 -1
  100. package/lib/attachments/buildMessages.js +9 -8
  101. package/lib/attachments/buildMessages.js.map +1 -1
  102. package/lib/attachments/types.d.ts +19 -0
  103. package/lib/attachments/types.d.ts.map +1 -1
  104. package/lib/attachments/types.js.map +1 -1
  105. package/lib/components/TouchableOpacity.d.ts +5 -0
  106. package/lib/components/TouchableOpacity.d.ts.map +1 -1
  107. package/lib/components/TouchableOpacity.js +59 -54
  108. package/lib/components/TouchableOpacity.js.map +1 -1
  109. package/lib/components/defaultMessageActions.d.ts +3 -1
  110. package/lib/components/defaultMessageActions.d.ts.map +1 -1
  111. package/lib/components/defaultMessageActions.js +9 -1
  112. package/lib/components/defaultMessageActions.js.map +1 -1
  113. package/lib/components/textHighlight.d.ts +14 -0
  114. package/lib/components/textHighlight.d.ts.map +1 -0
  115. package/lib/components/textHighlight.js +39 -0
  116. package/lib/components/textHighlight.js.map +1 -0
  117. package/lib/hooks/useKeyboardVerticalOffset.d.ts +6 -0
  118. package/lib/hooks/useKeyboardVerticalOffset.d.ts.map +1 -1
  119. package/lib/hooks/useKeyboardVerticalOffset.js +35 -13
  120. package/lib/hooks/useKeyboardVerticalOffset.js.map +1 -1
  121. package/lib/i18n.d.ts +2 -0
  122. package/lib/i18n.d.ts.map +1 -1
  123. package/lib/i18n.js +1 -0
  124. package/lib/i18n.js.map +1 -1
  125. package/lib/index.d.ts +3 -1
  126. package/lib/index.d.ts.map +1 -1
  127. package/lib/index.js +1 -0
  128. package/lib/index.js.map +1 -1
  129. package/lib/linkParser.d.ts +4 -1
  130. package/lib/linkParser.d.ts.map +1 -1
  131. package/lib/linkParser.js +115 -78
  132. package/lib/linkParser.js.map +1 -1
  133. package/lib/locales/ar.d.ts.map +1 -1
  134. package/lib/locales/ar.js +1 -0
  135. package/lib/locales/ar.js.map +1 -1
  136. package/lib/locales/de.d.ts.map +1 -1
  137. package/lib/locales/de.js +1 -0
  138. package/lib/locales/de.js.map +1 -1
  139. package/lib/locales/es.d.ts.map +1 -1
  140. package/lib/locales/es.js +1 -0
  141. package/lib/locales/es.js.map +1 -1
  142. package/lib/locales/fr.d.ts.map +1 -1
  143. package/lib/locales/fr.js +1 -0
  144. package/lib/locales/fr.js.map +1 -1
  145. package/lib/locales/hi.d.ts.map +1 -1
  146. package/lib/locales/hi.js +1 -0
  147. package/lib/locales/hi.js.map +1 -1
  148. package/lib/locales/id.d.ts.map +1 -1
  149. package/lib/locales/id.js +1 -0
  150. package/lib/locales/id.js.map +1 -1
  151. package/lib/locales/it.d.ts.map +1 -1
  152. package/lib/locales/it.js +1 -0
  153. package/lib/locales/it.js.map +1 -1
  154. package/lib/locales/ja.d.ts.map +1 -1
  155. package/lib/locales/ja.js +1 -0
  156. package/lib/locales/ja.js.map +1 -1
  157. package/lib/locales/ko.d.ts.map +1 -1
  158. package/lib/locales/ko.js +1 -0
  159. package/lib/locales/ko.js.map +1 -1
  160. package/lib/locales/nl.d.ts.map +1 -1
  161. package/lib/locales/nl.js +1 -0
  162. package/lib/locales/nl.js.map +1 -1
  163. package/lib/locales/pl.d.ts.map +1 -1
  164. package/lib/locales/pl.js +1 -0
  165. package/lib/locales/pl.js.map +1 -1
  166. package/lib/locales/pt.d.ts.map +1 -1
  167. package/lib/locales/pt.js +1 -0
  168. package/lib/locales/pt.js.map +1 -1
  169. package/lib/locales/ru.d.ts.map +1 -1
  170. package/lib/locales/ru.js +1 -0
  171. package/lib/locales/ru.js.map +1 -1
  172. package/lib/locales/tr.d.ts.map +1 -1
  173. package/lib/locales/tr.js +1 -0
  174. package/lib/locales/tr.js.map +1 -1
  175. package/lib/locales/zh.d.ts.map +1 -1
  176. package/lib/locales/zh.js +1 -0
  177. package/lib/locales/zh.js.map +1 -1
  178. package/llms.txt +1 -1
  179. package/package.json +1 -1
@@ -190,7 +190,7 @@ function _temp2() {
190
190
  }
191
191
  function _temp() {}
192
192
  function ChatListContent(t0) {
193
- const $ = _c(170);
193
+ const $ = _c(173);
194
194
  const {
195
195
  chats,
196
196
  user,
@@ -209,9 +209,12 @@ function ChatListContent(t0) {
209
209
  isHeaderVisible: t5,
210
210
  title,
211
211
  renderHeaderRight,
212
- isTopInsetApplied: t6,
213
- isSearchEnabled: t7,
214
- filterChat: t8,
212
+ headerRightPosition: t6,
213
+ timeFormat,
214
+ dateFormat,
215
+ isTopInsetApplied: t7,
216
+ isSearchEnabled: t8,
217
+ filterChat: t9,
215
218
  onSearchChange,
216
219
  isArchiveOpen: isArchiveOpenProp,
217
220
  onArchiveOpenChange,
@@ -226,186 +229,187 @@ function ChatListContent(t0) {
226
229
  const isLoading = t3 === undefined ? false : t3;
227
230
  const isSortEnabled = t4 === undefined ? true : t4;
228
231
  const isHeaderVisible = t5 === undefined ? true : t5;
229
- const isTopInsetApplied = t6 === undefined ? true : t6;
230
- const isSearchEnabled = t7 === undefined ? true : t7;
231
- const filterChat = t8 === undefined ? matchesChatQuery : t8;
232
+ const headerRightPosition = t6 === undefined ? "beforeSearch" : t6;
233
+ const isTopInsetApplied = t7 === undefined ? true : t7;
234
+ const isSearchEnabled = t8 === undefined ? true : t8;
235
+ const filterChat = t9 === undefined ? matchesChatQuery : t9;
232
236
  const colors = resolvedTheme.chatList;
233
237
  const {
234
238
  getLabels
235
239
  } = useContext(ChatContext);
236
- let t9;
240
+ let t10;
237
241
  if ($[0] !== getLabels) {
238
- t9 = getLabels();
242
+ t10 = getLabels();
239
243
  $[0] = getLabels;
240
- $[1] = t9;
244
+ $[1] = t10;
241
245
  } else {
242
- t9 = $[1];
246
+ t10 = $[1];
243
247
  }
244
- const labels = t9;
248
+ const labels = t10;
245
249
  const insets = useContext(SafeAreaInsetsContext);
246
250
  const topInset = isHeaderVisible && isTopInsetApplied ? insets?.top ?? 0 : 0;
247
251
  const [isArchiveOpenState, setIsArchiveOpenState] = useState(false);
248
252
  const isArchiveOpen = isArchiveOpenProp ?? isArchiveOpenState;
249
- let t10;
253
+ let t11;
250
254
  if ($[2] !== onArchiveOpenChange) {
251
- t10 = isOpen => {
255
+ t11 = isOpen => {
252
256
  setIsArchiveOpenState(isOpen);
253
257
  onArchiveOpenChange?.(isOpen);
254
258
  };
255
259
  $[2] = onArchiveOpenChange;
256
- $[3] = t10;
260
+ $[3] = t11;
257
261
  } else {
258
- t10 = $[3];
262
+ t11 = $[3];
259
263
  }
260
- const setIsArchiveOpen = t10;
261
- let t11;
264
+ const setIsArchiveOpen = t11;
265
+ let t12;
262
266
  if ($[4] === Symbol.for("react.memo_cache_sentinel")) {
263
- t11 = [];
264
- $[4] = t11;
267
+ t12 = [];
268
+ $[4] = t12;
265
269
  } else {
266
- t11 = $[4];
270
+ t12 = $[4];
267
271
  }
268
- const [selectedIds, setSelectedIds] = useState(t11);
272
+ const [selectedIds, setSelectedIds] = useState(t12);
269
273
  const [query, setQueryState] = useState(null);
270
- let t12;
274
+ let t13;
271
275
  if ($[5] !== onSearchChange) {
272
- t12 = next => {
276
+ t13 = next => {
273
277
  setQueryState(next);
274
278
  onSearchChange?.(next);
275
279
  };
276
280
  $[5] = onSearchChange;
277
- $[6] = t12;
281
+ $[6] = t13;
278
282
  } else {
279
- t12 = $[6];
283
+ t13 = $[6];
280
284
  }
281
- const setQuery = t12;
285
+ const setQuery = t13;
282
286
  const isSelectionMode = selectedIds.length > 0;
283
- let t13;
287
+ let t14;
284
288
  if ($[7] !== chats || $[8] !== isSortEnabled) {
285
- t13 = isSortEnabled ? sortChats(chats) : chats;
289
+ t14 = isSortEnabled ? sortChats(chats) : chats;
286
290
  $[7] = chats;
287
291
  $[8] = isSortEnabled;
288
- $[9] = t13;
292
+ $[9] = t14;
289
293
  } else {
290
- t13 = $[9];
294
+ t14 = $[9];
291
295
  }
292
- const sorted = t13;
293
- let t14;
296
+ const sorted = t14;
297
+ let t15;
294
298
  if ($[10] !== sorted) {
295
- t14 = sorted.filter(_temp3);
299
+ t15 = sorted.filter(_temp3);
296
300
  $[10] = sorted;
297
- $[11] = t14;
301
+ $[11] = t15;
298
302
  } else {
299
- t14 = $[11];
303
+ t15 = $[11];
300
304
  }
301
- const mainChats = t14;
302
- let t15;
305
+ const mainChats = t15;
306
+ let t16;
303
307
  if ($[12] !== sorted) {
304
- t15 = sorted.filter(_temp4);
308
+ t16 = sorted.filter(_temp4);
305
309
  $[12] = sorted;
306
- $[13] = t15;
310
+ $[13] = t16;
307
311
  } else {
308
- t15 = $[13];
312
+ t16 = $[13];
309
313
  }
310
- const archivedChats = t15;
311
- let t16;
314
+ const archivedChats = t16;
315
+ let t17;
312
316
  bb0: {
313
317
  const source = isArchiveOpen ? archivedChats : mainChats;
314
318
  if (query) {
315
- let t17;
319
+ let t18;
316
320
  if ($[14] !== filterChat || $[15] !== query || $[16] !== source) {
317
- let t18;
321
+ let t19;
318
322
  if ($[18] !== filterChat || $[19] !== query) {
319
- t18 = chat_1 => filterChat(chat_1, query);
323
+ t19 = chat_1 => filterChat(chat_1, query);
320
324
  $[18] = filterChat;
321
325
  $[19] = query;
322
- $[20] = t18;
326
+ $[20] = t19;
323
327
  } else {
324
- t18 = $[20];
328
+ t19 = $[20];
325
329
  }
326
- t17 = source.filter(t18);
330
+ t18 = source.filter(t19);
327
331
  $[14] = filterChat;
328
332
  $[15] = query;
329
333
  $[16] = source;
330
- $[17] = t17;
334
+ $[17] = t18;
331
335
  } else {
332
- t17 = $[17];
336
+ t18 = $[17];
333
337
  }
334
- t16 = t17;
338
+ t17 = t18;
335
339
  break bb0;
336
340
  }
337
341
  if (!isArchiveOpen && archivedChats.length) {
338
- let t17;
342
+ let t18;
339
343
  if ($[21] === Symbol.for("react.memo_cache_sentinel")) {
340
- t17 = {
344
+ t18 = {
341
345
  id: ARCHIVE_ROW_ID
342
346
  };
343
- $[21] = t17;
347
+ $[21] = t18;
344
348
  } else {
345
- t17 = $[21];
349
+ t18 = $[21];
346
350
  }
347
- let t18;
351
+ let t19;
348
352
  if ($[22] !== source) {
349
- t18 = [t17, ...source];
353
+ t19 = [t18, ...source];
350
354
  $[22] = source;
351
- $[23] = t18;
355
+ $[23] = t19;
352
356
  } else {
353
- t18 = $[23];
357
+ t19 = $[23];
354
358
  }
355
- t16 = t18;
359
+ t17 = t19;
356
360
  break bb0;
357
361
  }
358
- t16 = source;
362
+ t17 = source;
359
363
  }
360
- const rows = t16;
361
- let t17;
364
+ const rows = t17;
362
365
  let t18;
366
+ let t19;
363
367
  if ($[24] !== chats) {
364
- t17 = () => {
368
+ t18 = () => {
365
369
  setSelectedIds(ids => {
366
370
  const kept = ids.filter(id => chats.some(chat_2 => chat_2.id === id));
367
371
  return kept.length === ids.length ? ids : kept;
368
372
  });
369
373
  };
370
- t18 = [chats];
374
+ t19 = [chats];
371
375
  $[24] = chats;
372
- $[25] = t17;
373
- $[26] = t18;
376
+ $[25] = t18;
377
+ $[26] = t19;
374
378
  } else {
375
- t17 = $[25];
376
- t18 = $[26];
379
+ t18 = $[25];
380
+ t19 = $[26];
377
381
  }
378
- useEffect(t17, t18);
379
- let t19;
382
+ useEffect(t18, t19);
383
+ let t20;
380
384
  if ($[27] !== chats || $[28] !== selectedIds) {
381
- let t20;
385
+ let t21;
382
386
  if ($[30] !== chats) {
383
- t20 = id_0 => chats.find(chat_3 => chat_3.id === id_0);
387
+ t21 = id_0 => chats.find(chat_3 => chat_3.id === id_0);
384
388
  $[30] = chats;
385
- $[31] = t20;
389
+ $[31] = t21;
386
390
  } else {
387
- t20 = $[31];
391
+ t21 = $[31];
388
392
  }
389
- t19 = selectedIds.map(t20).filter(_temp5);
393
+ t20 = selectedIds.map(t21).filter(_temp5);
390
394
  $[27] = chats;
391
395
  $[28] = selectedIds;
392
- $[29] = t19;
396
+ $[29] = t20;
393
397
  } else {
394
- t19 = $[29];
398
+ t20 = $[29];
395
399
  }
396
- const selectedChats = t19;
397
- let t20;
400
+ const selectedChats = t20;
401
+ let t21;
398
402
  if ($[32] === Symbol.for("react.memo_cache_sentinel")) {
399
- t20 = () => setSelectedIds([]);
400
- $[32] = t20;
403
+ t21 = () => setSelectedIds([]);
404
+ $[32] = t21;
401
405
  } else {
402
- t20 = $[32];
406
+ t21 = $[32];
403
407
  }
404
- const clearSelection = t20;
405
- let t21;
408
+ const clearSelection = t21;
406
409
  let t22;
410
+ let t23;
407
411
  if ($[33] !== isArchiveOpen || $[34] !== isSelectionMode || $[35] !== query || $[36] !== setIsArchiveOpen || $[37] !== setQuery) {
408
- t21 = () => {
412
+ t22 = () => {
409
413
  const subscription = BackHandler.addEventListener("hardwareBackPress", () => {
410
414
  if (isSelectionMode) {
411
415
  clearSelection();
@@ -424,32 +428,32 @@ function ChatListContent(t0) {
424
428
  });
425
429
  return () => subscription.remove();
426
430
  };
427
- t22 = [isSelectionMode, query, isArchiveOpen, clearSelection, setQuery, setIsArchiveOpen];
431
+ t23 = [isSelectionMode, query, isArchiveOpen, clearSelection, setQuery, setIsArchiveOpen];
428
432
  $[33] = isArchiveOpen;
429
433
  $[34] = isSelectionMode;
430
434
  $[35] = query;
431
435
  $[36] = setIsArchiveOpen;
432
436
  $[37] = setQuery;
433
- $[38] = t21;
434
- $[39] = t22;
437
+ $[38] = t22;
438
+ $[39] = t23;
435
439
  } else {
436
- t21 = $[38];
437
- t22 = $[39];
440
+ t22 = $[38];
441
+ t23 = $[39];
438
442
  }
439
- useEffect(t21, t22);
440
- let t23;
443
+ useEffect(t22, t23);
444
+ let t24;
441
445
  if ($[40] === Symbol.for("react.memo_cache_sentinel")) {
442
- t23 = chat_5 => {
446
+ t24 = chat_5 => {
443
447
  setSelectedIds(ids_0 => ids_0.includes(chat_5.id) ? ids_0.filter(id_1 => id_1 !== chat_5.id) : [...ids_0, chat_5.id]);
444
448
  };
445
- $[40] = t23;
449
+ $[40] = t24;
446
450
  } else {
447
- t23 = $[40];
451
+ t24 = $[40];
448
452
  }
449
- const toggleSelected = t23;
450
- let t24;
453
+ const toggleSelected = t24;
454
+ let t25;
451
455
  if ($[41] !== isSelectionMode || $[42] !== onPressChat) {
452
- t24 = chat_6 => {
456
+ t25 = chat_6 => {
453
457
  if (isSelectionMode) {
454
458
  toggleSelected(chat_6);
455
459
  return;
@@ -458,14 +462,14 @@ function ChatListContent(t0) {
458
462
  };
459
463
  $[41] = isSelectionMode;
460
464
  $[42] = onPressChat;
461
- $[43] = t24;
465
+ $[43] = t25;
462
466
  } else {
463
- t24 = $[43];
467
+ t25 = $[43];
464
468
  }
465
- const onPressRow = t24;
466
- let t25;
469
+ const onPressRow = t25;
470
+ let t26;
467
471
  if ($[44] !== onLongPressChat) {
468
- t25 = chat_7 => {
472
+ t26 = chat_7 => {
469
473
  if (onLongPressChat) {
470
474
  onLongPressChat(chat_7);
471
475
  return;
@@ -474,39 +478,39 @@ function ChatListContent(t0) {
474
478
  toggleSelected(chat_7);
475
479
  };
476
480
  $[44] = onLongPressChat;
477
- $[45] = t25;
481
+ $[45] = t26;
478
482
  } else {
479
- t25 = $[45];
483
+ t26 = $[45];
480
484
  }
481
- const onLongPressRow = t25;
482
- let t26;
485
+ const onLongPressRow = t26;
486
+ let t27;
483
487
  if ($[46] !== onArchiveChats) {
484
- t26 = chat_8 => {
488
+ t27 = chat_8 => {
485
489
  onArchiveChats?.([chat_8], !chat_8.isArchived);
486
490
  };
487
491
  $[46] = onArchiveChats;
488
- $[47] = t26;
492
+ $[47] = t27;
489
493
  } else {
490
- t26 = $[47];
494
+ t27 = $[47];
491
495
  }
492
- const onSwipeRow = t26;
493
- let t27;
496
+ const onSwipeRow = t27;
497
+ let t28;
494
498
  if ($[48] !== mainChats) {
495
- t27 = mainChats.filter(_temp6).map(_temp7);
499
+ t28 = mainChats.filter(_temp6).map(_temp7);
496
500
  $[48] = mainChats;
497
- $[49] = t27;
501
+ $[49] = t28;
498
502
  } else {
499
- t27 = $[49];
503
+ t28 = $[49];
500
504
  }
501
- const pinnedIds = t27;
505
+ const pinnedIds = t28;
502
506
  const canReorder = !!onReorderPinnedChats && !isArchiveOpen && !query;
503
507
  const dragId = useSharedValue("");
504
508
  const dragFrom = useSharedValue(0);
505
509
  const dragY = useSharedValue(0);
506
510
  const isDragActive = useSharedValue(false);
507
- let t28;
511
+ let t29;
508
512
  if ($[50] !== dragFrom || $[51] !== dragId || $[52] !== dragY || $[53] !== isDragActive) {
509
- t28 = {
513
+ t29 = {
510
514
  id: dragId,
511
515
  from: dragFrom,
512
516
  y: dragY,
@@ -516,17 +520,17 @@ function ChatListContent(t0) {
516
520
  $[51] = dragId;
517
521
  $[52] = dragY;
518
522
  $[53] = isDragActive;
519
- $[54] = t28;
523
+ $[54] = t29;
520
524
  } else {
521
- t28 = $[54];
525
+ t29 = $[54];
522
526
  }
523
- const drag = t28;
527
+ const drag = t29;
524
528
  const [liftedId, setLiftedId] = useState(null);
525
529
  const [isSettling, setIsSettling] = useState(false);
526
530
  const [dropCount, setDropCount] = useState(0);
527
- let t29;
531
+ let t30;
528
532
  if ($[55] !== selectedIds) {
529
- t29 = chat_11 => {
533
+ t30 = chat_11 => {
530
534
  setLiftedId(String(chat_11.id));
531
535
  setIsSettling(true);
532
536
  if (!selectedIds.includes(chat_11.id)) {
@@ -535,14 +539,14 @@ function ChatListContent(t0) {
535
539
  }
536
540
  };
537
541
  $[55] = selectedIds;
538
- $[56] = t29;
542
+ $[56] = t30;
539
543
  } else {
540
- t29 = $[56];
544
+ t30 = $[56];
541
545
  }
542
- const onDragStart = t29;
543
- let t30;
546
+ const onDragStart = t30;
547
+ let t31;
544
548
  if ($[57] !== onReorderPinnedChats || $[58] !== pinnedIds) {
545
- t30 = (chat_12, toIndex) => {
549
+ t31 = (chat_12, toIndex) => {
546
550
  const order = pinnedIds.filter(id_2 => id_2 !== chat_12.id);
547
551
  order.splice(toIndex, 0, chat_12.id);
548
552
  if (order.some((id_3, index) => id_3 !== pinnedIds[index])) {
@@ -553,15 +557,15 @@ function ChatListContent(t0) {
553
557
  };
554
558
  $[57] = onReorderPinnedChats;
555
559
  $[58] = pinnedIds;
556
- $[59] = t30;
560
+ $[59] = t31;
557
561
  } else {
558
- t30 = $[59];
562
+ t31 = $[59];
559
563
  }
560
- const onDrop = t30;
561
- let t31;
564
+ const onDrop = t31;
562
565
  let t32;
566
+ let t33;
563
567
  if ($[60] !== dragId || $[61] !== dragY || $[62] !== dropCount || $[63] !== isDragActive) {
564
- t31 = () => {
568
+ t32 = () => {
565
569
  if (!dropCount) {
566
570
  return;
567
571
  }
@@ -571,34 +575,34 @@ function ChatListContent(t0) {
571
575
  const timer = setTimeout(() => setIsSettling(false), 50);
572
576
  return () => clearTimeout(timer);
573
577
  };
574
- t32 = [dropCount, isDragActive, dragY, dragId];
578
+ t33 = [dropCount, isDragActive, dragY, dragId];
575
579
  $[60] = dragId;
576
580
  $[61] = dragY;
577
581
  $[62] = dropCount;
578
582
  $[63] = isDragActive;
579
- $[64] = t31;
580
- $[65] = t32;
583
+ $[64] = t32;
584
+ $[65] = t33;
581
585
  } else {
582
- t31 = $[64];
583
- t32 = $[65];
586
+ t32 = $[64];
587
+ t33 = $[65];
584
588
  }
585
- useLayoutEffect(t31, t32);
586
- let t33;
589
+ useLayoutEffect(t32, t33);
590
+ let t34;
587
591
  if ($[66] !== onDragStart || $[67] !== onDrop) {
588
- t33 = {
592
+ t34 = {
589
593
  onDragStart,
590
594
  onDrop
591
595
  };
592
596
  $[66] = onDragStart;
593
597
  $[67] = onDrop;
594
- $[68] = t33;
598
+ $[68] = t34;
595
599
  } else {
596
- t33 = $[68];
600
+ t34 = $[68];
597
601
  }
598
- const dragHandlersRef = useRef(t33);
599
- let t34;
602
+ const dragHandlersRef = useRef(t34);
603
+ let t35;
600
604
  if ($[69] !== onDragStart || $[70] !== onDrop) {
601
- t34 = () => {
605
+ t35 = () => {
602
606
  dragHandlersRef.current = {
603
607
  onDragStart,
604
608
  onDrop
@@ -606,30 +610,30 @@ function ChatListContent(t0) {
606
610
  };
607
611
  $[69] = onDragStart;
608
612
  $[70] = onDrop;
609
- $[71] = t34;
613
+ $[71] = t35;
610
614
  } else {
611
- t34 = $[71];
615
+ t35 = $[71];
612
616
  }
613
- useLayoutEffect(t34);
614
- let t35;
617
+ useLayoutEffect(t35);
618
+ let t36;
615
619
  if ($[72] === Symbol.for("react.memo_cache_sentinel")) {
616
- t35 = chat_13 => dragHandlersRef.current.onDragStart(chat_13);
617
- $[72] = t35;
620
+ t36 = chat_13 => dragHandlersRef.current.onDragStart(chat_13);
621
+ $[72] = t36;
618
622
  } else {
619
- t35 = $[72];
623
+ t36 = $[72];
620
624
  }
621
- const stableOnStart = t35;
622
- let t36;
625
+ const stableOnStart = t36;
626
+ let t37;
623
627
  if ($[73] === Symbol.for("react.memo_cache_sentinel")) {
624
- t36 = (chat_14, toIndex_0) => dragHandlersRef.current.onDrop(chat_14, toIndex_0);
625
- $[73] = t36;
628
+ t37 = (chat_14, toIndex_0) => dragHandlersRef.current.onDrop(chat_14, toIndex_0);
629
+ $[73] = t37;
626
630
  } else {
627
- t36 = $[73];
631
+ t37 = $[73];
628
632
  }
629
- const stableOnDrop = t36;
630
- let t37;
633
+ const stableOnDrop = t37;
634
+ let t38;
631
635
  if ($[74] !== canReorder || $[75] !== drag || $[76] !== pinnedIds) {
632
- t37 = chat_15 => {
636
+ t38 = chat_15 => {
633
637
  const index_0 = pinnedIds.indexOf(chat_15.id);
634
638
  if (!canReorder || index_0 < 0) {
635
639
  return;
@@ -645,26 +649,26 @@ function ChatListContent(t0) {
645
649
  $[74] = canReorder;
646
650
  $[75] = drag;
647
651
  $[76] = pinnedIds;
648
- $[77] = t37;
652
+ $[77] = t38;
649
653
  } else {
650
- t37 = $[77];
654
+ t38 = $[77];
651
655
  }
652
- const reorderFor = t37;
653
- let t38;
656
+ const reorderFor = t38;
657
+ let t39;
654
658
  if ($[78] !== selectedChats) {
655
- t38 = action => {
659
+ t39 = action => {
656
660
  action(selectedChats);
657
661
  clearSelection();
658
662
  };
659
663
  $[78] = selectedChats;
660
- $[79] = t38;
664
+ $[79] = t39;
661
665
  } else {
662
- t38 = $[79];
666
+ t39 = $[79];
663
667
  }
664
- const runOnSelection = t38;
665
- let t39;
668
+ const runOnSelection = t39;
669
+ let t40;
666
670
  if ($[80] !== isDeleteConfirmed || $[81] !== labels || $[82] !== onDeleteChats || $[83] !== runOnSelection || $[84] !== selectedChats.length) {
667
- t39 = () => {
671
+ t40 = () => {
668
672
  if (!onDeleteChats) {
669
673
  return;
670
674
  }
@@ -689,11 +693,11 @@ function ChatListContent(t0) {
689
693
  $[82] = onDeleteChats;
690
694
  $[83] = runOnSelection;
691
695
  $[84] = selectedChats.length;
692
- $[85] = t39;
696
+ $[85] = t40;
693
697
  } else {
694
- t39 = $[85];
698
+ t40 = $[85];
695
699
  }
696
- const onDeleteSelected = t39;
700
+ const onDeleteSelected = t40;
697
701
  const fabOffset = useSharedValue(0);
698
702
  const lastScrollY = useSharedValue(0);
699
703
  const onScroll = useAnimatedScrollHandler(event => {
@@ -713,13 +717,13 @@ function ChatListContent(t0) {
713
717
  translateY: fabOffset.value
714
718
  }]
715
719
  }));
716
- let t40;
717
- if ($[86] !== archivedChats || $[87] !== canReorder || $[88] !== isSelectionMode || $[89] !== isSwipeEnabled || $[90] !== onArchiveChats || $[91] !== onLongPressRow || $[92] !== onPressRow || $[93] !== onSwipeRow || $[94] !== pinnedIds.length || $[95] !== renderChat || $[96] !== reorderFor || $[97] !== rows.length || $[98] !== selectedIds || $[99] !== setIsArchiveOpen || $[100] !== user) {
718
- t40 = t41 => {
720
+ let t41;
721
+ if ($[86] !== archivedChats || $[87] !== canReorder || $[88] !== dateFormat || $[89] !== isSelectionMode || $[90] !== isSwipeEnabled || $[91] !== onArchiveChats || $[92] !== onLongPressRow || $[93] !== onPressRow || $[94] !== onSwipeRow || $[95] !== pinnedIds.length || $[96] !== renderChat || $[97] !== reorderFor || $[98] !== rows.length || $[99] !== selectedIds || $[100] !== setIsArchiveOpen || $[101] !== timeFormat || $[102] !== user) {
722
+ t41 = t42 => {
719
723
  const {
720
724
  item,
721
725
  index: index_1
722
- } = t41;
726
+ } = t42;
723
727
  if (isArchiveRow(item)) {
724
728
  return <ArchiveRow chats={archivedChats} onPress={() => setIsArchiveOpen(true)} />;
725
729
  }
@@ -733,85 +737,89 @@ function ChatListContent(t0) {
733
737
  onSwipe: onArchiveChats && isSwipeEnabled ? onSwipeRow : undefined,
734
738
  isLast: index_1 === rows.length - 1,
735
739
  reorder: reorderFor(item),
736
- isReordering: isSelectionMode && canReorder && pinnedIds.length > 1 && !!item.isPinned
740
+ isReordering: isSelectionMode && canReorder && pinnedIds.length > 1 && !!item.isPinned,
741
+ timeFormat,
742
+ dateFormat
737
743
  };
738
744
  return renderChat ? <>{renderChat(cellProps)}</> : <ChatListCell {...cellProps} />;
739
745
  };
740
746
  $[86] = archivedChats;
741
747
  $[87] = canReorder;
742
- $[88] = isSelectionMode;
743
- $[89] = isSwipeEnabled;
744
- $[90] = onArchiveChats;
745
- $[91] = onLongPressRow;
746
- $[92] = onPressRow;
747
- $[93] = onSwipeRow;
748
- $[94] = pinnedIds.length;
749
- $[95] = renderChat;
750
- $[96] = reorderFor;
751
- $[97] = rows.length;
752
- $[98] = selectedIds;
753
- $[99] = setIsArchiveOpen;
754
- $[100] = user;
755
- $[101] = t40;
756
- } else {
757
- t40 = $[101];
758
- }
759
- const renderItem = t40;
760
- let t41;
761
- if ($[102] !== selectedChats) {
762
- t41 = selectedChats.length > 0 && selectedChats.every(_temp9);
763
- $[102] = selectedChats;
748
+ $[88] = dateFormat;
749
+ $[89] = isSelectionMode;
750
+ $[90] = isSwipeEnabled;
751
+ $[91] = onArchiveChats;
752
+ $[92] = onLongPressRow;
753
+ $[93] = onPressRow;
754
+ $[94] = onSwipeRow;
755
+ $[95] = pinnedIds.length;
756
+ $[96] = renderChat;
757
+ $[97] = reorderFor;
758
+ $[98] = rows.length;
759
+ $[99] = selectedIds;
760
+ $[100] = setIsArchiveOpen;
761
+ $[101] = timeFormat;
762
+ $[102] = user;
764
763
  $[103] = t41;
765
764
  } else {
766
765
  t41 = $[103];
767
766
  }
768
- const isAllPinned = t41;
767
+ const renderItem = t41;
769
768
  let t42;
770
769
  if ($[104] !== selectedChats) {
771
- t42 = selectedChats.length > 0 && selectedChats.every(_temp0);
770
+ t42 = selectedChats.length > 0 && selectedChats.every(_temp9);
772
771
  $[104] = selectedChats;
773
772
  $[105] = t42;
774
773
  } else {
775
774
  t42 = $[105];
776
775
  }
777
- const isAllMuted = t42;
778
- const headerTitle = isArchiveOpen ? labels.chatListArchived : title ?? labels.chatListTitle;
776
+ const isAllPinned = t42;
779
777
  let t43;
780
- if ($[106] !== colors.message || $[107] !== labels || $[108] !== query || $[109] !== renderEmpty) {
781
- t43 = renderEmpty ? <>{renderEmpty(!!query)}</> : <Text style={[styles.empty, {
782
- color: colors.message
783
- }]}>{query ? labels.chatListNoResults : labels.chatListEmpty}</Text>;
784
- $[106] = colors.message;
785
- $[107] = labels;
786
- $[108] = query;
787
- $[109] = renderEmpty;
788
- $[110] = t43;
778
+ if ($[106] !== selectedChats) {
779
+ t43 = selectedChats.length > 0 && selectedChats.every(_temp0);
780
+ $[106] = selectedChats;
781
+ $[107] = t43;
789
782
  } else {
790
- t43 = $[110];
783
+ t43 = $[107];
791
784
  }
792
- const empty = t43;
785
+ const isAllMuted = t43;
786
+ const headerTitle = isArchiveOpen ? labels.chatListArchived : title ?? labels.chatListTitle;
793
787
  let t44;
794
- if ($[111] !== colors.background) {
795
- t44 = {
796
- backgroundColor: colors.background
797
- };
798
- $[111] = colors.background;
788
+ if ($[108] !== colors.message || $[109] !== labels || $[110] !== query || $[111] !== renderEmpty) {
789
+ t44 = renderEmpty ? <>{renderEmpty(!!query)}</> : <Text style={[styles.empty, {
790
+ color: colors.message
791
+ }]}>{query ? labels.chatListNoResults : labels.chatListEmpty}</Text>;
792
+ $[108] = colors.message;
793
+ $[109] = labels;
794
+ $[110] = query;
795
+ $[111] = renderEmpty;
799
796
  $[112] = t44;
800
797
  } else {
801
798
  t44 = $[112];
802
799
  }
800
+ const empty = t44;
803
801
  let t45;
804
- if ($[113] !== style || $[114] !== t44) {
805
- t45 = [styles.fill, t44, style];
806
- $[113] = style;
807
- $[114] = t44;
808
- $[115] = t45;
802
+ if ($[113] !== colors.background) {
803
+ t45 = {
804
+ backgroundColor: colors.background
805
+ };
806
+ $[113] = colors.background;
807
+ $[114] = t45;
809
808
  } else {
810
- t45 = $[115];
809
+ t45 = $[114];
811
810
  }
812
811
  let t46;
813
- if ($[116] !== colors.headerBackground || $[117] !== colors.headerText || $[118] !== colors.message || $[119] !== headerTitle || $[120] !== isAllMuted || $[121] !== isAllPinned || $[122] !== isArchiveOpen || $[123] !== isHeaderVisible || $[124] !== isSearchEnabled || $[125] !== isSelectionMode || $[126] !== labels || $[127] !== onArchiveChats || $[128] !== onDeleteChats || $[129] !== onDeleteSelected || $[130] !== onMuteChats || $[131] !== onPinChats || $[132] !== query || $[133] !== renderHeaderRight || $[134] !== runOnSelection || $[135] !== selectedIds.length || $[136] !== setIsArchiveOpen || $[137] !== setQuery || $[138] !== topInset) {
814
- t46 = isHeaderVisible && <View style={[styles.header, {
812
+ if ($[115] !== style || $[116] !== t45) {
813
+ t46 = [styles.fill, t45, style];
814
+ $[115] = style;
815
+ $[116] = t45;
816
+ $[117] = t46;
817
+ } else {
818
+ t46 = $[117];
819
+ }
820
+ let t47;
821
+ if ($[118] !== colors.headerBackground || $[119] !== colors.headerText || $[120] !== colors.message || $[121] !== headerRightPosition || $[122] !== headerTitle || $[123] !== isAllMuted || $[124] !== isAllPinned || $[125] !== isArchiveOpen || $[126] !== isHeaderVisible || $[127] !== isSearchEnabled || $[128] !== isSelectionMode || $[129] !== labels || $[130] !== onArchiveChats || $[131] !== onDeleteChats || $[132] !== onDeleteSelected || $[133] !== onMuteChats || $[134] !== onPinChats || $[135] !== query || $[136] !== renderHeaderRight || $[137] !== runOnSelection || $[138] !== selectedIds.length || $[139] !== setIsArchiveOpen || $[140] !== setQuery || $[141] !== topInset) {
822
+ t47 = isHeaderVisible && <View style={[styles.header, {
815
823
  paddingTop: topInset,
816
824
  backgroundColor: colors.headerBackground
817
825
  }]}><View style={styles.headerBar}>{isSelectionMode ? <Animated.View key="selection" entering={FadeIn.duration(150)} exiting={FadeOut.duration(150)} style={styles.headerContent}><HeaderButton icon="close" color={colors.headerText} onPress={clearSelection} label={labels.cancelSelection} /><Text style={[styles.headerTitle, styles.selectionCount, {
@@ -820,115 +828,116 @@ function ChatListContent(t0) {
820
828
  color: colors.headerText
821
829
  }]} returnKeyType="search" /></Animated.View> : <Animated.View key={isArchiveOpen ? "archive" : "main"} entering={FadeIn.duration(150)} exiting={FadeOut.duration(150)} style={styles.headerContent}>{isArchiveOpen && <HeaderButton icon="arrowLeft" color={colors.headerText} onPress={() => setIsArchiveOpen(false)} label={labels.chatListBack} />}<Text style={[styles.headerTitle, !isArchiveOpen && styles.headerTitleStart, {
822
830
  color: colors.headerText
823
- }]} numberOfLines={1}>{headerTitle}</Text><View style={styles.spacer} />{renderHeaderRight?.()}{isSearchEnabled && <HeaderButton icon="search" color={colors.headerText} onPress={() => setQuery("")} label={labels.chatListSearch} />}</Animated.View>}</View></View>;
824
- $[116] = colors.headerBackground;
825
- $[117] = colors.headerText;
826
- $[118] = colors.message;
827
- $[119] = headerTitle;
828
- $[120] = isAllMuted;
829
- $[121] = isAllPinned;
830
- $[122] = isArchiveOpen;
831
- $[123] = isHeaderVisible;
832
- $[124] = isSearchEnabled;
833
- $[125] = isSelectionMode;
834
- $[126] = labels;
835
- $[127] = onArchiveChats;
836
- $[128] = onDeleteChats;
837
- $[129] = onDeleteSelected;
838
- $[130] = onMuteChats;
839
- $[131] = onPinChats;
840
- $[132] = query;
841
- $[133] = renderHeaderRight;
842
- $[134] = runOnSelection;
843
- $[135] = selectedIds.length;
844
- $[136] = setIsArchiveOpen;
845
- $[137] = setQuery;
846
- $[138] = topInset;
847
- $[139] = t46;
848
- } else {
849
- t46 = $[139];
850
- }
851
- const t47 = isLoading ? EMPTY_ROWS : rows;
852
- const t48 = isSettling ? undefined : LIST_TRANSITION;
853
- let t49;
854
- if ($[140] !== liftedId) {
855
- t49 = t50 => {
831
+ }]} numberOfLines={1}>{headerTitle}</Text><View style={styles.spacer} />{headerRightPosition === "beforeSearch" && renderHeaderRight?.()}{isSearchEnabled && <HeaderButton icon="search" color={colors.headerText} onPress={() => setQuery("")} label={labels.chatListSearch} />}{headerRightPosition === "afterSearch" && renderHeaderRight?.()}</Animated.View>}</View></View>;
832
+ $[118] = colors.headerBackground;
833
+ $[119] = colors.headerText;
834
+ $[120] = colors.message;
835
+ $[121] = headerRightPosition;
836
+ $[122] = headerTitle;
837
+ $[123] = isAllMuted;
838
+ $[124] = isAllPinned;
839
+ $[125] = isArchiveOpen;
840
+ $[126] = isHeaderVisible;
841
+ $[127] = isSearchEnabled;
842
+ $[128] = isSelectionMode;
843
+ $[129] = labels;
844
+ $[130] = onArchiveChats;
845
+ $[131] = onDeleteChats;
846
+ $[132] = onDeleteSelected;
847
+ $[133] = onMuteChats;
848
+ $[134] = onPinChats;
849
+ $[135] = query;
850
+ $[136] = renderHeaderRight;
851
+ $[137] = runOnSelection;
852
+ $[138] = selectedIds.length;
853
+ $[139] = setIsArchiveOpen;
854
+ $[140] = setQuery;
855
+ $[141] = topInset;
856
+ $[142] = t47;
857
+ } else {
858
+ t47 = $[142];
859
+ }
860
+ const t48 = isLoading ? EMPTY_ROWS : rows;
861
+ const t49 = isSettling ? undefined : LIST_TRANSITION;
862
+ let t50;
863
+ if ($[143] !== liftedId) {
864
+ t50 = t51 => {
856
865
  const {
857
866
  item: item_1
858
- } = t50;
867
+ } = t51;
859
868
  return String(item_1.id) === liftedId ? styles.liftedCell : undefined;
860
869
  };
861
- $[140] = liftedId;
862
- $[141] = t49;
863
- } else {
864
- t49 = $[141];
865
- }
866
- const t50 = onPressNewChat ? styles.listContentWithFab : undefined;
867
- const t51 = isLoading ? undefined : empty;
868
- const t52 = listProps;
869
- let t53;
870
- if ($[142] !== liftedId || $[143] !== onScroll || $[144] !== renderItem || $[145] !== t47 || $[146] !== t48 || $[147] !== t49 || $[148] !== t50 || $[149] !== t51 || $[150] !== t52) {
871
- t53 = <Animated.FlatList data={t47} keyExtractor={_temp1} renderItem={renderItem} itemLayoutAnimation={t48} extraData={liftedId} CellRendererComponentStyle={t49} onScroll={onScroll} scrollEventThrottle={16} keyboardShouldPersistTaps="handled" contentContainerStyle={t50} ListEmptyComponent={t51} {...t52} />;
872
- $[142] = liftedId;
873
- $[143] = onScroll;
874
- $[144] = renderItem;
875
- $[145] = t47;
876
- $[146] = t48;
877
- $[147] = t49;
878
- $[148] = t50;
879
- $[149] = t51;
880
- $[150] = t52;
881
- $[151] = t53;
882
- } else {
883
- t53 = $[151];
870
+ $[143] = liftedId;
871
+ $[144] = t50;
872
+ } else {
873
+ t50 = $[144];
884
874
  }
875
+ const t51 = onPressNewChat ? styles.listContentWithFab : undefined;
876
+ const t52 = isLoading ? undefined : empty;
877
+ const t53 = listProps;
885
878
  let t54;
886
- if ($[152] !== isLoading) {
887
- t54 = isLoading && <Animated.View exiting={FadeOut.duration(150)} style={StyleSheet.absoluteFill} pointerEvents="none"><ChatListShimmer /></Animated.View>;
888
- $[152] = isLoading;
889
- $[153] = t54;
890
- } else {
891
- t54 = $[153];
879
+ if ($[145] !== liftedId || $[146] !== onScroll || $[147] !== renderItem || $[148] !== t48 || $[149] !== t49 || $[150] !== t50 || $[151] !== t51 || $[152] !== t52 || $[153] !== t53) {
880
+ t54 = <Animated.FlatList data={t48} keyExtractor={_temp1} renderItem={renderItem} itemLayoutAnimation={t49} extraData={liftedId} CellRendererComponentStyle={t50} onScroll={onScroll} scrollEventThrottle={16} keyboardShouldPersistTaps="handled" contentContainerStyle={t51} ListEmptyComponent={t52} {...t53} />;
881
+ $[145] = liftedId;
882
+ $[146] = onScroll;
883
+ $[147] = renderItem;
884
+ $[148] = t48;
885
+ $[149] = t49;
886
+ $[150] = t50;
887
+ $[151] = t51;
888
+ $[152] = t52;
889
+ $[153] = t53;
890
+ $[154] = t54;
891
+ } else {
892
+ t54 = $[154];
892
893
  }
893
894
  let t55;
894
- if ($[154] !== t53 || $[155] !== t54) {
895
- t55 = <View style={styles.fill}>{t53}{t54}</View>;
896
- $[154] = t53;
897
- $[155] = t54;
895
+ if ($[155] !== isLoading) {
896
+ t55 = isLoading && <Animated.View exiting={FadeOut.duration(150)} style={StyleSheet.absoluteFill} pointerEvents="none"><ChatListShimmer /></Animated.View>;
897
+ $[155] = isLoading;
898
898
  $[156] = t55;
899
899
  } else {
900
900
  t55 = $[156];
901
901
  }
902
902
  let t56;
903
- if ($[157] !== colors.fab || $[158] !== colors.fabIcon || $[159] !== fabStyle || $[160] !== isArchiveOpen || $[161] !== isSelectionMode || $[162] !== labels || $[163] !== onPressNewChat) {
904
- t56 = onPressNewChat && !isArchiveOpen && !isSelectionMode && <Animated.View entering={FadeIn.duration(200)} exiting={FadeOut.duration(200)} style={[styles.fabWrap, fabStyle]}><Touchable style={[styles.fab, {
903
+ if ($[157] !== t54 || $[158] !== t55) {
904
+ t56 = <View style={styles.fill}>{t54}{t55}</View>;
905
+ $[157] = t54;
906
+ $[158] = t55;
907
+ $[159] = t56;
908
+ } else {
909
+ t56 = $[159];
910
+ }
911
+ let t57;
912
+ if ($[160] !== colors.fab || $[161] !== colors.fabIcon || $[162] !== fabStyle || $[163] !== isArchiveOpen || $[164] !== isSelectionMode || $[165] !== labels || $[166] !== onPressNewChat) {
913
+ t57 = onPressNewChat && !isArchiveOpen && !isSelectionMode && <Animated.View entering={FadeIn.duration(200)} exiting={FadeOut.duration(200)} style={[styles.fabWrap, fabStyle]}><Touchable style={[styles.fab, {
905
914
  backgroundColor: colors.fab
906
915
  }]} activeScale={0.9} onPress={onPressNewChat} accessibilityRole="button" accessibilityLabel={labels.chatListNewChat}><Icon name="pencil" size={24} color={colors.fabIcon} fallback={<Text style={{
907
916
  color: colors.fabIcon
908
917
  }}>+</Text>} /></Touchable></Animated.View>;
909
- $[157] = colors.fab;
910
- $[158] = colors.fabIcon;
911
- $[159] = fabStyle;
912
- $[160] = isArchiveOpen;
913
- $[161] = isSelectionMode;
914
- $[162] = labels;
915
- $[163] = onPressNewChat;
916
- $[164] = t56;
917
- } else {
918
- t56 = $[164];
919
- }
920
- let t57;
921
- if ($[165] !== t45 || $[166] !== t46 || $[167] !== t55 || $[168] !== t56) {
922
- t57 = <View style={t45}>{t46}{t55}{t56}</View>;
923
- $[165] = t45;
924
- $[166] = t46;
925
- $[167] = t55;
926
- $[168] = t56;
927
- $[169] = t57;
928
- } else {
929
- t57 = $[169];
930
- }
931
- return t57;
918
+ $[160] = colors.fab;
919
+ $[161] = colors.fabIcon;
920
+ $[162] = fabStyle;
921
+ $[163] = isArchiveOpen;
922
+ $[164] = isSelectionMode;
923
+ $[165] = labels;
924
+ $[166] = onPressNewChat;
925
+ $[167] = t57;
926
+ } else {
927
+ t57 = $[167];
928
+ }
929
+ let t58;
930
+ if ($[168] !== t46 || $[169] !== t47 || $[170] !== t56 || $[171] !== t57) {
931
+ t58 = <View style={t46}>{t47}{t56}{t57}</View>;
932
+ $[168] = t46;
933
+ $[169] = t47;
934
+ $[170] = t56;
935
+ $[171] = t57;
936
+ $[172] = t58;
937
+ } else {
938
+ t58 = $[172];
939
+ }
940
+ return t58;
932
941
  }
933
942
  function _temp1(item_0) {
934
943
  return String(item_0.id);