@planningcenter/chat-react-native 4.4.1-qa-staging.17 → 4.4.1-qa-staging.19

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 (157) hide show
  1. package/build/components/conversations/archived_results_footer.d.ts +6 -0
  2. package/build/components/conversations/archived_results_footer.d.ts.map +1 -0
  3. package/build/components/conversations/archived_results_footer.js +51 -0
  4. package/build/components/conversations/archived_results_footer.js.map +1 -0
  5. package/build/components/conversations/conversation_actions.d.ts.map +1 -1
  6. package/build/components/conversations/conversation_actions.js +241 -206
  7. package/build/components/conversations/conversation_actions.js.map +1 -1
  8. package/build/components/conversations/conversation_preview.d.ts.map +1 -1
  9. package/build/components/conversations/conversation_preview.js +99 -93
  10. package/build/components/conversations/conversation_preview.js.map +1 -1
  11. package/build/components/conversations/conversations.d.ts.map +1 -1
  12. package/build/components/conversations/conversations.js +44 -35
  13. package/build/components/conversations/conversations.js.map +1 -1
  14. package/build/components/display/filter_dropdown.d.ts +2 -1
  15. package/build/components/display/filter_dropdown.d.ts.map +1 -1
  16. package/build/components/display/filter_dropdown.js +63 -58
  17. package/build/components/display/filter_dropdown.js.map +1 -1
  18. package/build/components/display/icon_tile.d.ts +12 -0
  19. package/build/components/display/icon_tile.d.ts.map +1 -0
  20. package/build/components/display/icon_tile.js +109 -0
  21. package/build/components/display/icon_tile.js.map +1 -0
  22. package/build/components/display/index.d.ts +1 -0
  23. package/build/components/display/index.d.ts.map +1 -1
  24. package/build/components/display/index.js +1 -0
  25. package/build/components/display/index.js.map +1 -1
  26. package/build/contexts/conversations_context.d.ts.map +1 -1
  27. package/build/contexts/conversations_context.js +21 -18
  28. package/build/contexts/conversations_context.js.map +1 -1
  29. package/build/hooks/index.d.ts +2 -0
  30. package/build/hooks/index.d.ts.map +1 -1
  31. package/build/hooks/index.js +2 -0
  32. package/build/hooks/index.js.map +1 -1
  33. package/build/hooks/use_can_browse_archived_conversations.d.ts +2 -0
  34. package/build/hooks/use_can_browse_archived_conversations.d.ts.map +1 -0
  35. package/build/hooks/use_can_browse_archived_conversations.js +29 -0
  36. package/build/hooks/use_can_browse_archived_conversations.js.map +1 -0
  37. package/build/hooks/use_clear_conversation_filters.d.ts.map +1 -1
  38. package/build/hooks/use_clear_conversation_filters.js +2 -1
  39. package/build/hooks/use_clear_conversation_filters.js.map +1 -1
  40. package/build/hooks/use_conversation.d.ts.map +1 -1
  41. package/build/hooks/use_conversation.js +32 -24
  42. package/build/hooks/use_conversation.js.map +1 -1
  43. package/build/hooks/use_current_person.d.ts.map +1 -1
  44. package/build/hooks/use_current_person.js +1 -1
  45. package/build/hooks/use_current_person.js.map +1 -1
  46. package/build/hooks/use_jolt.d.ts.map +1 -1
  47. package/build/hooks/use_jolt.js +29 -8
  48. package/build/hooks/use_jolt.js.map +1 -1
  49. package/build/hooks/use_manual_archiving_enabled.d.ts +2 -0
  50. package/build/hooks/use_manual_archiving_enabled.d.ts.map +1 -0
  51. package/build/hooks/use_manual_archiving_enabled.js +18 -0
  52. package/build/hooks/use_manual_archiving_enabled.js.map +1 -0
  53. package/build/screens/conversation_details_screen.d.ts.map +1 -1
  54. package/build/screens/conversation_details_screen.js +2 -1
  55. package/build/screens/conversation_details_screen.js.map +1 -1
  56. package/build/screens/conversation_filters/components/conversation_filters.d.ts.map +1 -1
  57. package/build/screens/conversation_filters/components/conversation_filters.js +80 -13
  58. package/build/screens/conversation_filters/components/conversation_filters.js.map +1 -1
  59. package/build/screens/conversation_filters/components/rows.d.ts +9 -0
  60. package/build/screens/conversation_filters/components/rows.d.ts.map +1 -1
  61. package/build/screens/conversation_filters/components/rows.js +92 -1
  62. package/build/screens/conversation_filters/components/rows.js.map +1 -1
  63. package/build/screens/conversation_filters/context/conversation_filter_context.d.ts.map +1 -1
  64. package/build/screens/conversation_filters/context/conversation_filter_context.js +8 -4
  65. package/build/screens/conversation_filters/context/conversation_filter_context.js.map +1 -1
  66. package/build/screens/conversation_filters/filter_types.d.ts +1 -0
  67. package/build/screens/conversation_filters/filter_types.d.ts.map +1 -1
  68. package/build/screens/conversation_filters/filter_types.js +1 -0
  69. package/build/screens/conversation_filters/filter_types.js.map +1 -1
  70. package/build/screens/conversation_filters/screen_props.d.ts +1 -0
  71. package/build/screens/conversation_filters/screen_props.d.ts.map +1 -1
  72. package/build/screens/conversation_filters/screen_props.js.map +1 -1
  73. package/build/screens/conversation_filters_screen.d.ts +1 -0
  74. package/build/screens/conversation_filters_screen.d.ts.map +1 -1
  75. package/build/screens/conversation_filters_screen.js +75 -49
  76. package/build/screens/conversation_filters_screen.js.map +1 -1
  77. package/build/screens/conversations/components/filter_dropdown_list_header_component.d.ts +2 -0
  78. package/build/screens/conversations/components/filter_dropdown_list_header_component.d.ts.map +1 -0
  79. package/build/screens/conversations/components/filter_dropdown_list_header_component.js +580 -0
  80. package/build/screens/conversations/components/filter_dropdown_list_header_component.js.map +1 -0
  81. package/build/screens/conversations/components/list_header_component.d.ts.map +1 -1
  82. package/build/screens/conversations/components/list_header_component.js +95 -90
  83. package/build/screens/conversations/components/list_header_component.js.map +1 -1
  84. package/build/screens/conversations/components/search_list_header_component.d.ts.map +1 -1
  85. package/build/screens/conversations/components/search_list_header_component.js +100 -95
  86. package/build/screens/conversations/components/search_list_header_component.js.map +1 -1
  87. package/build/screens/conversations/conversations_screen.d.ts +1 -0
  88. package/build/screens/conversations/conversations_screen.d.ts.map +1 -1
  89. package/build/screens/conversations/conversations_screen.js +15 -2
  90. package/build/screens/conversations/conversations_screen.js.map +1 -1
  91. package/build/types/resources/person.d.ts +1 -0
  92. package/build/types/resources/person.d.ts.map +1 -1
  93. package/build/types/resources/person.js.map +1 -1
  94. package/build/utils/date.d.ts.map +1 -1
  95. package/build/utils/date.js +5 -10
  96. package/build/utils/date.js.map +1 -1
  97. package/build/utils/native_adapters/menu.d.ts +1 -0
  98. package/build/utils/native_adapters/menu.d.ts.map +1 -1
  99. package/build/utils/native_adapters/menu.js +1 -0
  100. package/build/utils/native_adapters/menu.js.map +1 -1
  101. package/build/utils/request/conversation.d.ts +2 -1
  102. package/build/utils/request/conversation.d.ts.map +1 -1
  103. package/build/utils/request/conversation.js +4 -1
  104. package/build/utils/request/conversation.js.map +1 -1
  105. package/build/vendor/font_awesome_pro_solid_icons.d.ts +1 -0
  106. package/build/vendor/font_awesome_pro_solid_icons.d.ts.map +1 -1
  107. package/build/vendor/font_awesome_pro_solid_icons.js +5 -0
  108. package/build/vendor/font_awesome_pro_solid_icons.js.map +1 -1
  109. package/package.json +3 -3
  110. package/src/__tests__/hooks/use_can_browse_archived_conversations.test.tsx +98 -0
  111. package/src/__tests__/screens/conversation_filters/components/conversation_filters.test.tsx +3 -0
  112. package/src/__tests__/screens/conversation_filters_screen.test.tsx +76 -0
  113. package/src/components/conversations/__tests__/conversation_actions.test.tsx +67 -0
  114. package/src/components/conversations/__tests__/conversation_preview.test.tsx +38 -3
  115. package/src/components/conversations/__tests__/conversations.test.tsx +82 -0
  116. package/src/components/conversations/__tests__/conversations_blank_state.test.tsx +1 -0
  117. package/src/components/conversations/archived_results_footer.tsx +36 -0
  118. package/src/components/conversations/conversation_actions.tsx +27 -19
  119. package/src/components/conversations/conversation_preview.tsx +30 -10
  120. package/src/components/conversations/conversations.tsx +15 -3
  121. package/src/components/display/__tests__/filter_dropdown.test.tsx +9 -1
  122. package/src/components/display/filter_dropdown.tsx +14 -13
  123. package/src/components/display/icon_tile.tsx +54 -0
  124. package/src/components/display/index.ts +1 -0
  125. package/src/contexts/conversations_context.tsx +2 -1
  126. package/src/hooks/__tests__/use_conversation_archive.test.tsx +22 -0
  127. package/src/hooks/__tests__/use_jolt.test.tsx +30 -8
  128. package/src/hooks/index.ts +2 -0
  129. package/src/hooks/use_can_browse_archived_conversations.ts +17 -0
  130. package/src/hooks/use_clear_conversation_filters.ts +1 -0
  131. package/src/hooks/use_conversation.ts +4 -1
  132. package/src/hooks/use_current_person.ts +1 -0
  133. package/src/hooks/use_jolt.ts +33 -8
  134. package/src/hooks/use_manual_archiving_enabled.ts +10 -0
  135. package/src/screens/conversation_details_screen.tsx +2 -3
  136. package/src/screens/conversation_filters/__tests__/conversation_filters.test.tsx +101 -0
  137. package/src/screens/conversation_filters/components/conversation_filters.tsx +32 -2
  138. package/src/screens/conversation_filters/components/rows.tsx +29 -1
  139. package/src/screens/conversation_filters/context/conversation_filter_context.tsx +4 -0
  140. package/src/screens/conversation_filters/filter_types.ts +1 -0
  141. package/src/screens/conversation_filters/screen_props.ts +1 -0
  142. package/src/screens/conversation_filters_screen.tsx +20 -4
  143. package/src/screens/conversations/__tests__/conversations_screen.test.tsx +52 -0
  144. package/src/screens/conversations/components/__tests__/filter_dropdown_list_header_component.test.tsx +259 -0
  145. package/src/screens/conversations/components/__tests__/list_header_component.test.tsx +21 -4
  146. package/src/screens/conversations/components/filter_dropdown_list_header_component.tsx +286 -0
  147. package/src/screens/conversations/components/list_header_component.tsx +17 -12
  148. package/src/screens/conversations/components/search_list_header_component.tsx +17 -12
  149. package/src/screens/conversations/conversations_screen.tsx +15 -2
  150. package/src/types/resources/person.ts +1 -0
  151. package/src/utils/__tests__/conversation.test.ts +1 -0
  152. package/src/utils/__tests__/date.test.ts +4 -0
  153. package/src/utils/date.ts +5 -4
  154. package/src/utils/native_adapters/__tests__/menu.test.tsx +6 -2
  155. package/src/utils/native_adapters/menu.tsx +2 -0
  156. package/src/utils/request/conversation.ts +4 -0
  157. package/src/vendor/font_awesome_pro_solid_icons.ts +12 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/components/display/index.ts"],"sourcesContent":["export * from './avatar_group'\nexport * from './avatar'\nexport * from './badge'\nexport * from './conversation_avatar'\nexport * from './emoji_avatar'\nexport * from './icon_avatar'\nexport * from './banner_collapsible'\nexport * from './banner'\nexport * from './button'\nexport * from './adult_requirement_notice'\nexport * from './child_notice'\nexport * from './heading'\nexport * from './icon_button'\nexport * from './icon'\nexport * from './image'\nexport * from './file_attachment_preview'\nexport * from './image_attachment_preview'\nexport * from './video_attachment_preview'\nexport * from './person'\nexport * from './spinner'\nexport * from './switch'\nexport * from './text_button'\nexport * from './text_inline_button'\nexport * from './text'\nexport * from './toggle_button'\nexport * from './filter_dropdown'\nexport * from './keyboard_scroll_view'\nexport * from './keyboard_view'\nexport * from './platform_modal_header_buttons'\nexport * from './pressable_row'\nexport * from './version_footer'\n"],"mappings":"AAAA,cAAc,gBAAgB;AAC9B,cAAc,UAAU;AACxB,cAAc,SAAS;AACvB,cAAc,uBAAuB;AACrC,cAAc,gBAAgB;AAC9B,cAAc,eAAe;AAC7B,cAAc,sBAAsB;AACpC,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,4BAA4B;AAC1C,cAAc,gBAAgB;AAC9B,cAAc,WAAW;AACzB,cAAc,eAAe;AAC7B,cAAc,QAAQ;AACtB,cAAc,SAAS;AACvB,cAAc,2BAA2B;AACzC,cAAc,4BAA4B;AAC1C,cAAc,4BAA4B;AAC1C,cAAc,UAAU;AACxB,cAAc,WAAW;AACzB,cAAc,UAAU;AACxB,cAAc,eAAe;AAC7B,cAAc,sBAAsB;AACpC,cAAc,QAAQ;AACtB,cAAc,iBAAiB;AAC/B,cAAc,mBAAmB;AACjC,cAAc,wBAAwB;AACtC,cAAc,iBAAiB;AAC/B,cAAc,iCAAiC;AAC/C,cAAc,iBAAiB;AAC/B,cAAc,kBAAkB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/components/display/index.ts"],"sourcesContent":["export * from './avatar_group'\nexport * from './avatar'\nexport * from './badge'\nexport * from './conversation_avatar'\nexport * from './emoji_avatar'\nexport * from './icon_avatar'\nexport * from './icon_tile'\nexport * from './banner_collapsible'\nexport * from './banner'\nexport * from './button'\nexport * from './adult_requirement_notice'\nexport * from './child_notice'\nexport * from './heading'\nexport * from './icon_button'\nexport * from './icon'\nexport * from './image'\nexport * from './file_attachment_preview'\nexport * from './image_attachment_preview'\nexport * from './video_attachment_preview'\nexport * from './person'\nexport * from './spinner'\nexport * from './switch'\nexport * from './text_button'\nexport * from './text_inline_button'\nexport * from './text'\nexport * from './toggle_button'\nexport * from './filter_dropdown'\nexport * from './keyboard_scroll_view'\nexport * from './keyboard_view'\nexport * from './platform_modal_header_buttons'\nexport * from './pressable_row'\nexport * from './version_footer'\n"],"mappings":"AAAA,cAAc,gBAAgB;AAC9B,cAAc,UAAU;AACxB,cAAc,SAAS;AACvB,cAAc,uBAAuB;AACrC,cAAc,gBAAgB;AAC9B,cAAc,eAAe;AAC7B,cAAc,aAAa;AAC3B,cAAc,sBAAsB;AACpC,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,4BAA4B;AAC1C,cAAc,gBAAgB;AAC9B,cAAc,WAAW;AACzB,cAAc,eAAe;AAC7B,cAAc,QAAQ;AACtB,cAAc,SAAS;AACvB,cAAc,2BAA2B;AACzC,cAAc,4BAA4B;AAC1C,cAAc,4BAA4B;AAC1C,cAAc,UAAU;AACxB,cAAc,WAAW;AACzB,cAAc,UAAU;AACxB,cAAc,eAAe;AAC7B,cAAc,sBAAsB;AACpC,cAAc,QAAQ;AACtB,cAAc,iBAAiB;AAC/B,cAAc,mBAAmB;AACjC,cAAc,wBAAwB;AACtC,cAAc,iBAAiB;AAC/B,cAAc,iCAAiC;AAC/C,cAAc,iBAAiB;AAC/B,cAAc,kBAAkB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"conversations_context.d.ts","sourceRoot":"","sources":["../../src/contexts/conversations_context.tsx"],"names":[],"mappings":"AAKA,OAAc,EAAiB,iBAAiB,EAAiC,MAAM,OAAO,CAAA;AAC9F,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAoB,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACpF,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAA;AAIxF,UAAU,yBAA0B,SAAQ,qBAAqB;IAC/D,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,uBAAuB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9C,IAAI,EAAE,yBAAyB,CAAA;CAChC;AAsBD,eAAO,MAAM,4BAA4B,GAAI,6CAI1C,iBAAiB,CAAC;IACnB,IAAI,EAAE,yBAAyB,CAAA;IAC/B,IAAI,CAAC,EAAE,kBAAkB,CAAA;CAC1B,CAAC,4CAwBD,CAAA;AAaD,eAAO,MAAM,uBAAuB,iCAAyC,CAAA"}
