be-components 5.1.8 → 5.1.9

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 (219) hide show
  1. package/lib/commonjs/Components/Icons.js +28 -1
  2. package/lib/commonjs/Components/Icons.js.map +1 -1
  3. package/lib/commonjs/Components/Themed.js +13 -1
  4. package/lib/commonjs/Components/Themed.js.map +1 -1
  5. package/lib/commonjs/SocialComponents/FormattedTextInput/components/TagSelector.js +47 -24
  6. package/lib/commonjs/SocialComponents/FormattedTextInput/components/TagSelector.js.map +1 -1
  7. package/lib/commonjs/SocialComponents/FormattedTextInput/index.js +41 -8
  8. package/lib/commonjs/SocialComponents/FormattedTextInput/index.js.map +1 -1
  9. package/lib/commonjs/SocialComponents/GifSelector/NativeSelector.js +14 -0
  10. package/lib/commonjs/SocialComponents/GifSelector/NativeSelector.js.map +1 -0
  11. package/lib/commonjs/SocialComponents/GifSelector/WebSelector.js +123 -0
  12. package/lib/commonjs/SocialComponents/GifSelector/WebSelector.js.map +1 -0
  13. package/lib/commonjs/SocialComponents/GroupChat/components/GroupMessageCard.js +89 -0
  14. package/lib/commonjs/SocialComponents/GroupChat/components/GroupMessageCard.js.map +1 -0
  15. package/lib/commonjs/SocialComponents/GroupChat/index.js +426 -0
  16. package/lib/commonjs/SocialComponents/GroupChat/index.js.map +1 -0
  17. package/lib/commonjs/SocialComponents/ImageRenderer.js +55 -0
  18. package/lib/commonjs/SocialComponents/ImageRenderer.js.map +1 -0
  19. package/lib/commonjs/SocialComponents/InputBar/components/ActionSelector.js +219 -0
  20. package/lib/commonjs/SocialComponents/InputBar/components/ActionSelector.js.map +1 -0
  21. package/lib/commonjs/SocialComponents/InputBar/index.js +59 -5
  22. package/lib/commonjs/SocialComponents/InputBar/index.js.map +1 -1
  23. package/lib/commonjs/SocialComponents/PostCard/components/ArticleCard.js +2 -0
  24. package/lib/commonjs/SocialComponents/PostCard/components/ArticleCard.js.map +1 -0
  25. package/lib/commonjs/SocialComponents/PostCard/components/ImageList.js +37 -25
  26. package/lib/commonjs/SocialComponents/PostCard/components/ImageList.js.map +1 -1
  27. package/lib/commonjs/SocialComponents/PostCard/index.js +148 -70
  28. package/lib/commonjs/SocialComponents/PostCard/index.js.map +1 -1
  29. package/lib/commonjs/SocialComponents/Poster/index.js +325 -0
  30. package/lib/commonjs/SocialComponents/Poster/index.js.map +1 -0
  31. package/lib/commonjs/SocialComponents/SocialOrderCard.js +8 -3
  32. package/lib/commonjs/SocialComponents/SocialOrderCard.js.map +1 -1
  33. package/lib/commonjs/SocialComponents/SocialOrdersList.js +20 -2
  34. package/lib/commonjs/SocialComponents/SocialOrdersList.js.map +1 -1
  35. package/lib/commonjs/SocialComponents/UrlPreviewCard.js +115 -0
  36. package/lib/commonjs/SocialComponents/UrlPreviewCard.js.map +1 -0
  37. package/lib/commonjs/SocialComponents/api/index.js +383 -0
  38. package/lib/commonjs/SocialComponents/api/index.js.map +1 -1
  39. package/lib/commonjs/SocialComponents/index.js +14 -0
  40. package/lib/commonjs/SocialComponents/index.js.map +1 -1
  41. package/lib/module/Components/Icons.js +28 -1
  42. package/lib/module/Components/Icons.js.map +1 -1
  43. package/lib/module/Components/Themed.js +13 -1
  44. package/lib/module/Components/Themed.js.map +1 -1
  45. package/lib/module/SocialComponents/FormattedTextInput/components/TagSelector.js +48 -25
  46. package/lib/module/SocialComponents/FormattedTextInput/components/TagSelector.js.map +1 -1
  47. package/lib/module/SocialComponents/FormattedTextInput/index.js +41 -8
  48. package/lib/module/SocialComponents/FormattedTextInput/index.js.map +1 -1
  49. package/lib/module/SocialComponents/GifSelector/NativeSelector.js +7 -0
  50. package/lib/module/SocialComponents/GifSelector/NativeSelector.js.map +1 -0
  51. package/lib/module/SocialComponents/GifSelector/WebSelector.js +125 -0
  52. package/lib/module/SocialComponents/GifSelector/WebSelector.js.map +1 -0
  53. package/lib/module/SocialComponents/GroupChat/components/GroupMessageCard.js +82 -0
  54. package/lib/module/SocialComponents/GroupChat/components/GroupMessageCard.js.map +1 -0
  55. package/lib/module/SocialComponents/GroupChat/index.js +418 -0
  56. package/lib/module/SocialComponents/GroupChat/index.js.map +1 -0
  57. package/lib/module/SocialComponents/ImageRenderer.js +48 -0
  58. package/lib/module/SocialComponents/ImageRenderer.js.map +1 -0
  59. package/lib/module/SocialComponents/InputBar/components/ActionSelector.js +210 -0
  60. package/lib/module/SocialComponents/InputBar/components/ActionSelector.js.map +1 -0
  61. package/lib/module/SocialComponents/InputBar/index.js +58 -6
  62. package/lib/module/SocialComponents/InputBar/index.js.map +1 -1
  63. package/lib/module/SocialComponents/PostCard/components/ArticleCard.js +2 -0
  64. package/lib/module/SocialComponents/PostCard/components/ArticleCard.js.map +1 -0
  65. package/lib/module/SocialComponents/PostCard/components/ImageList.js +37 -25
  66. package/lib/module/SocialComponents/PostCard/components/ImageList.js.map +1 -1
  67. package/lib/module/SocialComponents/PostCard/index.js +148 -70
  68. package/lib/module/SocialComponents/PostCard/index.js.map +1 -1
  69. package/lib/module/SocialComponents/Poster/index.js +316 -0
  70. package/lib/module/SocialComponents/Poster/index.js.map +1 -0
  71. package/lib/module/SocialComponents/SocialOrderCard.js +8 -3
  72. package/lib/module/SocialComponents/SocialOrderCard.js.map +1 -1
  73. package/lib/module/SocialComponents/SocialOrdersList.js +21 -3
  74. package/lib/module/SocialComponents/SocialOrdersList.js.map +1 -1
  75. package/lib/module/SocialComponents/UrlPreviewCard.js +106 -0
  76. package/lib/module/SocialComponents/UrlPreviewCard.js.map +1 -0
  77. package/lib/module/SocialComponents/api/index.js +383 -0
  78. package/lib/module/SocialComponents/api/index.js.map +1 -1
  79. package/lib/module/SocialComponents/index.js +3 -1
  80. package/lib/module/SocialComponents/index.js.map +1 -1
  81. package/lib/typescript/lib/commonjs/Components/Icons.d.ts +5 -0
  82. package/lib/typescript/lib/commonjs/Components/Icons.d.ts.map +1 -1
  83. package/lib/typescript/lib/commonjs/Components/Themed.d.ts.map +1 -1
  84. package/lib/typescript/lib/commonjs/SocialComponents/FormattedTextInput/components/TagSelector.d.ts +2 -1
  85. package/lib/typescript/lib/commonjs/SocialComponents/FormattedTextInput/components/TagSelector.d.ts.map +1 -1
  86. package/lib/typescript/lib/commonjs/SocialComponents/FormattedTextInput/index.d.ts +6 -1
  87. package/lib/typescript/lib/commonjs/SocialComponents/FormattedTextInput/index.d.ts.map +1 -1
  88. package/lib/typescript/lib/commonjs/SocialComponents/GifSelector/NativeSelector.d.ts +4 -0
  89. package/lib/typescript/lib/commonjs/SocialComponents/GifSelector/NativeSelector.d.ts.map +1 -0
  90. package/lib/typescript/lib/commonjs/SocialComponents/GifSelector/WebSelector.d.ts +4 -0
  91. package/lib/typescript/lib/commonjs/SocialComponents/GifSelector/WebSelector.d.ts.map +1 -0
  92. package/lib/typescript/lib/commonjs/SocialComponents/GroupChat/components/GroupMessageCard.d.ts +11 -0
  93. package/lib/typescript/lib/commonjs/SocialComponents/GroupChat/components/GroupMessageCard.d.ts.map +1 -0
  94. package/lib/typescript/lib/commonjs/SocialComponents/GroupChat/index.d.ts +14 -0
  95. package/lib/typescript/lib/commonjs/SocialComponents/GroupChat/index.d.ts.map +1 -0
  96. package/lib/typescript/lib/commonjs/SocialComponents/ImageRenderer.d.ts +11 -0
  97. package/lib/typescript/lib/commonjs/SocialComponents/ImageRenderer.d.ts.map +1 -0
  98. package/lib/typescript/lib/commonjs/SocialComponents/InputBar/components/ActionSelector.d.ts +9 -0
  99. package/lib/typescript/lib/commonjs/SocialComponents/InputBar/components/ActionSelector.d.ts.map +1 -0
  100. package/lib/typescript/lib/commonjs/SocialComponents/InputBar/index.d.ts +3 -1
  101. package/lib/typescript/lib/commonjs/SocialComponents/InputBar/index.d.ts.map +1 -1
  102. package/lib/typescript/lib/commonjs/SocialComponents/PostCard/components/ArticleCard.d.ts +1 -0
  103. package/lib/typescript/lib/commonjs/SocialComponents/PostCard/components/ArticleCard.d.ts.map +1 -0
  104. package/lib/typescript/lib/commonjs/SocialComponents/PostCard/components/ImageList.d.ts +1 -2
  105. package/lib/typescript/lib/commonjs/SocialComponents/PostCard/components/ImageList.d.ts.map +1 -1
  106. package/lib/typescript/lib/commonjs/SocialComponents/PostCard/index.d.ts +4 -1
  107. package/lib/typescript/lib/commonjs/SocialComponents/PostCard/index.d.ts.map +1 -1
  108. package/lib/typescript/lib/commonjs/SocialComponents/Poster/index.d.ts +9 -0
  109. package/lib/typescript/lib/commonjs/SocialComponents/Poster/index.d.ts.map +1 -0
  110. package/lib/typescript/lib/commonjs/SocialComponents/SocialOrderCard.d.ts +2 -1
  111. package/lib/typescript/lib/commonjs/SocialComponents/SocialOrderCard.d.ts.map +1 -1
  112. package/lib/typescript/lib/commonjs/SocialComponents/SocialOrdersList.d.ts +2 -1
  113. package/lib/typescript/lib/commonjs/SocialComponents/SocialOrdersList.d.ts.map +1 -1
  114. package/lib/typescript/lib/commonjs/SocialComponents/UrlPreviewCard.d.ts +9 -0
  115. package/lib/typescript/lib/commonjs/SocialComponents/UrlPreviewCard.d.ts.map +1 -0
  116. package/lib/typescript/lib/commonjs/SocialComponents/api/index.d.ts +89 -0
  117. package/lib/typescript/lib/commonjs/SocialComponents/api/index.d.ts.map +1 -1
  118. package/lib/typescript/lib/commonjs/SocialComponents/index.d.ts +2 -0
  119. package/lib/typescript/lib/module/Components/Icons.d.ts +5 -0
  120. package/lib/typescript/lib/module/Components/Icons.d.ts.map +1 -1
  121. package/lib/typescript/lib/module/Components/Themed.d.ts.map +1 -1
  122. package/lib/typescript/lib/module/SocialComponents/FormattedTextInput/components/TagSelector.d.ts +3 -2
  123. package/lib/typescript/lib/module/SocialComponents/FormattedTextInput/components/TagSelector.d.ts.map +1 -1
  124. package/lib/typescript/lib/module/SocialComponents/FormattedTextInput/index.d.ts +6 -1
  125. package/lib/typescript/lib/module/SocialComponents/FormattedTextInput/index.d.ts.map +1 -1
  126. package/lib/typescript/lib/module/SocialComponents/GifSelector/NativeSelector.d.ts +4 -0
  127. package/lib/typescript/lib/module/SocialComponents/GifSelector/NativeSelector.d.ts.map +1 -0
  128. package/lib/typescript/lib/module/SocialComponents/GifSelector/WebSelector.d.ts +13 -0
  129. package/lib/typescript/lib/module/SocialComponents/GifSelector/WebSelector.d.ts.map +1 -0
  130. package/lib/typescript/lib/module/SocialComponents/GroupChat/components/GroupMessageCard.d.ts +11 -0
  131. package/lib/typescript/lib/module/SocialComponents/GroupChat/components/GroupMessageCard.d.ts.map +1 -0
  132. package/lib/typescript/lib/module/SocialComponents/GroupChat/index.d.ts +14 -0
  133. package/lib/typescript/lib/module/SocialComponents/GroupChat/index.d.ts.map +1 -0
  134. package/lib/typescript/lib/module/SocialComponents/ImageRenderer.d.ts +11 -0
  135. package/lib/typescript/lib/module/SocialComponents/ImageRenderer.d.ts.map +1 -0
  136. package/lib/typescript/lib/module/SocialComponents/InputBar/components/ActionSelector.d.ts +10 -0
  137. package/lib/typescript/lib/module/SocialComponents/InputBar/components/ActionSelector.d.ts.map +1 -0
  138. package/lib/typescript/lib/module/SocialComponents/InputBar/index.d.ts +3 -1
  139. package/lib/typescript/lib/module/SocialComponents/InputBar/index.d.ts.map +1 -1
  140. package/lib/typescript/lib/module/SocialComponents/PostCard/components/ArticleCard.d.ts +1 -0
  141. package/lib/typescript/lib/module/SocialComponents/PostCard/components/ArticleCard.d.ts.map +1 -0
  142. package/lib/typescript/lib/module/SocialComponents/PostCard/components/ImageList.d.ts +1 -2
  143. package/lib/typescript/lib/module/SocialComponents/PostCard/components/ImageList.d.ts.map +1 -1
  144. package/lib/typescript/lib/module/SocialComponents/PostCard/index.d.ts +4 -1
  145. package/lib/typescript/lib/module/SocialComponents/PostCard/index.d.ts.map +1 -1
  146. package/lib/typescript/lib/module/SocialComponents/Poster/index.d.ts +11 -0
  147. package/lib/typescript/lib/module/SocialComponents/Poster/index.d.ts.map +1 -0
  148. package/lib/typescript/lib/module/SocialComponents/SocialOrderCard.d.ts +3 -2
  149. package/lib/typescript/lib/module/SocialComponents/SocialOrderCard.d.ts.map +1 -1
  150. package/lib/typescript/lib/module/SocialComponents/SocialOrdersList.d.ts +2 -1
  151. package/lib/typescript/lib/module/SocialComponents/SocialOrdersList.d.ts.map +1 -1
  152. package/lib/typescript/lib/module/SocialComponents/UrlPreviewCard.d.ts +9 -0
  153. package/lib/typescript/lib/module/SocialComponents/UrlPreviewCard.d.ts.map +1 -0
  154. package/lib/typescript/lib/module/SocialComponents/api/index.d.ts +89 -0
  155. package/lib/typescript/lib/module/SocialComponents/api/index.d.ts.map +1 -1
  156. package/lib/typescript/lib/module/SocialComponents/index.d.ts +3 -1
  157. package/lib/typescript/lib/module/SocialComponents/index.d.ts.map +1 -1
  158. package/lib/typescript/src/Components/Icons.d.ts +1 -0
  159. package/lib/typescript/src/Components/Icons.d.ts.map +1 -1
  160. package/lib/typescript/src/Components/Themed.d.ts +1 -0
  161. package/lib/typescript/src/Components/Themed.d.ts.map +1 -1
  162. package/lib/typescript/src/SocialComponents/FormattedTextInput/components/TagSelector.d.ts +2 -1
  163. package/lib/typescript/src/SocialComponents/FormattedTextInput/components/TagSelector.d.ts.map +1 -1
  164. package/lib/typescript/src/SocialComponents/FormattedTextInput/index.d.ts +6 -1
  165. package/lib/typescript/src/SocialComponents/FormattedTextInput/index.d.ts.map +1 -1
  166. package/lib/typescript/src/SocialComponents/GifSelector/NativeSelector.d.ts +4 -0
  167. package/lib/typescript/src/SocialComponents/GifSelector/NativeSelector.d.ts.map +1 -0
  168. package/lib/typescript/src/SocialComponents/GifSelector/WebSelector.d.ts +11 -0
  169. package/lib/typescript/src/SocialComponents/GifSelector/WebSelector.d.ts.map +1 -0
  170. package/lib/typescript/src/SocialComponents/GroupChat/components/GroupMessageCard.d.ts +18 -0
  171. package/lib/typescript/src/SocialComponents/GroupChat/components/GroupMessageCard.d.ts.map +1 -0
  172. package/lib/typescript/src/SocialComponents/GroupChat/index.d.ts +25 -0
  173. package/lib/typescript/src/SocialComponents/GroupChat/index.d.ts.map +1 -0
  174. package/lib/typescript/src/SocialComponents/ImageRenderer.d.ts +21 -0
  175. package/lib/typescript/src/SocialComponents/ImageRenderer.d.ts.map +1 -0
  176. package/lib/typescript/src/SocialComponents/InputBar/components/ActionSelector.d.ts +16 -0
  177. package/lib/typescript/src/SocialComponents/InputBar/components/ActionSelector.d.ts.map +1 -0
  178. package/lib/typescript/src/SocialComponents/InputBar/index.d.ts +10 -1
  179. package/lib/typescript/src/SocialComponents/InputBar/index.d.ts.map +1 -1
  180. package/lib/typescript/src/SocialComponents/PostCard/components/ArticleCard.d.ts +1 -0
  181. package/lib/typescript/src/SocialComponents/PostCard/components/ArticleCard.d.ts.map +1 -0
  182. package/lib/typescript/src/SocialComponents/PostCard/components/ImageList.d.ts +1 -1
  183. package/lib/typescript/src/SocialComponents/PostCard/components/ImageList.d.ts.map +1 -1
  184. package/lib/typescript/src/SocialComponents/PostCard/index.d.ts +4 -2
  185. package/lib/typescript/src/SocialComponents/PostCard/index.d.ts.map +1 -1
  186. package/lib/typescript/src/SocialComponents/Poster/index.d.ts +16 -0
  187. package/lib/typescript/src/SocialComponents/Poster/index.d.ts.map +1 -0
  188. package/lib/typescript/src/SocialComponents/SocialOrderCard.d.ts +2 -1
  189. package/lib/typescript/src/SocialComponents/SocialOrderCard.d.ts.map +1 -1
  190. package/lib/typescript/src/SocialComponents/SocialOrdersList.d.ts +2 -1
  191. package/lib/typescript/src/SocialComponents/SocialOrdersList.d.ts.map +1 -1
  192. package/lib/typescript/src/SocialComponents/UrlPreviewCard.d.ts +10 -0
  193. package/lib/typescript/src/SocialComponents/UrlPreviewCard.d.ts.map +1 -0
  194. package/lib/typescript/src/SocialComponents/api/index.d.ts +37 -1
  195. package/lib/typescript/src/SocialComponents/api/index.d.ts.map +1 -1
  196. package/lib/typescript/src/SocialComponents/index.d.ts +3 -1
  197. package/lib/typescript/src/SocialComponents/index.d.ts.map +1 -1
  198. package/package.json +5 -1
  199. package/src/Components/Icons.tsx +18 -1
  200. package/src/Components/Themed.tsx +11 -1
  201. package/src/SocialComponents/FormattedTextInput/components/TagSelector.tsx +24 -17
  202. package/src/SocialComponents/FormattedTextInput/index.tsx +32 -7
  203. package/src/SocialComponents/GifSelector/NativeSelector.tsx +13 -0
  204. package/src/SocialComponents/GifSelector/WebSelector.tsx +91 -0
  205. package/src/SocialComponents/GroupChat/components/GroupMessageCard.tsx +84 -0
  206. package/src/SocialComponents/GroupChat/index.tsx +333 -0
  207. package/src/SocialComponents/ImageRenderer.tsx +42 -0
  208. package/src/SocialComponents/InputBar/components/ActionSelector.tsx +164 -0
  209. package/src/SocialComponents/InputBar/index.tsx +40 -6
  210. package/src/SocialComponents/PostCard/components/ArticleCard.tsx +2 -0
  211. package/src/SocialComponents/PostCard/components/ImageList.tsx +28 -21
  212. package/src/SocialComponents/PostCard/index.tsx +122 -56
  213. package/src/SocialComponents/Poster/index.tsx +264 -0
  214. package/src/SocialComponents/SocialOrderCard.tsx +4 -6
  215. package/src/SocialComponents/SocialOrdersList.tsx +14 -8
  216. package/src/SocialComponents/UrlPreviewCard.tsx +75 -0
  217. package/src/SocialComponents/api/index.ts +345 -3
  218. package/src/SocialComponents/index.tsx +4 -0
  219. package/src/types.d.ts +58 -0