1
+ {"version":3,"file":"conversations_context.d.ts","sourceRoot":"","sources":["../../src/contexts/conversations_context.tsx"],"names":[],"mappings":"AAKA,OAAc,EAAiB,iBAAiB,EAAiC,MAAM,OAAO,CAAA;AAC9F,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAoB,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AACpF,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAA;AAIxF,UAAU,yBAA0B,SAAQ,qBAAqB;IAC/D,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,uBAAuB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9C,IAAI,EAAE,yBAAyB,CAAA;CAChC;AAsBD,eAAO,MAAM,4BAA4B,GAAI,6CAI1C,iBAAiB,CAAC;IACnB,IAAI,EAAE,yBAAyB,CAAA;IAC/B,IAAI,CAAC,EAAE,kBAAkB,CAAA;CAC1B,CAAC,4CAyBD,CAAA;AAaD,eAAO,MAAM,uBAAuB,iCAAyC,CAAA"}
@@ -21,7 +21,7 @@ const ConversationsContext = createContext({
21
21
  ...defaultQueryValue
22
22
  });
23
23
  export const ConversationsContextProvider = t0 => {
24
- const $ = _c(13);
24
+ const $ = _c(14);
25
25
  const {
26
26
  children,
27
27
  args: t1,
@@ -40,50 +40,53 @@ export const ConversationsContextProvider = t0 => {
40
40
  const {
41
41
  chat_group_graph_id,
42
42
  group_source_app_name,
43
- show_direct_messages
43
+ show_direct_messages,
44
+ show_archived
44
45
  } = args;
45
46
  let t3;
46
- if ($[2] !== chat_group_graph_id || $[3] !== group_source_app_name || $[4] !== show_direct_messages) {
47
+ if ($[2] !== chat_group_graph_id || $[3] !== group_source_app_name || $[4] !== show_archived || $[5] !== show_direct_messages) {
47
48
  t3 = {
48
49
  chat_group_graph_id,
49
50
  group_source_app_name,
50
- show_direct_messages
51
+ show_direct_messages,
52
+ show_archived
51
53
  };
52
54
  $[2] = chat_group_graph_id;
53
55
  $[3] = group_source_app_name;
54
- $[4] = show_direct_messages;
55
- $[5] = t3;
56
+ $[4] = show_archived;
57
+ $[5] = show_direct_messages;
58
+ $[6] = t3;
56
59
  } else {
57
- t3 = $[5];
60
+ t3 = $[6];
58
61
  }
59
62
  const query = useConversations(t3, paginatorOptions);
60
63
  let t4;
61
- if ($[6] !== activeConversationId || $[7] !== args || $[8] !== query) {
64
+ if ($[7] !== activeConversationId || $[8] !== args || $[9] !== query) {
62
65
  t4 = {
63
66
  args,
64
67
  activeConversationId,
65
68
  setActiveConversationId,
66
69
  ...query
67
70
  };
68
- $[6] = activeConversationId;
69
- $[7] = args;
70
- $[8] = query;
71
- $[9] = t4;
71
+ $[7] = activeConversationId;
72
+ $[8] = args;
73
+ $[9] = query;
74
+ $[10] = t4;
72
75
  } else {
73
- t4 = $[9];
76
+ t4 = $[10];
74
77
  }
75
78
  const value = t4;
76
79
  let t5;
77
- if ($[10] !== children || $[11] !== value) {
80
+ if ($[11] !== children || $[12] !== value) {
78
81
  t5 = /*#__PURE__*/_jsx(ConversationsContext.Provider, {
79
82
  value: value,
80
83
  children: children
81
84
  });
82
- $[10] = children;
83
- $[11] = value;
84
- $[12] = t5;
85
+ $[11] = children;
86
+ $[12] = value;
87
+ $[13] = t5;
85
88
  } else {
86
- t5 = $[12];
89
+ t5 = $[13];
87
90
  }
88
91
  return t5;
89
92
  };
@@ -1 +1 @@
1
- {"version":3,"file":"conversations_context.js","names":["React","createContext","useContext","useMemo","useState","useConversations","jsx","_jsx","defaultQueryValue","conversations","refetch","Promise","resolve","error","isError","isLoading","fetchNextPage","hasNextPage","isFetching","isFetched","isRefetching","ConversationsContext","args","activeConversationId","undefined","setActiveConversationId","ConversationsContextProvider","t0","$","_c","children","t1","opts","paginatorOptions","t2","chat_group_graph_id","group_source_app_name","show_direct_messages","t3","query","t4","value","t5","Provider","_options","Error","useConversationsContext"],"sources":["../../src/contexts/conversations_context.tsx"],"sourcesContent":["import {\n FetchNextPageOptions,\n InfiniteQueryObserverResult,\n InfiniteData,\n} from '@tanstack/react-query'\nimport React, { createContext, PropsWithChildren, useContext, useMemo, useState } from 'react'\nimport { ApiGetQueryOptions } from '../hooks'\nimport { useConversations, UseConversationsValue } from '../hooks/use_conversations'\nimport { ConversationFiltersParams } from '../screens/conversation_filters/screen_props'\nimport { ApiCollection, ConversationResource } from '../types'\nimport { ResponseError } from '../utils/response_error'\n\ninterface ConversationsContextValue extends UseConversationsValue {\n activeConversationId?: number\n setActiveConversationId: (_id: number) => void\n args: ConversationFiltersParams\n}\n\nconst defaultQueryValue: UseConversationsValue = {\n conversations: [],\n refetch: () => Promise.resolve(null),\n error: null,\n isError: false,\n isLoading: true,\n fetchNextPage,\n hasNextPage: false,\n isFetching: false,\n isFetched: false,\n isRefetching: false,\n}\n\nconst ConversationsContext = createContext<ConversationsContextValue>({\n args: {},\n activeConversationId: undefined,\n setActiveConversationId: () => {},\n ...defaultQueryValue,\n})\n\nexport const ConversationsContextProvider = ({\n children,\n args = {},\n opts: paginatorOptions,\n}: PropsWithChildren<{\n args: ConversationFiltersParams\n opts?: ApiGetQueryOptions\n}>) => {\n const [activeConversationId, setActiveConversationId] = useState<number | undefined>()\n const { chat_group_graph_id, group_source_app_name, show_direct_messages } = args\n\n const query = useConversations(\n {\n chat_group_graph_id,\n group_source_app_name,\n show_direct_messages,\n },\n paginatorOptions\n )\n\n const value = useMemo(\n () => ({\n args,\n activeConversationId,\n setActiveConversationId,\n ...query,\n }),\n [args, activeConversationId, query]\n )\n\n return <ConversationsContext.Provider value={value}>{children}</ConversationsContext.Provider>\n}\n\nfunction fetchNextPage(\n _options?: FetchNextPageOptions\n): Promise<\n InfiniteQueryObserverResult<\n InfiniteData<ApiCollection<ConversationResource>, unknown>,\n ResponseError\n >\n> {\n throw new Error('Function not implemented.')\n}\n\nexport const useConversationsContext = () => useContext(ConversationsContext)\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"conversations_context.js","names":["React","createContext","useContext","useMemo","useState","useConversations","jsx","_jsx","defaultQueryValue","conversations","refetch","Promise","resolve","error","isError","isLoading","fetchNextPage","hasNextPage","isFetching","isFetched","isRefetching","ConversationsContext","args","activeConversationId","undefined","setActiveConversationId","ConversationsContextProvider","t0","$","_c","children","t1","opts","paginatorOptions","t2","chat_group_graph_id","group_source_app_name","show_direct_messages","show_archived","t3","query","t4","value","t5","Provider","_options","Error","useConversationsContext"],"sources":["../../src/contexts/conversations_context.tsx"],"sourcesContent":["import {\n FetchNextPageOptions,\n InfiniteQueryObserverResult,\n InfiniteData,\n} from '@tanstack/react-query'\nimport React, { createContext, PropsWithChildren, useContext, useMemo, useState } from 'react'\nimport { ApiGetQueryOptions } from '../hooks'\nimport { useConversations, UseConversationsValue } from '../hooks/use_conversations'\nimport { ConversationFiltersParams } from '../screens/conversation_filters/screen_props'\nimport { ApiCollection, ConversationResource } from '../types'\nimport { ResponseError } from '../utils/response_error'\n\ninterface ConversationsContextValue extends UseConversationsValue {\n activeConversationId?: number\n setActiveConversationId: (_id: number) => void\n args: ConversationFiltersParams\n}\n\nconst defaultQueryValue: UseConversationsValue = {\n conversations: [],\n refetch: () => Promise.resolve(null),\n error: null,\n isError: false,\n isLoading: true,\n fetchNextPage,\n hasNextPage: false,\n isFetching: false,\n isFetched: false,\n isRefetching: false,\n}\n\nconst ConversationsContext = createContext<ConversationsContextValue>({\n args: {},\n activeConversationId: undefined,\n setActiveConversationId: () => {},\n ...defaultQueryValue,\n})\n\nexport const ConversationsContextProvider = ({\n children,\n args = {},\n opts: paginatorOptions,\n}: PropsWithChildren<{\n args: ConversationFiltersParams\n opts?: ApiGetQueryOptions\n}>) => {\n const [activeConversationId, setActiveConversationId] = useState<number | undefined>()\n const { chat_group_graph_id, group_source_app_name, show_direct_messages, show_archived } = args\n\n const query = useConversations(\n {\n chat_group_graph_id,\n group_source_app_name,\n show_direct_messages,\n show_archived,\n },\n paginatorOptions\n )\n\n const value = useMemo(\n () => ({\n args,\n activeConversationId,\n setActiveConversationId,\n ...query,\n }),\n [args, activeConversationId, query]\n )\n\n return <ConversationsContext.Provider value={value}>{children}</ConversationsContext.Provider>\n}\n\nfunction fetchNextPage(\n _options?: FetchNextPageOptions\n): Promise<\n InfiniteQueryObserverResult<\n InfiniteData<ApiCollection<ConversationResource>, unknown>,\n ResponseError\n >\n> {\n throw new Error('Function not implemented.')\n}\n\nexport const useConversationsContext = () => useContext(ConversationsContext)\n"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@ export { useApiClient } from './use_api_client';
3
3
  export * from './use_api';
4
4
  export * from './use_app_state';
5
5
  export * from './use_async_storage';
6
+ export * from './use_can_browse_archived_conversations';
6
7
  export * from './use_at_font_scale_breakpoint';
7
8
  export * from './use_chat_permissions';
8
9
  export * from './use_create_android_ripple_color';
@@ -16,6 +17,7 @@ export * from './use_groups_groups';
16
17
  export * from './use_groups';
17
18
  export * from './use_selected_chip_background_color';
18
19
  export * from './use_interaction_tinted_background_color';
20
+ export * from './use_manual_archiving_enabled';
19
21
  export * from './use_message_reaction_toggle';
20
22
  export * from './use_new_conversation_entry';
21
23
  export * from './use_organization';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,yCAAyC,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,wBAAwB,CAAA;AACtC,cAAc,mCAAmC,CAAA;AACjD,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kCAAkC,CAAA;AAChD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,kBAAkB,CAAA;AAChC,cAAc,2BAA2B,CAAA;AACzC,cAAc,qBAAqB,CAAA;AACnC,cAAc,cAAc,CAAA;AAC5B,cAAc,sCAAsC,CAAA;AACpD,cAAc,2CAA2C,CAAA;AACzD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,yBAAyB,CAAA;AACvC,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,wBAAwB,CAAA;AACtC,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,yCAAyC,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,yCAAyC,CAAA;AACvD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,wBAAwB,CAAA;AACtC,cAAc,mCAAmC,CAAA;AACjD,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kCAAkC,CAAA;AAChD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,kBAAkB,CAAA;AAChC,cAAc,2BAA2B,CAAA;AACzC,cAAc,qBAAqB,CAAA;AACnC,cAAc,cAAc,CAAA;AAC5B,cAAc,sCAAsC,CAAA;AACpD,cAAc,2CAA2C,CAAA;AACzD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,yBAAyB,CAAA;AACvC,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,wBAAwB,CAAA;AACtC,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA"}
@@ -3,6 +3,7 @@ export { useApiClient } from './use_api_client';
3
3
  export * from './use_api';
4
4
  export * from './use_app_state';
5
5
  export * from './use_async_storage';
6
+ export * from './use_can_browse_archived_conversations';
6
7
  export * from './use_at_font_scale_breakpoint';
7
8
  export * from './use_chat_permissions';
8
9
  export * from './use_create_android_ripple_color';
@@ -16,6 +17,7 @@ export * from './use_groups_groups';
16
17
  export * from './use_groups';
17
18
  export * from './use_selected_chip_background_color';
18
19
  export * from './use_interaction_tinted_background_color';
20
+ export * from './use_manual_archiving_enabled';
19
21
  export * from './use_message_reaction_toggle';
20
22
  export * from './use_new_conversation_entry';
21
23
  export * from './use_organization';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useApiClient"],"sources":["../../src/hooks/index.ts"],"sourcesContent":["export * from './use_animated_message_background_color'\nexport { useApiClient } from './use_api_client'\nexport * from './use_api'\nexport * from './use_app_state'\nexport * from './use_async_storage'\nexport * from './use_at_font_scale_breakpoint'\nexport * from './use_chat_permissions'\nexport * from './use_create_android_ripple_color'\nexport * from './use_current_person'\nexport * from './use_deleting_ids'\nexport * from './use_direct_message_eligibility'\nexport * from './use_direct_messages_eligible'\nexport * from './use_font_scale'\nexport * from './use_has_direct_messages'\nexport * from './use_groups_groups'\nexport * from './use_groups'\nexport * from './use_selected_chip_background_color'\nexport * from './use_interaction_tinted_background_color'\nexport * from './use_message_reaction_toggle'\nexport * from './use_new_conversation_entry'\nexport * from './use_organization'\nexport * from './use_people_person'\nexport * from './use_preview_avatar_diameter'\nexport * from './use_product_analytics'\nexport * from './use_qualified_by_age'\nexport * from './use_reduce_motion'\nexport * from './use_scalable_number_of_lines'\nexport * from './use_submit_age_check'\nexport * from './use_suspense_api'\nexport * from './use_theme'\n"],"mappings":"AAAA,cAAc,yCAAyC;AACvD,SAASA,YAAY,QAAQ,kBAAkB;AAC/C,cAAc,WAAW;AACzB,cAAc,iBAAiB;AAC/B,cAAc,qBAAqB;AACnC,cAAc,gCAAgC;AAC9C,cAAc,wBAAwB;AACtC,cAAc,mCAAmC;AACjD,cAAc,sBAAsB;AACpC,cAAc,oBAAoB;AAClC,cAAc,kCAAkC;AAChD,cAAc,gCAAgC;AAC9C,cAAc,kBAAkB;AAChC,cAAc,2BAA2B;AACzC,cAAc,qBAAqB;AACnC,cAAc,cAAc;AAC5B,cAAc,sCAAsC;AACpD,cAAc,2CAA2C;AACzD,cAAc,+BAA+B;AAC7C,cAAc,8BAA8B;AAC5C,cAAc,oBAAoB;AAClC,cAAc,qBAAqB;AACnC,cAAc,+BAA+B;AAC7C,cAAc,yBAAyB;AACvC,cAAc,wBAAwB;AACtC,cAAc,qBAAqB;AACnC,cAAc,gCAAgC;AAC9C,cAAc,wBAAwB;AACtC,cAAc,oBAAoB;AAClC,cAAc,aAAa","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useApiClient"],"sources":["../../src/hooks/index.ts"],"sourcesContent":["export * from './use_animated_message_background_color'\nexport { useApiClient } from './use_api_client'\nexport * from './use_api'\nexport * from './use_app_state'\nexport * from './use_async_storage'\nexport * from './use_can_browse_archived_conversations'\nexport * from './use_at_font_scale_breakpoint'\nexport * from './use_chat_permissions'\nexport * from './use_create_android_ripple_color'\nexport * from './use_current_person'\nexport * from './use_deleting_ids'\nexport * from './use_direct_message_eligibility'\nexport * from './use_direct_messages_eligible'\nexport * from './use_font_scale'\nexport * from './use_has_direct_messages'\nexport * from './use_groups_groups'\nexport * from './use_groups'\nexport * from './use_selected_chip_background_color'\nexport * from './use_interaction_tinted_background_color'\nexport * from './use_manual_archiving_enabled'\nexport * from './use_message_reaction_toggle'\nexport * from './use_new_conversation_entry'\nexport * from './use_organization'\nexport * from './use_people_person'\nexport * from './use_preview_avatar_diameter'\nexport * from './use_product_analytics'\nexport * from './use_qualified_by_age'\nexport * from './use_reduce_motion'\nexport * from './use_scalable_number_of_lines'\nexport * from './use_submit_age_check'\nexport * from './use_suspense_api'\nexport * from './use_theme'\n"],"mappings":"AAAA,cAAc,yCAAyC;AACvD,SAASA,YAAY,QAAQ,kBAAkB;AAC/C,cAAc,WAAW;AACzB,cAAc,iBAAiB;AAC/B,cAAc,qBAAqB;AACnC,cAAc,yCAAyC;AACvD,cAAc,gCAAgC;AAC9C,cAAc,wBAAwB;AACtC,cAAc,mCAAmC;AACjD,cAAc,sBAAsB;AACpC,cAAc,oBAAoB;AAClC,cAAc,kCAAkC;AAChD,cAAc,gCAAgC;AAC9C,cAAc,kBAAkB;AAChC,cAAc,2BAA2B;AACzC,cAAc,qBAAqB;AACnC,cAAc,cAAc;AAC5B,cAAc,sCAAsC;AACpD,cAAc,2CAA2C;AACzD,cAAc,gCAAgC;AAC9C,cAAc,+BAA+B;AAC7C,cAAc,8BAA8B;AAC5C,cAAc,oBAAoB;AAClC,cAAc,qBAAqB;AACnC,cAAc,+BAA+B;AAC7C,cAAc,yBAAyB;AACvC,cAAc,wBAAwB;AACtC,cAAc,qBAAqB;AACnC,cAAc,gCAAgC;AAC9C,cAAc,wBAAwB;AACtC,cAAc,oBAAoB;AAClC,cAAc,aAAa","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export declare const useCanBrowseArchivedConversations: () => boolean;
2
+ //# sourceMappingURL=use_can_browse_archived_conversations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use_can_browse_archived_conversations.d.ts","sourceRoot":"","sources":["../../src/hooks/use_can_browse_archived_conversations.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,iCAAiC,QAAO,OAUpD,CAAA"}
@@ -0,0 +1,29 @@
1
+ import { c as _c } from "react/compiler-runtime";
2
+ import { FIVE_MINUTES } from '../utils/time';
3
+ import { useApiGet } from './use_api';
4
+ import { currentPersonRequestArgs } from './use_current_person';
5
+ import { useManualArchivingEnabled } from './use_manual_archiving_enabled';
6
+ export const useCanBrowseArchivedConversations = () => {
7
+ const $ = _c(2);
8
+ const manualArchivingEnabled = useManualArchivingEnabled();
9
+ let t0;
10
+ if ($[0] !== manualArchivingEnabled) {
11
+ t0 = {
12
+ enabled: manualArchivingEnabled,
13
+ staleTime: FIVE_MINUTES
14
+ };
15
+ $[0] = manualArchivingEnabled;
16
+ $[1] = t0;
17
+ } else {
18
+ t0 = $[1];
19
+ }
20
+ const {
21
+ data: person,
22
+ isFetched
23
+ } = useApiGet(currentPersonRequestArgs, t0);
24
+ if (!manualArchivingEnabled || !isFetched) {
25
+ return false;
26
+ }
27
+ return person?.canBrowseArchivedConversations ?? false;
28
+ };
29
+ //# sourceMappingURL=use_can_browse_archived_conversations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use_can_browse_archived_conversations.js","names":["FIVE_MINUTES","useApiGet","currentPersonRequestArgs","useManualArchivingEnabled","useCanBrowseArchivedConversations","$","_c","manualArchivingEnabled","t0","enabled","staleTime","data","person","isFetched","canBrowseArchivedConversations"],"sources":["../../src/hooks/use_can_browse_archived_conversations.ts"],"sourcesContent":["import { CurrentPersonResource } from '../types'\nimport { FIVE_MINUTES } from '../utils/time'\nimport { useApiGet } from './use_api'\nimport { currentPersonRequestArgs } from './use_current_person'\nimport { useManualArchivingEnabled } from './use_manual_archiving_enabled'\n\nexport const useCanBrowseArchivedConversations = (): boolean => {\n const manualArchivingEnabled = useManualArchivingEnabled()\n const { data: person, isFetched } = useApiGet<CurrentPersonResource>(currentPersonRequestArgs, {\n enabled: manualArchivingEnabled,\n staleTime: FIVE_MINUTES,\n })\n\n if (!manualArchivingEnabled || !isFetched) return false\n\n return person?.canBrowseArchivedConversations ?? false\n}\n"],"mappings":";AACA,SAASA,YAAY,QAAQ,eAAe;AAC5C,SAASC,SAAS,QAAQ,WAAW;AACrC,SAASC,wBAAwB,QAAQ,sBAAsB;AAC/D,SAASC,yBAAyB,QAAQ,gCAAgC;AAE1E,OAAO,MAAMC,iCAAiC,GAAGA,CAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAC/C,MAAAC,sBAAA,GAA+BJ,yBAAyB,CAAC,CAAC;EAAA,IAAAK,EAAA;EAAA,IAAAH,CAAA,QAAAE,sBAAA;IACqCC,EAAA;MAAAC,OAAA,EACpFF,sBAAsB;MAAAG,SAAA,EACpBV;IACb,CAAC;IAAAK,CAAA,MAAAE,sBAAA;IAAAF,CAAA,MAAAG,EAAA;EAAA;IAAAA,EAAA,GAAAH,CAAA;EAAA;EAHD;IAAAM,IAAA,EAAAC,MAAA;IAAAC;EAAA,IAAoCZ,SAAS,CAAwBC,wBAAwB,EAAEM,EAG9F,CAAC;EAEF,IAAI,CAACD,sBAAoC,IAArC,CAA4BM,SAAS;IAAA,OAAS,KAAK;EAAA;EAAA,OAEhDD,MAAM,EAAAE,8BAAyC,IAA/C,KAA+C;AAAA,CACvD","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"use_clear_conversation_filters.d.ts","sourceRoot":"","sources":["../../src/hooks/use_clear_conversation_filters.ts"],"names":[],"mappings":"AAGA,wBAAgB,2BAA2B,eAW1C"}
1
+ {"version":3,"file":"use_clear_conversation_filters.d.ts","sourceRoot":"","sources":["../../src/hooks/use_clear_conversation_filters.ts"],"names":[],"mappings":"AAGA,wBAAgB,2BAA2B,eAY1C"}
@@ -11,7 +11,8 @@ export function useClearConversationFilters() {
11
11
  title: undefined,
12
12
  chat_group_graph_id: undefined,
13
13
  group_source_app_name: undefined,
14
- show_direct_messages: undefined
14
+ show_direct_messages: undefined,
15
+ show_archived: undefined
15
16
  });
16
17
  };
17
18
  $[0] = navigation;
@@ -1 +1 @@
1
- {"version":3,"file":"use_clear_conversation_filters.js","names":["useNavigation","useCallback","useClearConversationFilters","$","_c","navigation","t0","setParams","title","undefined","chat_group_graph_id","group_source_app_name","show_direct_messages"],"sources":["../../src/hooks/use_clear_conversation_filters.ts"],"sourcesContent":["import { useNavigation } from '@react-navigation/native'\nimport { useCallback } from 'react'\n\nexport function useClearConversationFilters() {\n const navigation = useNavigation()\n\n return useCallback(() => {\n navigation.setParams({\n title: undefined,\n chat_group_graph_id: undefined,\n group_source_app_name: undefined,\n show_direct_messages: undefined,\n })\n }, [navigation])\n}\n"],"mappings":";AAAA,SAASA,aAAa,QAAQ,0BAA0B;AACxD,SAASC,WAAW,QAAQ,OAAO;AAEnC,OAAO,SAAAC,4BAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EACL,MAAAC,UAAA,GAAmBL,aAAa,CAAC,CAAC;EAAA,IAAAM,EAAA;EAAA,IAAAH,CAAA,QAAAE,UAAA;IAEfC,EAAA,GAAAA,CAAA;MACjBD,UAAU,CAAAE,SAAU,CAAC;QAAAC,KAAA,EACZC,SAAS;QAAAC,mBAAA,EACKD,SAAS;QAAAE,qBAAA,EACPF,SAAS;QAAAG,oBAAA,EACVH;MACxB,CAAC,CAAC;IAAA,CACH;IAAAN,CAAA,MAAAE,UAAA;IAAAF,CAAA,MAAAG,EAAA;EAAA;IAAAA,EAAA,GAAAH,CAAA;EAAA;EAAA,OAPMG,EAOS;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"use_clear_conversation_filters.js","names":["useNavigation","useCallback","useClearConversationFilters","$","_c","navigation","t0","setParams","title","undefined","chat_group_graph_id","group_source_app_name","show_direct_messages","show_archived"],"sources":["../../src/hooks/use_clear_conversation_filters.ts"],"sourcesContent":["import { useNavigation } from '@react-navigation/native'\nimport { useCallback } from 'react'\n\nexport function useClearConversationFilters() {\n const navigation = useNavigation()\n\n return useCallback(() => {\n navigation.setParams({\n title: undefined,\n chat_group_graph_id: undefined,\n group_source_app_name: undefined,\n show_direct_messages: undefined,\n show_archived: undefined,\n })\n }, [navigation])\n}\n"],"mappings":";AAAA,SAASA,aAAa,QAAQ,0BAA0B;AACxD,SAASC,WAAW,QAAQ,OAAO;AAEnC,OAAO,SAAAC,4BAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EACL,MAAAC,UAAA,GAAmBL,aAAa,CAAC,CAAC;EAAA,IAAAM,EAAA;EAAA,IAAAH,CAAA,QAAAE,UAAA;IAEfC,EAAA,GAAAA,CAAA;MACjBD,UAAU,CAAAE,SAAU,CAAC;QAAAC,KAAA,EACZC,SAAS;QAAAC,mBAAA,EACKD,SAAS;QAAAE,qBAAA,EACPF,SAAS;QAAAG,oBAAA,EACVH,SAAS;QAAAI,aAAA,EAChBJ;MACjB,CAAC,CAAC;IAAA,CACH;IAAAN,CAAA,MAAAE,UAAA;IAAAF,CAAA,MAAAG,EAAA;EAAA;IAAAA,EAAA,GAAAH,CAAA;EAAA;EAAA,OARMG,EAQS;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"use_conversation.d.ts","sourceRoot":"","sources":["../../src/hooks/use_conversation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAK5D,OAAO,EAAsB,uBAAuB,EAAkB,MAAM,oBAAoB,CAAA;AAEhG,eAAO,MAAM,0BAA0B,GAAI,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;CA+DzF,CAAA;AAEF,eAAO,MAAM,eAAe,GAC1B,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE,EAChD,UAAU,uBAAuB,CAAC,oBAAoB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;CAKxD,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDnF,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE,+JA+BrF,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE,iFAiBrF,CAAA;AAED,eAAO,MAAM,sBAAsB,GAAI,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BtF,CAAA;AAED,eAAO,MAAM,6BAA6B,GAAI,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6C7F,CAAA"}
1
+ {"version":3,"file":"use_conversation.d.ts","sourceRoot":"","sources":["../../src/hooks/use_conversation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAM5D,OAAO,EAAsB,uBAAuB,EAAkB,MAAM,oBAAoB,CAAA;AAEhG,eAAO,MAAM,0BAA0B,GAAI,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;CA+DzF,CAAA;AAEF,eAAO,MAAM,eAAe,GAC1B,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE,EAChD,UAAU,uBAAuB,CAAC,oBAAoB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;CAKxD,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDnF,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE,+JA+BrF,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE,iFAiBrF,CAAA;AAED,eAAO,MAAM,sBAAsB,GAAI,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCtF,CAAA;AAED,eAAO,MAAM,6BAA6B,GAAI,qBAAqB;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6C7F,CAAA"}
@@ -6,6 +6,7 @@ import { transformGetToPost } from '../utils/client/request_helpers';
6
6
  import { Haptic } from '../utils/native_adapters';
7
7
  import { getConversationsRequestArgs } from '../utils/request/conversation';
8
8
  import { useApiClient } from './use_api_client';
9
+ import { useCurrentPersonCache } from './use_current_person';
9
10
  import { getRequestQueryKey, useSuspenseGet } from './use_suspense_api';
10
11
  export const getConversationRequestArgs = ({
11
12
  conversation_id
@@ -355,12 +356,13 @@ export const useConversationDelete = t0 => {
355
356
  return useMutation(t5);
356
357
  };
357
358
  export const useConversationArchive = t0 => {
358
- const $ = _c(19);
359
+ const $ = _c(20);
359
360
  const {
360
361
  conversation_id
361
362
  } = t0;
362
363
  const apiClient = useApiClient();
363
364
  const queryClient = useQueryClient();
365
+ const currentPersonCache = useCurrentPersonCache();
364
366
  let t1;
365
367
  if ($[0] !== conversation_id) {
366
368
  t1 = getRequestQueryKey(getConversationRequestArgs({
@@ -410,9 +412,14 @@ export const useConversationArchive = t0 => {
410
412
  t4 = $[6];
411
413
  }
412
414
  let t5;
413
- if ($[7] !== conversationQueryKey || $[8] !== queryClient) {
414
- t5 = () => {
415
+ if ($[7] !== conversationQueryKey || $[8] !== currentPersonCache || $[9] !== queryClient) {
416
+ t5 = (_response, archived_0) => {
415
417
  Haptic.notificationSuccess();
418
+ if (archived_0) {
419
+ currentPersonCache.update({
420
+ canBrowseArchivedConversations: true
421
+ });
422
+ }
416
423
  queryClient.invalidateQueries({
417
424
  queryKey: [url]
418
425
  });
@@ -421,51 +428,52 @@ export const useConversationArchive = t0 => {
421
428
  });
422
429
  };
423
430
  $[7] = conversationQueryKey;
424
- $[8] = queryClient;
425
- $[9] = t5;
431
+ $[8] = currentPersonCache;
432
+ $[9] = queryClient;
433
+ $[10] = t5;
426
434
  } else {
427
- t5 = $[9];
435
+ t5 = $[10];
428
436
  }
429
437
  let t6;
430
- if ($[10] !== t4 || $[11] !== t5) {
438
+ if ($[11] !== t4 || $[12] !== t5) {
431
439
  t6 = {
432
440
  mutationKey: t3,
433
441
  mutationFn: t4,
434
442
  onSuccess: t5,
435
443
  onError: _temp
436
444
  };
437
- $[10] = t4;
438
- $[11] = t5;
439
- $[12] = t6;
445
+ $[11] = t4;
446
+ $[12] = t5;
447
+ $[13] = t6;
440
448
  } else {
441
- t6 = $[12];
449
+ t6 = $[13];
442
450
  }
443
451
  const t7 = useMutation(t6);
444
452
  let mutation;
445
453
  let setArchived;
446
- if ($[13] !== t7) {
454
+ if ($[14] !== t7) {
447
455
  ({
448
456
  mutate: setArchived,
449
457
  ...mutation
450
458
  } = t7);
451
- $[13] = t7;
452
- $[14] = mutation;
453
- $[15] = setArchived;
459
+ $[14] = t7;
460
+ $[15] = mutation;
461
+ $[16] = setArchived;
454
462
  } else {
455
- mutation = $[14];
456
- setArchived = $[15];
463
+ mutation = $[15];
464
+ setArchived = $[16];
457
465
  }
458
466
  let t8;
459
- if ($[16] !== mutation || $[17] !== setArchived) {
467
+ if ($[17] !== mutation || $[18] !== setArchived) {
460
468
  t8 = {
461
469
  setArchived,
462
470
  ...mutation
463
471
  };
464
- $[16] = mutation;
465
- $[17] = setArchived;
466
- $[18] = t8;
472
+ $[17] = mutation;
473
+ $[18] = setArchived;
474
+ $[19] = t8;
467
475
  } else {
468
- t8 = $[18];
476
+ t8 = $[19];
469
477
  }
470
478
  return t8;
471
479
  };
@@ -608,7 +616,7 @@ export const useConversationDisableReplies = t0 => {
608
616
  }
609
617
  return t9;
610
618
  };
611
- function _temp(_error, archived_0) {
612
- Alert.alert("Oops", `Couldn't ${archived_0 ? "archive" : "unarchive"} this conversation. Please try again.`);
619
+ function _temp(_error, archived_1) {
620
+ Alert.alert("Oops", `Couldn't ${archived_1 ? "archive" : "unarchive"} this conversation. Please try again.`);
613
621
  }
614
622
  //# sourceMappingURL=use_conversation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use_conversation.js","names":["useMutation","useQueryClient","useState","Alert","transformGetToPost","Haptic","getConversationsRequestArgs","useApiClient","getRequestQueryKey","useSuspenseGet","getConversationRequestArgs","conversation_id","url","data","fields","Conversation","AnalyticsMetadata","MemberAbility","ConversationMembership","ConversationBadge","Group","include","useConversation","t0","options","$","_c","t1","args","useConversationMute","apiClient","queryClient","requestArgs","queryKey","t2","conversation","value","setValue","muted","t3","setQueryData","prev","conversationMembership","t4","Symbol","for","t5","muted_0","action","chat","post","type","attributes","t6","response","invalidateQueries","prev_0","t7","onMutate","mutationKey","mutationFn","onSuccess","t8","mutation","setMuted","mutate","t9","useConversationUpdate","update","update_0","postArgs","patch","useConversationDelete","delete","notificationSuccess","useConversationArchive","conversationQueryKey","archived","onError","_temp","setArchived","useConversationDisableReplies","repliesDisabled","repliesDisabled_0","replies_disabled","setRepliesDisabled","_error","archived_0","alert"],"sources":["../../src/hooks/use_conversation.ts"],"sourcesContent":["import { useMutation, useQueryClient } from '@tanstack/react-query'\nimport { useState } from 'react'\nimport { Alert } from 'react-native'\nimport { ApiResource, ConversationResource } from '../types'\nimport { transformGetToPost } from '../utils/client/request_helpers'\nimport { Haptic } from '../utils/native_adapters'\nimport { getConversationsRequestArgs } from '../utils/request/conversation'\nimport { useApiClient } from './use_api_client'\nimport { getRequestQueryKey, SuspenseGetQueryOptions, useSuspenseGet } from './use_suspense_api'\n\nexport const getConversationRequestArgs = ({ conversation_id }: { conversation_id: number }) => ({\n url: `/me/conversations/${conversation_id}`,\n data: {\n fields: {\n Conversation: [\n 'analytics_metadata',\n 'created_at',\n 'badges',\n 'conversation_membership',\n 'conversation_preview',\n 'gender_option',\n 'groups',\n 'last_message_author_id',\n 'last_message_author_name',\n 'last_message_created_at',\n 'last_message_text_preview',\n 'latest_read_message_sort_key',\n 'preview_avatar_urls',\n 'custom_avatar_type',\n 'custom_avatar_key',\n 'custom_avatar_color',\n 'custom_avatar_image_url',\n 'direct_message',\n 'disabled',\n 'disabled_reason',\n 'disabled_message',\n 'member_ability',\n 'muted',\n 'replies_disabled',\n 'title',\n 'unread_count',\n 'unread_reaction',\n 'updated_at',\n ],\n AnalyticsMetadata: ['metadata'],\n MemberAbility: [\n 'can_update',\n 'can_delete',\n 'leader',\n 'can_reply',\n 'can_delete_non_authored_messages',\n 'can_message_available_members',\n 'can_archive',\n 'can_unarchive',\n ],\n ConversationMembership: [\n 'last_read_message_sort_key',\n 'notification_level',\n 'notification_level_description',\n 'notification_level_options',\n 'muted',\n ],\n ConversationBadge: ['app_name', 'pco_resource_type', 'text'],\n Group: ['type', 'id', 'links', 'name', 'source_app_name', 'source_type'],\n },\n include: [\n 'badges',\n 'conversation_membership',\n 'member_ability',\n 'groups',\n 'analytics_metadata',\n ],\n },\n})\n\nexport const useConversation = (\n { conversation_id }: { conversation_id: number },\n options?: SuspenseGetQueryOptions<ConversationResource>\n) => {\n const args = getConversationRequestArgs({ conversation_id })\n\n return useSuspenseGet<ConversationResource>(args, options)\n}\n\nexport const useConversationMute = ({ conversation_id }: { conversation_id: number }) => {\n const apiClient = useApiClient()\n const queryClient = useQueryClient()\n const requestArgs = getConversationRequestArgs({ conversation_id })\n const queryKey = getRequestQueryKey(requestArgs)\n const { data: conversation } = useConversation({ conversation_id })\n const [value, setValue] = useState<boolean>(conversation.muted)\n\n const { mutate: setMuted, ...mutation } = useMutation({\n onMutate: async (muted: boolean) => {\n return queryClient.setQueryData<ApiResource<ConversationResource>>(queryKey, prev => {\n if (!prev?.data) return prev\n setValue(muted)\n prev.data.muted = muted\n if (prev.data.conversationMembership) {\n prev.data.conversationMembership.muted = muted\n }\n\n return prev\n })\n },\n mutationKey: ['muteConversation'],\n mutationFn: async (muted: boolean) => {\n const action = muted ? 'mute' : 'unmute'\n\n return apiClient.chat.post<ApiResource<ConversationResource>>({\n url: `/me/conversations/${conversation_id}/${action}`,\n data: { data: { type: '', attributes: {} }, fields: { Conversation: 'muted' } },\n })\n },\n onSuccess: (response: ApiResource<ConversationResource>) => {\n queryClient.invalidateQueries({ queryKey: ['/me/conversations'] })\n queryClient.setQueryData<ApiResource<ConversationResource>>(queryKey, prev => {\n if (!prev?.data) return prev\n\n // Posting to the mute action endpoint can't return all the fields\n // so we need to set only the fields we require\n prev.data.muted = response.data.muted\n if (prev.data.conversationMembership) {\n prev.data.conversationMembership.muted = response.data.muted\n }\n setValue(response.data.muted)\n\n return prev\n })\n },\n })\n\n return { muted: value, setMuted, ...mutation }\n}\n\nexport const useConversationUpdate = ({ conversation_id }: { conversation_id: number }) => {\n const apiClient = useApiClient()\n const queryClient = useQueryClient()\n const requestArgs = getConversationRequestArgs({ conversation_id })\n const queryKey = getRequestQueryKey(requestArgs)\n\n return useMutation({\n onMutate: async (update: Partial<ConversationResource>) => {\n queryClient.setQueryData<ApiResource<ConversationResource>>(queryKey, prev => {\n if (prev?.data) {\n prev.data = {\n ...prev.data,\n ...update,\n }\n }\n\n return prev\n })\n },\n mutationKey: ['mutateConversation'],\n mutationFn: async (update: Partial<ConversationResource>) => {\n const postArgs = transformGetToPost(requestArgs).data\n return apiClient.chat.patch<ApiResource<ConversationResource>>({\n url: `/me/conversations/${conversation_id}/`,\n data: { data: { type: '', attributes: update }, ...postArgs },\n })\n },\n onSuccess: response => {\n queryClient.setQueryData<ApiResource<ConversationResource>>(queryKey, () => response)\n },\n })\n}\n\nexport const useConversationDelete = ({ conversation_id }: { conversation_id: number }) => {\n const apiClient = useApiClient()\n const queryClient = useQueryClient()\n const { url } = getConversationsRequestArgs()\n\n return useMutation({\n mutationKey: ['deleteConversation'],\n mutationFn: async () => {\n return apiClient.chat.delete({\n url: `/me/conversations/${conversation_id}`,\n })\n },\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: [url] })\n Haptic.notificationSuccess()\n },\n })\n}\n\nexport const useConversationArchive = ({ conversation_id }: { conversation_id: number }) => {\n const apiClient = useApiClient()\n const queryClient = useQueryClient()\n const conversationQueryKey = getRequestQueryKey(getConversationRequestArgs({ conversation_id }))\n const { url } = getConversationsRequestArgs()\n\n const { mutate: setArchived, ...mutation } = useMutation({\n mutationKey: ['archiveConversation'],\n mutationFn: async (archived: boolean) => {\n const action = archived ? 'archive' : 'unarchive'\n\n return apiClient.chat.post({\n url: `/me/conversations/${conversation_id}/${action}`,\n data: { data: { type: 'Conversation', attributes: {} } },\n })\n },\n onSuccess: () => {\n Haptic.notificationSuccess()\n queryClient.invalidateQueries({ queryKey: [url] })\n return queryClient.invalidateQueries({ queryKey: conversationQueryKey })\n },\n onError: (_error, archived) => {\n Alert.alert(\n 'Oops',\n `Couldn't ${archived ? 'archive' : 'unarchive'} this conversation. Please try again.`\n )\n },\n })\n\n return { setArchived, ...mutation }\n}\n\nexport const useConversationDisableReplies = ({ conversation_id }: { conversation_id: number }) => {\n const apiClient = useApiClient()\n const queryClient = useQueryClient()\n const requestArgs = getConversationRequestArgs({ conversation_id })\n const queryKey = getRequestQueryKey(requestArgs)\n const { data: conversation } = useConversation({ conversation_id })\n const [value, setValue] = useState<boolean>(conversation.repliesDisabled)\n\n const { mutate: setRepliesDisabled, ...mutation } = useMutation({\n onMutate: async (repliesDisabled: boolean) => {\n return queryClient.setQueryData<ApiResource<ConversationResource>>(queryKey, prev => {\n if (!prev?.data) return prev\n setValue(repliesDisabled)\n prev.data.repliesDisabled = repliesDisabled\n\n return prev\n })\n },\n mutationKey: ['disableRepliesConversation'],\n mutationFn: async (repliesDisabled: boolean) => {\n return apiClient.chat.patch<ApiResource<ConversationResource>>({\n url: `/me/conversations/${conversation_id}`,\n data: {\n data: {\n type: 'Conversation',\n attributes: {\n replies_disabled: repliesDisabled,\n },\n },\n },\n })\n },\n onSuccess: (response: ApiResource<ConversationResource>) => {\n queryClient.setQueryData<ApiResource<ConversationResource>>(queryKey, prev => {\n if (!prev?.data) return prev\n\n prev.data.repliesDisabled = response.data.repliesDisabled\n setValue(response.data.repliesDisabled)\n\n return prev\n })\n },\n })\n\n return { repliesDisabled: value, setRepliesDisabled, ...mutation }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"use_conversation.js","names":["useMutation","useQueryClient","useState","Alert","transformGetToPost","Haptic","getConversationsRequestArgs","useApiClient","useCurrentPersonCache","getRequestQueryKey","useSuspenseGet","getConversationRequestArgs","conversation_id","url","data","fields","Conversation","AnalyticsMetadata","MemberAbility","ConversationMembership","ConversationBadge","Group","include","useConversation","t0","options","$","_c","t1","args","useConversationMute","apiClient","queryClient","requestArgs","queryKey","t2","conversation","value","setValue","muted","t3","setQueryData","prev","conversationMembership","t4","Symbol","for","t5","muted_0","action","chat","post","type","attributes","t6","response","invalidateQueries","prev_0","t7","onMutate","mutationKey","mutationFn","onSuccess","t8","mutation","setMuted","mutate","t9","useConversationUpdate","update","update_0","postArgs","patch","useConversationDelete","delete","notificationSuccess","useConversationArchive","currentPersonCache","conversationQueryKey","archived","_response","archived_0","canBrowseArchivedConversations","onError","_temp","setArchived","useConversationDisableReplies","repliesDisabled","repliesDisabled_0","replies_disabled","setRepliesDisabled","_error","archived_1","alert"],"sources":["../../src/hooks/use_conversation.ts"],"sourcesContent":["import { useMutation, useQueryClient } from '@tanstack/react-query'\nimport { useState } from 'react'\nimport { Alert } from 'react-native'\nimport { ApiResource, ConversationResource } from '../types'\nimport { transformGetToPost } from '../utils/client/request_helpers'\nimport { Haptic } from '../utils/native_adapters'\nimport { getConversationsRequestArgs } from '../utils/request/conversation'\nimport { useApiClient } from './use_api_client'\nimport { useCurrentPersonCache } from './use_current_person'\nimport { getRequestQueryKey, SuspenseGetQueryOptions, useSuspenseGet } from './use_suspense_api'\n\nexport const getConversationRequestArgs = ({ conversation_id }: { conversation_id: number }) => ({\n url: `/me/conversations/${conversation_id}`,\n data: {\n fields: {\n Conversation: [\n 'analytics_metadata',\n 'created_at',\n 'badges',\n 'conversation_membership',\n 'conversation_preview',\n 'gender_option',\n 'groups',\n 'last_message_author_id',\n 'last_message_author_name',\n 'last_message_created_at',\n 'last_message_text_preview',\n 'latest_read_message_sort_key',\n 'preview_avatar_urls',\n 'custom_avatar_type',\n 'custom_avatar_key',\n 'custom_avatar_color',\n 'custom_avatar_image_url',\n 'direct_message',\n 'disabled',\n 'disabled_reason',\n 'disabled_message',\n 'member_ability',\n 'muted',\n 'replies_disabled',\n 'title',\n 'unread_count',\n 'unread_reaction',\n 'updated_at',\n ],\n AnalyticsMetadata: ['metadata'],\n MemberAbility: [\n 'can_update',\n 'can_delete',\n 'leader',\n 'can_reply',\n 'can_delete_non_authored_messages',\n 'can_message_available_members',\n 'can_archive',\n 'can_unarchive',\n ],\n ConversationMembership: [\n 'last_read_message_sort_key',\n 'notification_level',\n 'notification_level_description',\n 'notification_level_options',\n 'muted',\n ],\n ConversationBadge: ['app_name', 'pco_resource_type', 'text'],\n Group: ['type', 'id', 'links', 'name', 'source_app_name', 'source_type'],\n },\n include: [\n 'badges',\n 'conversation_membership',\n 'member_ability',\n 'groups',\n 'analytics_metadata',\n ],\n },\n})\n\nexport const useConversation = (\n { conversation_id }: { conversation_id: number },\n options?: SuspenseGetQueryOptions<ConversationResource>\n) => {\n const args = getConversationRequestArgs({ conversation_id })\n\n return useSuspenseGet<ConversationResource>(args, options)\n}\n\nexport const useConversationMute = ({ conversation_id }: { conversation_id: number }) => {\n const apiClient = useApiClient()\n const queryClient = useQueryClient()\n const requestArgs = getConversationRequestArgs({ conversation_id })\n const queryKey = getRequestQueryKey(requestArgs)\n const { data: conversation } = useConversation({ conversation_id })\n const [value, setValue] = useState<boolean>(conversation.muted)\n\n const { mutate: setMuted, ...mutation } = useMutation({\n onMutate: async (muted: boolean) => {\n return queryClient.setQueryData<ApiResource<ConversationResource>>(queryKey, prev => {\n if (!prev?.data) return prev\n setValue(muted)\n prev.data.muted = muted\n if (prev.data.conversationMembership) {\n prev.data.conversationMembership.muted = muted\n }\n\n return prev\n })\n },\n mutationKey: ['muteConversation'],\n mutationFn: async (muted: boolean) => {\n const action = muted ? 'mute' : 'unmute'\n\n return apiClient.chat.post<ApiResource<ConversationResource>>({\n url: `/me/conversations/${conversation_id}/${action}`,\n data: { data: { type: '', attributes: {} }, fields: { Conversation: 'muted' } },\n })\n },\n onSuccess: (response: ApiResource<ConversationResource>) => {\n queryClient.invalidateQueries({ queryKey: ['/me/conversations'] })\n queryClient.setQueryData<ApiResource<ConversationResource>>(queryKey, prev => {\n if (!prev?.data) return prev\n\n // Posting to the mute action endpoint can't return all the fields\n // so we need to set only the fields we require\n prev.data.muted = response.data.muted\n if (prev.data.conversationMembership) {\n prev.data.conversationMembership.muted = response.data.muted\n }\n setValue(response.data.muted)\n\n return prev\n })\n },\n })\n\n return { muted: value, setMuted, ...mutation }\n}\n\nexport const useConversationUpdate = ({ conversation_id }: { conversation_id: number }) => {\n const apiClient = useApiClient()\n const queryClient = useQueryClient()\n const requestArgs = getConversationRequestArgs({ conversation_id })\n const queryKey = getRequestQueryKey(requestArgs)\n\n return useMutation({\n onMutate: async (update: Partial<ConversationResource>) => {\n queryClient.setQueryData<ApiResource<ConversationResource>>(queryKey, prev => {\n if (prev?.data) {\n prev.data = {\n ...prev.data,\n ...update,\n }\n }\n\n return prev\n })\n },\n mutationKey: ['mutateConversation'],\n mutationFn: async (update: Partial<ConversationResource>) => {\n const postArgs = transformGetToPost(requestArgs).data\n return apiClient.chat.patch<ApiResource<ConversationResource>>({\n url: `/me/conversations/${conversation_id}/`,\n data: { data: { type: '', attributes: update }, ...postArgs },\n })\n },\n onSuccess: response => {\n queryClient.setQueryData<ApiResource<ConversationResource>>(queryKey, () => response)\n },\n })\n}\n\nexport const useConversationDelete = ({ conversation_id }: { conversation_id: number }) => {\n const apiClient = useApiClient()\n const queryClient = useQueryClient()\n const { url } = getConversationsRequestArgs()\n\n return useMutation({\n mutationKey: ['deleteConversation'],\n mutationFn: async () => {\n return apiClient.chat.delete({\n url: `/me/conversations/${conversation_id}`,\n })\n },\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: [url] })\n Haptic.notificationSuccess()\n },\n })\n}\n\nexport const useConversationArchive = ({ conversation_id }: { conversation_id: number }) => {\n const apiClient = useApiClient()\n const queryClient = useQueryClient()\n const currentPersonCache = useCurrentPersonCache()\n const conversationQueryKey = getRequestQueryKey(getConversationRequestArgs({ conversation_id }))\n const { url } = getConversationsRequestArgs()\n\n const { mutate: setArchived, ...mutation } = useMutation({\n mutationKey: ['archiveConversation'],\n mutationFn: async (archived: boolean) => {\n const action = archived ? 'archive' : 'unarchive'\n\n return apiClient.chat.post({\n url: `/me/conversations/${conversation_id}/${action}`,\n data: { data: { type: 'Conversation', attributes: {} } },\n })\n },\n onSuccess: (_response, archived) => {\n Haptic.notificationSuccess()\n if (archived) currentPersonCache.update({ canBrowseArchivedConversations: true })\n queryClient.invalidateQueries({ queryKey: [url] })\n return queryClient.invalidateQueries({ queryKey: conversationQueryKey })\n },\n onError: (_error, archived) => {\n Alert.alert(\n 'Oops',\n `Couldn't ${archived ? 'archive' : 'unarchive'} this conversation. Please try again.`\n )\n },\n })\n\n return { setArchived, ...mutation }\n}\n\nexport const useConversationDisableReplies = ({ conversation_id }: { conversation_id: number }) => {\n const apiClient = useApiClient()\n const queryClient = useQueryClient()\n const requestArgs = getConversationRequestArgs({ conversation_id })\n const queryKey = getRequestQueryKey(requestArgs)\n const { data: conversation } = useConversation({ conversation_id })\n const [value, setValue] = useState<boolean>(conversation.repliesDisabled)\n\n const { mutate: setRepliesDisabled, ...mutation } = useMutation({\n onMutate: async (repliesDisabled: boolean) => {\n return queryClient.setQueryData<ApiResource<ConversationResource>>(queryKey, prev => {\n if (!prev?.data) return prev\n setValue(repliesDisabled)\n prev.data.repliesDisabled = repliesDisabled\n\n return prev\n })\n },\n mutationKey: ['disableRepliesConversation'],\n mutationFn: async (repliesDisabled: boolean) => {\n return apiClient.chat.patch<ApiResource<ConversationResource>>({\n url: `/me/conversations/${conversation_id}`,\n data: {\n data: {\n type: 'Conversation',\n attributes: {\n replies_disabled: repliesDisabled,\n },\n },\n },\n })\n },\n onSuccess: (response: ApiResource<ConversationResource>) => {\n queryClient.setQueryData<ApiResource<ConversationResource>>(queryKey, prev => {\n if (!prev?.data) return prev\n\n prev.data.repliesDisabled = response.data.repliesDisabled\n setValue(response.data.repliesDisabled)\n\n return prev\n })\n },\n })\n\n return { repliesDisabled: value, setRepliesDisabled, ...mutation }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"use_current_person.d.ts","sourceRoot":"","sources":["../../src/hooks/use_current_person.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAKhD,eAAO,MAAM,wBAAwB;;;;;;;CAkBpC,CAAA;AAED,eAAO,MAAM,qBAAqB,8CAA+C,CAAA;AAEjF,eAAO,MAAM,gBAAgB,6BAO5B,CAAA;AAED,KAAK,aAAa,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;AAE5D,eAAO,MAAM,qBAAqB;qBAGtB,OAAO,CAAC,qBAAqB,CAAC,kBACvB,aAAa,CAAC,qBAAqB,CAAC;;CActD,CAAA"}
1
+ {"version":3,"file":"use_current_person.d.ts","sourceRoot":"","sources":["../../src/hooks/use_current_person.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAKhD,eAAO,MAAM,wBAAwB;;;;;;;CAmBpC,CAAA;AAED,eAAO,MAAM,qBAAqB,8CAA+C,CAAA;AAEjF,eAAO,MAAM,gBAAgB,6BAO5B,CAAA;AAED,KAAK,aAAa,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;AAE5D,eAAO,MAAM,qBAAqB;qBAGtB,OAAO,CAAC,qBAAqB,CAAC,kBACvB,aAAa,CAAC,qBAAqB,CAAC;;CActD,CAAA"}
@@ -6,7 +6,7 @@ export const currentPersonRequestArgs = {
6
6
  url: '/me',
7
7
  data: {
8
8
  fields: {
9
- Person: ['id', 'name', 'avatar', 'can_chat', 'unread_count', 'pco_chat_enabled', 'age_qualification_status', 'direct_messages_disabled', 'direct_messages_eligible', 'under_18']
9
+ Person: ['id', 'name', 'avatar', 'can_chat', 'unread_count', 'pco_chat_enabled', 'age_qualification_status', 'direct_messages_disabled', 'direct_messages_eligible', 'can_browse_archived_conversations', 'under_18']
10
10
  }
11
11
  }
12
12
  };
@@ -1 +1 @@
1
- {"version":3,"file":"use_current_person.js","names":["useQueryClient","FIVE_MINUTES","THIRTY_MINUTES","getRequestQueryKey","useSuspenseGet","currentPersonRequestArgs","url","data","fields","Person","currentPersonQueryKey","useCurrentPerson","$","_c","t0","Symbol","for","staleTime","gcTime","person","useCurrentPersonCache","queryClient","handleUpdate","update","processRecord","r","u","setQueryData","handleInvalidate","invalidateQueries","queryKey","invalidate"],"sources":["../../src/hooks/use_current_person.ts"],"sourcesContent":["import { useQueryClient } from '@tanstack/react-query'\nimport { CurrentPersonResource } from '../types'\nimport { ApiResource } from '../types/api_primitives'\nimport { FIVE_MINUTES, THIRTY_MINUTES } from '../utils/time'\nimport { getRequestQueryKey, useSuspenseGet } from './use_suspense_api'\n\nexport const currentPersonRequestArgs = {\n url: '/me',\n data: {\n fields: {\n Person: [\n 'id',\n 'name',\n 'avatar',\n 'can_chat',\n 'unread_count',\n 'pco_chat_enabled',\n 'age_qualification_status',\n 'direct_messages_disabled',\n 'direct_messages_eligible',\n 'under_18',\n ],\n },\n },\n}\n\nexport const currentPersonQueryKey = getRequestQueryKey(currentPersonRequestArgs)\n\nexport const useCurrentPerson = () => {\n const { data: person } = useSuspenseGet<CurrentPersonResource>(currentPersonRequestArgs, {\n staleTime: FIVE_MINUTES,\n gcTime: THIRTY_MINUTES,\n })\n\n return person\n}\n\ntype ProcessRecord<T> = (record: T, update: Partial<T>) => T\n\nexport const useCurrentPersonCache = () => {\n const queryClient = useQueryClient()\n const handleUpdate = (\n update: Partial<CurrentPersonResource>,\n processRecord: ProcessRecord<CurrentPersonResource> = (r, u) => ({ ...r, ...u })\n ) => {\n queryClient.setQueryData<ApiResource<CurrentPersonResource>>(currentPersonQueryKey, data => {\n if (!data) return data\n\n return { ...data, data: processRecord(data.data, update) }\n })\n }\n\n const handleInvalidate = () => {\n queryClient.invalidateQueries({ queryKey: currentPersonQueryKey })\n }\n\n return { update: handleUpdate, invalidate: handleInvalidate }\n}\n"],"mappings":";AAAA,SAASA,cAAc,QAAQ,uBAAuB;AAGtD,SAASC,YAAY,EAAEC,cAAc,QAAQ,eAAe;AAC5D,SAASC,kBAAkB,EAAEC,cAAc,QAAQ,oBAAoB;AAEvE,OAAO,MAAMC,wBAAwB,GAAG;EACtCC,GAAG,EAAE,KAAK;EACVC,IAAI,EAAE;IACJC,MAAM,EAAE;MACNC,MAAM,EAAE,CACN,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,UAAU;IAEd;EACF;AACF,CAAC;AAED,OAAO,MAAMC,qBAAqB,GAAGP,kBAAkB,CAACE,wBAAwB,CAAC;AAEjF,OAAO,MAAMM,gBAAgB,GAAGA,CAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAF,CAAA,QAAAG,MAAA,CAAAC,GAAA;IAC2DF,EAAA;MAAAG,SAAA,EAC5EhB,YAAY;MAAAiB,MAAA,EACfhB;IACV,CAAC;IAAAU,CAAA,MAAAE,EAAA;EAAA;IAAAA,EAAA,GAAAF,CAAA;EAAA;EAHD;IAAAL,IAAA,EAAAY;EAAA,IAAyBf,cAAc,CAAwBC,wBAAwB,EAAES,EAGxF,CAAC;EAAA,OAEKK,MAAM;AAAA,CACd;AAID,OAAO,MAAMC,qBAAqB,GAAGA,CAAA,KAAM;EACzC,MAAMC,WAAW,GAAGrB,cAAc,CAAC,CAAC;EACpC,MAAMsB,YAAY,GAAGA,CACnBC,MAAsC,EACtCC,aAAmD,GAAGA,CAACC,CAAC,EAAEC,CAAC,MAAM;IAAE,GAAGD,CAAC;IAAE,GAAGC;EAAE,CAAC,CAAC,KAC7E;IACHL,WAAW,CAACM,YAAY,CAAqCjB,qBAAqB,EAAEH,IAAI,IAAI;MAC1F,IAAI,CAACA,IAAI,EAAE,OAAOA,IAAI;MAEtB,OAAO;QAAE,GAAGA,IAAI;QAAEA,IAAI,EAAEiB,aAAa,CAACjB,IAAI,CAACA,IAAI,EAAEgB,MAAM;MAAE,CAAC;IAC5D,CAAC,CAAC;EACJ,CAAC;EAED,MAAMK,gBAAgB,GAAGA,CAAA,KAAM;IAC7BP,WAAW,CAACQ,iBAAiB,CAAC;MAAEC,QAAQ,EAAEpB;IAAsB,CAAC,CAAC;EACpE,CAAC;EAED,OAAO;IAAEa,MAAM,EAAED,YAAY;IAAES,UAAU,EAAEH;EAAiB,CAAC;AAC/D,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"use_current_person.js","names":["useQueryClient","FIVE_MINUTES","THIRTY_MINUTES","getRequestQueryKey","useSuspenseGet","currentPersonRequestArgs","url","data","fields","Person","currentPersonQueryKey","useCurrentPerson","$","_c","t0","Symbol","for","staleTime","gcTime","person","useCurrentPersonCache","queryClient","handleUpdate","update","processRecord","r","u","setQueryData","handleInvalidate","invalidateQueries","queryKey","invalidate"],"sources":["../../src/hooks/use_current_person.ts"],"sourcesContent":["import { useQueryClient } from '@tanstack/react-query'\nimport { CurrentPersonResource } from '../types'\nimport { ApiResource } from '../types/api_primitives'\nimport { FIVE_MINUTES, THIRTY_MINUTES } from '../utils/time'\nimport { getRequestQueryKey, useSuspenseGet } from './use_suspense_api'\n\nexport const currentPersonRequestArgs = {\n url: '/me',\n data: {\n fields: {\n Person: [\n 'id',\n 'name',\n 'avatar',\n 'can_chat',\n 'unread_count',\n 'pco_chat_enabled',\n 'age_qualification_status',\n 'direct_messages_disabled',\n 'direct_messages_eligible',\n 'can_browse_archived_conversations',\n 'under_18',\n ],\n },\n },\n}\n\nexport const currentPersonQueryKey = getRequestQueryKey(currentPersonRequestArgs)\n\nexport const useCurrentPerson = () => {\n const { data: person } = useSuspenseGet<CurrentPersonResource>(currentPersonRequestArgs, {\n staleTime: FIVE_MINUTES,\n gcTime: THIRTY_MINUTES,\n })\n\n return person\n}\n\ntype ProcessRecord<T> = (record: T, update: Partial<T>) => T\n\nexport const useCurrentPersonCache = () => {\n const queryClient = useQueryClient()\n const handleUpdate = (\n update: Partial<CurrentPersonResource>,\n processRecord: ProcessRecord<CurrentPersonResource> = (r, u) => ({ ...r, ...u })\n ) => {\n queryClient.setQueryData<ApiResource<CurrentPersonResource>>(currentPersonQueryKey, data => {\n if (!data) return data\n\n return { ...data, data: processRecord(data.data, update) }\n })\n }\n\n const handleInvalidate = () => {\n queryClient.invalidateQueries({ queryKey: currentPersonQueryKey })\n }\n\n return { update: handleUpdate, invalidate: handleInvalidate }\n}\n"],"mappings":";AAAA,SAASA,cAAc,QAAQ,uBAAuB;AAGtD,SAASC,YAAY,EAAEC,cAAc,QAAQ,eAAe;AAC5D,SAASC,kBAAkB,EAAEC,cAAc,QAAQ,oBAAoB;AAEvE,OAAO,MAAMC,wBAAwB,GAAG;EACtCC,GAAG,EAAE,KAAK;EACVC,IAAI,EAAE;IACJC,MAAM,EAAE;MACNC,MAAM,EAAE,CACN,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,mCAAmC,EACnC,UAAU;IAEd;EACF;AACF,CAAC;AAED,OAAO,MAAMC,qBAAqB,GAAGP,kBAAkB,CAACE,wBAAwB,CAAC;AAEjF,OAAO,MAAMM,gBAAgB,GAAGA,CAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAF,CAAA,QAAAG,MAAA,CAAAC,GAAA;IAC2DF,EAAA;MAAAG,SAAA,EAC5EhB,YAAY;MAAAiB,MAAA,EACfhB;IACV,CAAC;IAAAU,CAAA,MAAAE,EAAA;EAAA;IAAAA,EAAA,GAAAF,CAAA;EAAA;EAHD;IAAAL,IAAA,EAAAY;EAAA,IAAyBf,cAAc,CAAwBC,wBAAwB,EAAES,EAGxF,CAAC;EAAA,OAEKK,MAAM;AAAA,CACd;AAID,OAAO,MAAMC,qBAAqB,GAAGA,CAAA,KAAM;EACzC,MAAMC,WAAW,GAAGrB,cAAc,CAAC,CAAC;EACpC,MAAMsB,YAAY,GAAGA,CACnBC,MAAsC,EACtCC,aAAmD,GAAGA,CAACC,CAAC,EAAEC,CAAC,MAAM;IAAE,GAAGD,CAAC;IAAE,GAAGC;EAAE,CAAC,CAAC,KAC7E;IACHL,WAAW,CAACM,YAAY,CAAqCjB,qBAAqB,EAAEH,IAAI,IAAI;MAC1F,IAAI,CAACA,IAAI,EAAE,OAAOA,IAAI;MAEtB,OAAO;QAAE,GAAGA,IAAI;QAAEA,IAAI,EAAEiB,aAAa,CAACjB,IAAI,CAACA,IAAI,EAAEgB,MAAM;MAAE,CAAC;IAC5D,CAAC,CAAC;EACJ,CAAC;EAED,MAAMK,gBAAgB,GAAGA,CAAA,KAAM;IAC7BP,WAAW,CAACQ,iBAAiB,CAAC;MAAEC,QAAQ,EAAEpB;IAAsB,CAAC,CAAC;EACpE,CAAC;EAED,OAAO;IAAEa,MAAM,EAAED,YAAY;IAAES,UAAU,EAAEH;EAAiB,CAAC;AAC/D,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"use_jolt.d.ts","sourceRoot":"","sources":["../../src/hooks/use_jolt.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,6BAA6B,CAAA;AACpD,OAAO,EACL,aAAa,EAEd,MAAM,uDAAuD,CAAA;AAC9D,OAAO,EAEL,gBAAgB,EACjB,MAAM,yDAAyD,CAAA;AAMhE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAWnE,eAAO,MAAM,aAAa,QAAO,UAAU,GAAG,SAqG7C,CAAA;AAgBD,eAAO,MAAM,qBAAqB,YAcjC,CAAA;AAED,wBAAgB,cAAc,CAC5B,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,OAAc,GACtB,gBAAgB,GAAG,SAAS,GAAG,IAAI,CAoCrC;AAED,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAA;AAE5C,wBAAgB,YAAY,CAAC,CAAC,SAAS,aAAa,EAClD,OAAO,EAAE,gBAAgB,GAAG,SAAS,GAAG,IAAI,EAC5C,SAAS,EAAE,uBAAuB,EAClC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,QAO5B"}
1
+ {"version":3,"file":"use_jolt.d.ts","sourceRoot":"","sources":["../../src/hooks/use_jolt.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,6BAA6B,CAAA;AACpD,OAAO,EACL,aAAa,EAEd,MAAM,uDAAuD,CAAA;AAC9D,OAAO,EAEL,gBAAgB,EACjB,MAAM,yDAAyD,CAAA;AAMhE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAWnE,eAAO,MAAM,aAAa,QAAO,UAAU,GAAG,SAqG7C,CAAA;AA+CD,eAAO,MAAM,qBAAqB,YAQjC,CAAA;AAED,wBAAgB,cAAc,CAC5B,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,OAAc,GACtB,gBAAgB,GAAG,SAAS,GAAG,IAAI,CAoCrC;AAED,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAA;AAE5C,wBAAgB,YAAY,CAAC,CAAC,SAAS,aAAa,EAClD,OAAO,EAAE,gBAAgB,GAAG,SAAS,GAAG,IAAI,EAC5C,SAAS,EAAE,uBAAuB,EAClC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,QAO5B"}
@@ -193,6 +193,33 @@ const pingSubscribedJoltClients = queryClient => {
193
193
  } catch {}
194
194
  });
195
195
  };
196
+ const foregroundPingListeners = new Map();
197
+ const subscribeToForegroundPing = queryClient => {
198
+ const existing = foregroundPingListeners.get(queryClient);
199
+ if (existing) {
200
+ existing.mounts += 1;
201
+ return;
202
+ }
203
+ let previousState = AppState.currentState;
204
+ const subscription = AppState.addEventListener('change', nextState => {
205
+ if (nextState === 'active' && previousState !== 'active') {
206
+ pingSubscribedJoltClients(queryClient);
207
+ }
208
+ previousState = nextState;
209
+ });
210
+ foregroundPingListeners.set(queryClient, {
211
+ mounts: 1,
212
+ remove: () => subscription.remove()
213
+ });
214
+ };
215
+ const unsubscribeFromForegroundPing = queryClient => {
216
+ const existing = foregroundPingListeners.get(queryClient);
217
+ if (!existing) return;
218
+ existing.mounts -= 1;
219
+ if (existing.mounts > 0) return;
220
+ existing.remove();
221
+ foregroundPingListeners.delete(queryClient);
222
+ };
196
223
  export const useJoltForegroundPing = () => {
197
224
  const $ = _c(3);
198
225
  const queryClient = useQueryClient();
@@ -200,14 +227,8 @@ export const useJoltForegroundPing = () => {
200
227
  let t1;
201
228
  if ($[0] !== queryClient) {
202
229
  t0 = () => {
203
- let previousState = AppState.currentState;
204
- const subscription = AppState.addEventListener("change", nextState => {
205
- if (nextState === "active" && previousState !== "active") {
206
- pingSubscribedJoltClients(queryClient);
207
- }
208
- previousState = nextState;
209
- });
210
- return () => subscription.remove();
230
+ subscribeToForegroundPing(queryClient);
231
+ return () => unsubscribeFromForegroundPing(queryClient);
211
232
  };
212
233
  t1 = [queryClient];
213
234
  $[0] = queryClient;