@@ -0,0 +1,418 @@
1
+ import React from 'react';
2
+ import moment from "moment-mini";
3
+ import { useEffect, useMemo, useRef, useState } from "react";
4
+ import { ActivityIndicator, FlatList, Image } from "react-native";
5
+ import { useColors } from "../../constants/useColors";
6
+ import { SocialComponentApi, SocialComponentHelpers } from "../api";
7
+ import { Text, View } from "../../Components/Themed";
8
+ import GroupMessageCard from './components/GroupMessageCard';
9
+ import InputBar from '../InputBar';
10
+ import FormattedTextInput from '../FormattedTextInput';
11
+ import SocketManager from '../../Socket';
12
+ const GroupChat = ({
13
+ my_id,
14
+ player_id,
15
+ width,
16
+ group_id,
17
+ access_token,
18
+ distinct_id,
19
+ onFocusPosition,
20
+ onSelectImage,
21
+ onSelectTag
22
+ }) => {
23
+ const Colors = useColors();
24
+ const [chat_size, setChatSize] = useState({
25
+ height: 0,
26
+ width: 0
27
+ });
28
+ const [show_input_bar, setShowInputBar] = useState(false);
29
+ const [needs_reload, setNeedsReload] = useState(false);
30
+ const [message_loading, setMessageLoading] = useState(false);
31
+ const [socket_message, setSocketMessage] = useState(undefined);
32
+ const [my_data, setMyData] = useState({});
33
+ const {
34
+ me
35
+ } = my_data;
36
+ const [screen_data, setData] = useState({
37
+ loading: false,
38
+ players: [],
39
+ group_players: []
40
+ });
41
+ const {
42
+ loading,
43
+ players,
44
+ group
45
+ } = screen_data;
46
+ const [message_data, setMessageData] = useState({
47
+ messages_loading: false,
48
+ messages: []
49
+ });
50
+ const {
51
+ messages
52
+ } = message_data;
53
+ const chat_ref = useRef(null);
54
+ const unique_dates = useMemo(() => [...new Set(messages.map(m => moment(m.create_datetime).format('MMM DD YYYY')))], [messages.length, socket_message]);
55
+ useEffect(() => {
56
+ SocialComponentApi.setEnvironment();
57
+ if (group_id) {
58
+ getGroupFromServer(group_id);
59
+ return;
60
+ }
61
+ if (player_id) {
62
+ getChatFromServer(player_id);
63
+ return;
64
+ }
65
+ }, [group_id, player_id]);
66
+ useEffect(() => {
67
+ if (!my_id) {
68
+ return;
69
+ }
70
+ getMyData();
71
+ }, [my_id]);
72
+ const getMyData = async () => {
73
+ const player = await SocialComponentApi.getMyDetails();
74
+ setMyData({
75
+ me: player
76
+ });
77
+ };
78
+ useEffect(() => {
79
+ if (!socket_message) {
80
+ return;
81
+ }
82
+ setMessageData({
83
+ ...message_data,
84
+ messages: messages.filter(m => m.group_message_id != socket_message.group_message_id).concat(socket_message)
85
+ });
86
+ }, [socket_message]);
87
+ const chat_player = group?.type == 'direct' ? players.find(p => p.player_id == player_id) : undefined;
88
+ const getChatFromServer = async id => {
89
+ setData({
90
+ ...screen_data,
91
+ loading: true
92
+ });
93
+ if (!my_id) {
94
+ return;
95
+ }
96
+ setMessageData({
97
+ ...message_data,
98
+ messages_loading: true
99
+ });
100
+ const group_response = await SocialComponentApi.getChat(id);
101
+ if (!group_response) {
102
+ return setData({
103
+ ...screen_data,
104
+ loading: false
105
+ });
106
+ }
107
+ let player_ids = [];
108
+ if (player_id) {
109
+ player_ids.push(player_id);
110
+ }
111
+ if (my_id) {
112
+ player_ids.push(my_id);
113
+ }
114
+ const players = await SocialComponentApi.getPlayersByIds(player_ids);
115
+ let group_messages_with_tags = await SocialComponentHelpers.addTagsToMessages(group_response.group_messages);
116
+ setData({
117
+ ...screen_data,
118
+ players: players,
119
+ group: group_response.group,
120
+ group_players: group_response.group_players,
121
+ loading: false
122
+ });
123
+ setMessageData({
124
+ ...message_data,
125
+ messages_loading: false,
126
+ messages: group_messages_with_tags
127
+ });
128
+ };
129
+ const getGroupFromServer = async id => {
130
+ setData({
131
+ ...screen_data,
132
+ loading: true
133
+ });
134
+ setMessageData({
135
+ ...message_data,
136
+ messages_loading: true
137
+ });
138
+ const group_response = await SocialComponentApi.getGroupById(id);
139
+ if (!group_response) {
140
+ return setData({
141
+ ...screen_data,
142
+ loading: false
143
+ });
144
+ }
145
+ const players = await SocialComponentApi.getPlayersByIds(group_response.group_messages.map(p => p.player_id));
146
+ let group_messages_with_tags = await SocialComponentHelpers.addTagsToMessages(group_response.group_messages);
147
+ setData({
148
+ ...screen_data,
149
+ players: players,
150
+ group: group_response.group,
151
+ group_players: group_response.group_players,
152
+ loading: false
153
+ });
154
+ setMessageData({
155
+ ...message_data,
156
+ messages_loading: false,
157
+ messages: group_messages_with_tags
158
+ });
159
+ };
160
+
161
+ //const message_valid = message_text != '' ? true : false
162
+
163
+ const handleSendImage = async image => {
164
+ if (!group || message_loading) {
165
+ return;
166
+ }
167
+ setMessageLoading(true);
168
+ const group_message = SocialComponentHelpers.getEmptyMessage();
169
+ const gm = await SocialComponentApi.sendChat({
170
+ ...group_message,
171
+ formatted_text: '',
172
+ tags: [],
173
+ message_images: [image],
174
+ group_id: group.group_id,
175
+ message: ''
176
+ });
177
+ if (!gm) {
178
+ setMessageLoading(false);
179
+ return;
180
+ }
181
+ setMessageData({
182
+ ...message_data,
183
+ messages: messages.filter(m => m.group_message_id != gm.group_message_id).concat(gm)
184
+ });
185
+ setMessageLoading(false);
186
+ };
187
+ const handleSendMessage = async (data, tags) => {
188
+ if (!group || message_loading) {
189
+ return;
190
+ }
191
+ setMessageLoading(true);
192
+
193
+ //Find urls!
194
+ const url = SocialComponentHelpers.getUrlsFromString(data.text);
195
+ let message_urls = [];
196
+ if (url) {
197
+ message_urls.push(url);
198
+ }
199
+ const group_message = SocialComponentHelpers.getEmptyMessage();
200
+ const gm = await SocialComponentApi.sendChat({
201
+ ...group_message,
202
+ formatted_text: data.formatted_text,
203
+ tags: tags.map(t => {
204
+ return {
205
+ ...t,
206
+ data: undefined
207
+ };
208
+ }),
209
+ //Drop the data!
210
+ group_id: group.group_id,
211
+ message_urls: message_urls,
212
+ message: data.text
213
+ });
214
+ if (!gm) {
215
+ setMessageLoading(false);
216
+ return;
217
+ }
218
+ setMessageData({
219
+ ...message_data,
220
+ messages: messages.filter(m => m.group_message_id != gm.group_message_id).concat(gm)
221
+ });
222
+ setMessageLoading(false);
223
+ };
224
+ const renderMessages = data => {
225
+ const player = players.find(p => p.player_id == data.item.player_id);
226
+ const mine = player?.player_id == me?.player_id ? true : false;
227
+ return /*#__PURE__*/React.createElement(View, {
228
+ style: {
229
+ margin: 5
230
+ }
231
+ }, /*#__PURE__*/React.createElement(GroupMessageCard, {
232
+ player: player,
233
+ me: me,
234
+ width: chat_size.width,
235
+ mine: mine,
236
+ onSelectImage: onSelectImage,
237
+ group_message: data.item,
238
+ onSelectTag: onSelectTag
239
+ }));
240
+ };
241
+ const renderDates = data => {
242
+ const date_messages = messages.filter(m => moment(m.create_datetime).format('MMM DD YYYY') == data.item);
243
+ return /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(View, {
244
+ style: {
245
+ padding: 10
246
+ }
247
+ }, /*#__PURE__*/React.createElement(Text, {
248
+ size: 16,
249
+ theme: "light",
250
+ textAlign: "center"
251
+ }, data.item)), /*#__PURE__*/React.createElement(FlatList, {
252
+ key: 'date_messages',
253
+ keyExtractor: item => item.group_message_id.toString(),
254
+ data: date_messages.sort((a, b) => moment(a.create_datetime).unix() - moment(b.create_datetime).unix()),
255
+ renderItem: renderMessages
256
+ }));
257
+ };
258
+ return /*#__PURE__*/React.createElement(View, {
259
+ style: {
260
+ flex: 1
261
+ },
262
+ onLayout: ev => {
263
+ const {
264
+ height,
265
+ width
266
+ } = ev.nativeEvent.layout;
267
+ setChatSize({
268
+ height,
269
+ width
270
+ });
271
+ }
272
+ }, group?.type == 'direct' && chat_player ? /*#__PURE__*/React.createElement(View, {
273
+ type: "header",
274
+ style: {
275
+ flexDirection: 'row',
276
+ alignItems: 'center',
277
+ padding: 10
278
+ }
279
+ }, /*#__PURE__*/React.createElement(View, {
280
+ transparent: true
281
+ }, /*#__PURE__*/React.createElement(Image, {
282
+ source: {
283
+ uri: chat_player.profile_pic
284
+ },
285
+ style: {
286
+ height: 40,
287
+ width: 40,
288
+ borderRadius: 100
289
+ },
290
+ resizeMode: "cover"
291
+ })), /*#__PURE__*/React.createElement(View, {
292
+ transparent: true,
293
+ style: {
294
+ flex: 1,
295
+ marginLeft: 10
296
+ }
297
+ }, /*#__PURE__*/React.createElement(Text, {
298
+ theme: "h1"
299
+ }, "@", chat_player.username), /*#__PURE__*/React.createElement(Text, {
300
+ style: {
301
+ marginTop: 3
302
+ },
303
+ theme: "description"
304
+ }, "Joined ", moment(chat_player.create_datetime).fromNow()))) : group ? /*#__PURE__*/React.createElement(View, {
305
+ type: "header",
306
+ style: {
307
+ flexDirection: 'row',
308
+ alignItems: 'center',
309
+ padding: 10
310
+ }
311
+ }, /*#__PURE__*/React.createElement(View, {
312
+ transparent: true
313
+ }, /*#__PURE__*/React.createElement(Image, {
314
+ source: {
315
+ uri: group.group_image?.url
316
+ },
317
+ style: {
318
+ height: 40,
319
+ width: 40,
320
+ borderRadius: 100
321
+ },
322
+ resizeMode: "cover"
323
+ })), /*#__PURE__*/React.createElement(View, {
324
+ transparent: true,
325
+ style: {
326
+ flex: 1,
327
+ marginLeft: 10
328
+ }
329
+ }, /*#__PURE__*/React.createElement(Text, {
330
+ theme: "h1"
331
+ }, group.name), /*#__PURE__*/React.createElement(Text, {
332
+ style: {
333
+ marginTop: 3
334
+ },
335
+ theme: "description"
336
+ }, moment(group.last_update_datetime).format('YYYY MM DD')))) : /*#__PURE__*/React.createElement(React.Fragment, null), /*#__PURE__*/React.createElement(View, {
337
+ style: {
338
+ flex: 1
339
+ }
340
+ }, /*#__PURE__*/React.createElement(FlatList, {
341
+ ref: chat_ref,
342
+ data: unique_dates,
343
+ inverted: true,
344
+ style: {
345
+ flex: 1
346
+ },
347
+ renderItem: renderDates,
348
+ key: `chat_${group_id}dates`,
349
+ keyExtractor: item => item
350
+ })), show_input_bar ? /*#__PURE__*/React.createElement(View, {
351
+ type: "header",
352
+ style: {
353
+ padding: 5
354
+ }
355
+ }, /*#__PURE__*/React.createElement(InputBar, {
356
+ actions: ['image'],
357
+ width: 200,
358
+ onImageUpload: image => handleSendImage(image)
359
+ })) : /*#__PURE__*/React.createElement(React.Fragment, null), /*#__PURE__*/React.createElement(View, {
360
+ type: "footer",
361
+ style: {
362
+ padding: 5
363
+ }
364
+ }, /*#__PURE__*/React.createElement(FormattedTextInput, {
365
+ submit_placement: "inline",
366
+ icon_submit: true,
367
+ width: width,
368
+ onSelectInput: () => setShowInputBar(!show_input_bar),
369
+ onSubmit: (data, tags) => handleSendMessage(data, tags),
370
+ onFocusPosition: onFocusPosition
371
+ })), group ? /*#__PURE__*/React.createElement(SocketManager, {
372
+ distinct_id: distinct_id,
373
+ access_token: access_token,
374
+ group_id: group.group_id,
375
+ subscribed_events: ['V1_UPDATE_GROUP_MESSAGE'],
376
+ onConnect: () => {
377
+ if (!needs_reload) {
378
+ return;
379
+ }
380
+ if (group_id) {
381
+ return getGroupFromServer(group_id);
382
+ }
383
+ if (player_id) {
384
+ return getChatFromServer(player_id);
385
+ }
386
+ return;
387
+ },
388
+ onDisconnect: () => {
389
+ setNeedsReload(true);
390
+ },
391
+ onSocketEvent: ev => {
392
+ if (!ev.data) {
393
+ return;
394
+ }
395
+ let gm = ev.data;
396
+ if (gm.group_id != group.group_id) {
397
+ return;
398
+ }
399
+ setSocketMessage(gm);
400
+ }
401
+ }) : /*#__PURE__*/React.createElement(React.Fragment, null), loading ? /*#__PURE__*/React.createElement(View, {
402
+ type: "blur",
403
+ style: {
404
+ position: 'absolute',
405
+ top: 0,
406
+ left: 0,
407
+ right: 0,
408
+ bottom: 0,
409
+ alignItems: 'center',
410
+ padding: 20
411
+ }
412
+ }, /*#__PURE__*/React.createElement(ActivityIndicator, {
413
+ size: "large",
414
+ color: Colors.text.h1
415
+ })) : /*#__PURE__*/React.createElement(React.Fragment, null));
416
+ };
417
+ export default GroupChat;
418
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","moment","useEffect","useMemo","useRef","useState","ActivityIndicator","FlatList","Image","useColors","SocialComponentApi","SocialComponentHelpers","Text","View","GroupMessageCard","InputBar","FormattedTextInput","SocketManager","GroupChat","my_id","player_id","width","group_id","access_token","distinct_id","onFocusPosition","onSelectImage","onSelectTag","Colors","chat_size","setChatSize","height","show_input_bar","setShowInputBar","needs_reload","setNeedsReload","message_loading","setMessageLoading","socket_message","setSocketMessage","undefined","my_data","setMyData","me","screen_data","setData","loading","players","group_players","group","message_data","setMessageData","messages_loading","messages","chat_ref","unique_dates","Set","map","m","create_datetime","format","length","setEnvironment","getGroupFromServer","getChatFromServer","getMyData","player","getMyDetails","filter","group_message_id","concat","chat_player","type","find","p","id","group_response","getChat","player_ids","push","getPlayersByIds","group_messages_with_tags","addTagsToMessages","group_messages","getGroupById","handleSendImage","image","group_message","getEmptyMessage","gm","sendChat","formatted_text","tags","message_images","message","handleSendMessage","data","url","getUrlsFromString","text","message_urls","t","renderMessages","item","mine","createElement","style","margin","renderDates","date_messages","padding","size","theme","textAlign","key","keyExtractor","toString","sort","a","b","unix","renderItem","flex","onLayout","ev","nativeEvent","layout","flexDirection","alignItems","transparent","source","uri","profile_pic","borderRadius","resizeMode","marginLeft","username","marginTop","fromNow","group_image","name","last_update_datetime","Fragment","ref","inverted","actions","onImageUpload","submit_placement","icon_submit","onSelectInput","onSubmit","subscribed_events","onConnect","onDisconnect","onSocketEvent","position","top","left","right","bottom","color","h1"],"sourceRoot":"../../../../src","sources":["SocialComponents/GroupChat/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,48 @@
1
+ import React from 'react';
2
+ import { Image } from "react-native";
3
+ import { Button } from "../Components/Themed";
4
+ const ImageRenderer = ({
5
+ image,
6
+ width,
7
+ onSelectImage,
8
+ max_height,
9
+ style,
10
+ allow_aspect_change
11
+ }) => {
12
+ const getImageRatio = () => {
13
+ let ratio = 1;
14
+ if (image.width && image.height) {
15
+ ratio = image.width / image.height;
16
+ }
17
+ return ratio;
18
+ };
19
+ const ratio = getImageRatio();
20
+ let image_width = width;
21
+ let image_height = width * ratio;
22
+ if (max_height && image_height > max_height) {
23
+ image_height = max_height;
24
+ if (!allow_aspect_change) {
25
+ image_width = image_height / ratio;
26
+ }
27
+ }
28
+ return /*#__PURE__*/React.createElement(Button, {
29
+ disabled: !onSelectImage,
30
+ transparent: true,
31
+ style: {
32
+ padding: 0
33
+ },
34
+ onPress: () => onSelectImage ? onSelectImage(image) : console.log('')
35
+ }, /*#__PURE__*/React.createElement(Image, {
36
+ source: {
37
+ uri: image.url
38
+ },
39
+ style: {
40
+ height: image_height,
41
+ width: image_width,
42
+ ...style
43
+ },
44
+ resizeMode: "cover"
45
+ }));
46
+ };
47
+ export default ImageRenderer;
48
+ //# sourceMappingURL=ImageRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Image","Button","ImageRenderer","image","width","onSelectImage","max_height","style","allow_aspect_change","getImageRatio","ratio","height","image_width","image_height","createElement","disabled","transparent","padding","onPress","console","log","source","uri","url","resizeMode"],"sourceRoot":"../../../src","sources":["SocialComponents/ImageRenderer.tsx"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,KAAK,QAAQ,cAAc;AACpC,SAASC,MAAM,QAAQ,sBAAsB;AAU7C,MAAMC,aAAa,GAAGA,CAAC;EAAEC,KAAK;EAAEC,KAAK;EAAEC,aAAa;EAAEC,UAAU;EAAEC,KAAK;EAAEC;AAAuC,CAAC,KAAK;EAClH,MAAMC,aAAa,GAAGA,CAAA,KAAM;IACxB,IAAIC,KAAK,GAAG,CAAC;IACb,IAAGP,KAAK,CAACC,KAAK,IAAID,KAAK,CAACQ,MAAM,EAAC;MAC3BD,KAAK,GAAGP,KAAK,CAACC,KAAK,GAAGD,KAAK,CAACQ,MAAM;IACtC;IACA,OAAOD,KAAK;EAChB,CAAC;EACD,MAAMA,KAAK,GAAGD,aAAa,CAAC,CAAC;EAE7B,IAAIG,WAAW,GAAGR,KAAK;EACvB,IAAIS,YAAY,GAAGT,KAAK,GAAGM,KAAK;EAEhC,IAAGJ,UAAU,IAAIO,YAAY,GAAGP,UAAU,EAAC;IACvCO,YAAY,GAAGP,UAAU;IACzB,IAAG,CAACE,mBAAmB,EAAC;MAAEI,WAAW,GAAGC,YAAY,GAAGH,KAAK;IAAC;EACjE;EAEA,oBACIX,KAAA,CAAAe,aAAA,CAACb,MAAM;IAACc,QAAQ,EAAE,CAACV,aAAc;IAACW,WAAW;IAACT,KAAK,EAAE;MAAEU,OAAO,EAAC;IAAE,CAAE;IAACC,OAAO,EAAEA,CAAA,KAAMb,aAAa,GAAGA,aAAa,CAACF,KAAK,CAAC,GAAGgB,OAAO,CAACC,GAAG,CAAC,EAAE;EAAE,gBACtIrB,KAAA,CAAAe,aAAA,CAACd,KAAK;IACFqB,MAAM,EAAE;MAAEC,GAAG,EAAEnB,KAAK,CAACoB;IAAI,CAAE;IAC3BhB,KAAK,EAAE;MAAEI,MAAM,EAAEE,YAAY;MAAET,KAAK,EAAEQ,WAAW;MAAE,GAAGL;IAAM,CAAE;IAC9DiB,UAAU,EAAC;EAAO,CACrB,CACG,CAAC;AAEjB,CAAC;AAED,eAAetB,aAAa","ignoreList":[]}