@plusscommunities/pluss-core-app 6.1.7 → 6.1.8-auth.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/dist/module/actions/FollowerActions.js +4 -4
  2. package/dist/module/actions/FollowerActions.js.map +1 -1
  3. package/dist/module/actions/MediaActions.js +1 -1
  4. package/dist/module/actions/MediaActions.js.map +1 -1
  5. package/dist/module/actions/ResidentActions.js +1 -1
  6. package/dist/module/actions/ResidentActions.js.map +1 -1
  7. package/dist/module/actions/UserActions.js +1 -1
  8. package/dist/module/actions/UserActions.js.map +1 -1
  9. package/dist/module/actions/UserSettingsActions.js +1 -1
  10. package/dist/module/actions/UserSettingsActions.js.map +1 -1
  11. package/dist/module/actions/index.js +5 -5
  12. package/dist/module/actions/index.js.map +1 -1
  13. package/dist/module/actions/types.js +16 -16
  14. package/dist/module/actions/types.js.map +1 -1
  15. package/dist/module/apis/analyticsActions.js +5 -5
  16. package/dist/module/apis/analyticsActions.js.map +1 -1
  17. package/dist/module/apis/contactActions.js +6 -6
  18. package/dist/module/apis/contactActions.js.map +1 -1
  19. package/dist/module/apis/eventActions.js +28 -28
  20. package/dist/module/apis/eventActions.js.map +1 -1
  21. package/dist/module/apis/fileActions.js +21 -28
  22. package/dist/module/apis/fileActions.js.map +1 -1
  23. package/dist/module/apis/followerActions.js +8 -8
  24. package/dist/module/apis/followerActions.js.map +1 -1
  25. package/dist/module/apis/index.js +12 -12
  26. package/dist/module/apis/index.js.map +1 -1
  27. package/dist/module/apis/notificationActions.js +17 -17
  28. package/dist/module/apis/notificationActions.js.map +1 -1
  29. package/dist/module/apis/profileActions.js +4 -4
  30. package/dist/module/apis/profileActions.js.map +1 -1
  31. package/dist/module/apis/reactionActions.js +15 -15
  32. package/dist/module/apis/reactionActions.js.map +1 -1
  33. package/dist/module/apis/settingActions.js +6 -6
  34. package/dist/module/apis/settingActions.js.map +1 -1
  35. package/dist/module/apis/stringActions.js +8 -8
  36. package/dist/module/apis/stringActions.js.map +1 -1
  37. package/dist/module/apis/typeActions.js +4 -4
  38. package/dist/module/apis/typeActions.js.map +1 -1
  39. package/dist/module/apis/userActions.js +8 -8
  40. package/dist/module/apis/userActions.js.map +1 -1
  41. package/dist/module/assets/icons/fontawesome/fa-brands-400.ttf +0 -0
  42. package/dist/module/assets/icons/fontawesome/fa-light-300.ttf +0 -0
  43. package/dist/module/assets/icons/fontawesome/fa-regular-400.ttf +0 -0
  44. package/dist/module/assets/icons/fontawesome/fa-solid-900.ttf +0 -0
  45. package/dist/module/assets/icons/fontawesome/fa-thin-100.ttf +0 -0
  46. package/dist/module/assets/icons/fontawesome/fa7-glyphmap.json +4205 -0
  47. package/dist/module/colours.js +26 -29
  48. package/dist/module/colours.js.map +1 -1
  49. package/dist/module/components/AddButton.js +8 -8
  50. package/dist/module/components/AddButton.js.map +1 -1
  51. package/dist/module/components/AddToCalendarButton.js +30 -29
  52. package/dist/module/components/AddToCalendarButton.js.map +1 -1
  53. package/dist/module/components/Attachment.js +10 -9
  54. package/dist/module/components/Attachment.js.map +1 -1
  55. package/dist/module/components/AudienceSelectorLauncher.js +11 -11
  56. package/dist/module/components/AudienceSelectorLauncher.js.map +1 -1
  57. package/dist/module/components/AudienceSelectorPage.js +45 -44
  58. package/dist/module/components/AudienceSelectorPage.js.map +1 -1
  59. package/dist/module/components/AutoOffsetImage.js +13 -13
  60. package/dist/module/components/AutoOffsetImage.js.map +1 -1
  61. package/dist/module/components/BackButton.js +10 -10
  62. package/dist/module/components/BackButton.js.map +1 -1
  63. package/dist/module/components/CalendarPopup.js +21 -21
  64. package/dist/module/components/CalendarPopup.js.map +1 -1
  65. package/dist/module/components/CategoryTabs.js +30 -29
  66. package/dist/module/components/CategoryTabs.js.map +1 -1
  67. package/dist/module/components/CommentReply.js +36 -34
  68. package/dist/module/components/CommentReply.js.map +1 -1
  69. package/dist/module/components/CommentSection.js +74 -74
  70. package/dist/module/components/CommentSection.js.map +1 -1
  71. package/dist/module/components/ConfirmPopup.js +21 -20
  72. package/dist/module/components/ConfirmPopup.js.map +1 -1
  73. package/dist/module/components/ConfirmationPopup.js +11 -11
  74. package/dist/module/components/ConfirmationPopup.js.map +1 -1
  75. package/dist/module/components/DocumentUploader.js +253 -0
  76. package/dist/module/components/DocumentUploader.js.map +1 -0
  77. package/dist/module/components/DropDownItem.js +14 -13
  78. package/dist/module/components/DropDownItem.js.map +1 -1
  79. package/dist/module/components/DropDownMenu.js +5 -5
  80. package/dist/module/components/DropDownMenu.js.map +1 -1
  81. package/dist/module/components/EmptyStateMain.js +10 -9
  82. package/dist/module/components/EmptyStateMain.js.map +1 -1
  83. package/dist/module/components/EmptyStateWidget.js +7 -6
  84. package/dist/module/components/EmptyStateWidget.js.map +1 -1
  85. package/dist/module/components/FontScaleButton.js +5 -4
  86. package/dist/module/components/FontScaleButton.js.map +1 -1
  87. package/dist/module/components/FontScalePopup.js +11 -10
  88. package/dist/module/components/FontScalePopup.js.map +1 -1
  89. package/dist/module/components/Forbidden.js +13 -13
  90. package/dist/module/components/Forbidden.js.map +1 -1
  91. package/dist/module/components/FormCard.js +4 -4
  92. package/dist/module/components/FormCard.js.map +1 -1
  93. package/dist/module/components/FormCardSection.js +20 -18
  94. package/dist/module/components/FormCardSection.js.map +1 -1
  95. package/dist/module/components/FormCardSectionOptionLauncher.js +13 -12
  96. package/dist/module/components/FormCardSectionOptionLauncher.js.map +1 -1
  97. package/dist/module/components/FormattedText.js +18 -16
  98. package/dist/module/components/FormattedText.js.map +1 -1
  99. package/dist/module/components/GenericInput.js +24 -21
  100. package/dist/module/components/GenericInput.js.map +1 -1
  101. package/dist/module/components/GenericInputSection.js +27 -26
  102. package/dist/module/components/GenericInputSection.js.map +1 -1
  103. package/dist/module/components/Header.js +70 -69
  104. package/dist/module/components/Header.js.map +1 -1
  105. package/dist/module/components/Icon.js +109 -0
  106. package/dist/module/components/Icon.js.map +1 -0
  107. package/dist/module/components/ImagePopup.js +237 -77
  108. package/dist/module/components/ImagePopup.js.map +1 -1
  109. package/dist/module/components/ImageUploadProgress.js +10 -9
  110. package/dist/module/components/ImageUploadProgress.js.map +1 -1
  111. package/dist/module/components/ImageUploader.js +22 -13
  112. package/dist/module/components/ImageUploader.js.map +1 -1
  113. package/dist/module/components/InlineButton.js +9 -8
  114. package/dist/module/components/InlineButton.js.map +1 -1
  115. package/dist/module/components/Input.js +28 -26
  116. package/dist/module/components/Input.js.map +1 -1
  117. package/dist/module/components/LoadingCircles.js +20 -20
  118. package/dist/module/components/LoadingCircles.js.map +1 -1
  119. package/dist/module/components/LoadingIndicator.js +11 -11
  120. package/dist/module/components/LoadingIndicator.js.map +1 -1
  121. package/dist/module/components/LoadingStateWidget.js +5 -5
  122. package/dist/module/components/LoadingStateWidget.js.map +1 -1
  123. package/dist/module/components/MediaPlayer.js +32 -32
  124. package/dist/module/components/MediaPlayer.js.map +1 -1
  125. package/dist/module/components/MiddlePopup.js +9 -9
  126. package/dist/module/components/MiddlePopup.js.map +1 -1
  127. package/dist/module/components/PDFPopup.js +36 -36
  128. package/dist/module/components/PDFPopup.js.map +1 -1
  129. package/dist/module/components/PlussChat.js +234 -146
  130. package/dist/module/components/PlussChat.js.map +1 -1
  131. package/dist/module/components/PlussChatMessage.js +75 -38
  132. package/dist/module/components/PlussChatMessage.js.map +1 -1
  133. package/dist/module/components/PlussChatTime.js +18 -17
  134. package/dist/module/components/PlussChatTime.js.map +1 -1
  135. package/dist/module/components/Popup.js +20 -19
  136. package/dist/module/components/Popup.js.map +1 -1
  137. package/dist/module/components/PopupMenu.js +15 -14
  138. package/dist/module/components/PopupMenu.js.map +1 -1
  139. package/dist/module/components/PositionedImage.js +20 -20
  140. package/dist/module/components/PositionedImage.js.map +1 -1
  141. package/dist/module/components/ProfilePic.js +10 -10
  142. package/dist/module/components/ProfilePic.js.map +1 -1
  143. package/dist/module/components/RadioButton.js +10 -9
  144. package/dist/module/components/RadioButton.js.map +1 -1
  145. package/dist/module/components/Reaction.js +18 -17
  146. package/dist/module/components/Reaction.js.map +1 -1
  147. package/dist/module/components/Reactions.js +7 -7
  148. package/dist/module/components/Reactions.js.map +1 -1
  149. package/dist/module/components/SharingTools.js +29 -28
  150. package/dist/module/components/SharingTools.js.map +1 -1
  151. package/dist/module/components/Spinner.js +5 -5
  152. package/dist/module/components/Spinner.js.map +1 -1
  153. package/dist/module/components/StickyFooter.js +6 -6
  154. package/dist/module/components/StickyFooter.js.map +1 -1
  155. package/dist/module/components/Text.js +57 -0
  156. package/dist/module/components/Text.js.map +1 -0
  157. package/dist/module/components/TickIcon.js +6 -6
  158. package/dist/module/components/TickIcon.js.map +1 -1
  159. package/dist/module/components/Toggle.js +10 -9
  160. package/dist/module/components/Toggle.js.map +1 -1
  161. package/dist/module/components/TouchableSearchBar.js +18 -17
  162. package/dist/module/components/TouchableSearchBar.js.map +1 -1
  163. package/dist/module/components/UserListPopup.js +20 -19
  164. package/dist/module/components/UserListPopup.js.map +1 -1
  165. package/dist/module/components/UserListing.js +41 -40
  166. package/dist/module/components/UserListing.js.map +1 -1
  167. package/dist/module/components/VideoPopup.js +20 -20
  168. package/dist/module/components/VideoPopup.js.map +1 -1
  169. package/dist/module/components/WarningPopup.js +21 -20
  170. package/dist/module/components/WarningPopup.js.map +1 -1
  171. package/dist/module/components/expo-image-picker-multiple/ImageBrowser.js +13 -13
  172. package/dist/module/components/expo-image-picker-multiple/ImageBrowser.js.map +1 -1
  173. package/dist/module/components/expo-image-picker-multiple/ImageTile.js +24 -23
  174. package/dist/module/components/expo-image-picker-multiple/ImageTile.js.map +1 -1
  175. package/dist/module/components/index.js +59 -57
  176. package/dist/module/components/index.js.map +1 -1
  177. package/dist/module/components/react-native-expo-image-cropper/ExpoImageManipulator.js +90 -58
  178. package/dist/module/components/react-native-expo-image-cropper/ExpoImageManipulator.js.map +1 -1
  179. package/dist/module/components/react-native-expo-image-cropper/ImageCropOverlay.js +64 -64
  180. package/dist/module/components/react-native-expo-image-cropper/ImageCropOverlay.js.map +1 -1
  181. package/dist/module/config.js +6 -1
  182. package/dist/module/config.js.map +1 -1
  183. package/dist/module/constants.js +3 -3
  184. package/dist/module/constants.js.map +1 -1
  185. package/dist/module/helper.js +83 -82
  186. package/dist/module/helper.js.map +1 -1
  187. package/dist/module/index.js +12 -12
  188. package/dist/module/index.js.map +1 -1
  189. package/dist/module/js/images/detectFaces.js +6 -6
  190. package/dist/module/js/images/detectFaces.js.map +1 -1
  191. package/dist/module/js/images/findLandmarkRange.js +8 -8
  192. package/dist/module/js/images/findLandmarkRange.js.map +1 -1
  193. package/dist/module/js/images/getScaledOffset.js.map +1 -1
  194. package/dist/module/js/site/getSiteLevelFromState.js +2 -2
  195. package/dist/module/js/site/getSiteLevelFromState.js.map +1 -1
  196. package/dist/module/js/site/isTVEnabled.js +2 -2
  197. package/dist/module/js/site/isTVEnabled.js.map +1 -1
  198. package/dist/module/session.js +2 -2
  199. package/dist/module/session.js.map +1 -1
  200. package/dist/module/styles.js +17 -17
  201. package/dist/module/styles.js.map +1 -1
  202. package/dist/module/withNavigationFocus.js +30 -0
  203. package/dist/module/withNavigationFocus.js.map +1 -0
  204. package/package.json +4 -1
  205. package/src/actions/FollowerActions.js +36 -32
  206. package/src/actions/MediaActions.js +25 -20
  207. package/src/actions/ResidentActions.js +26 -21
  208. package/src/actions/UserActions.js +22 -22
  209. package/src/actions/UserSettingsActions.js +11 -11
  210. package/src/actions/index.js +5 -5
  211. package/src/actions/types.js +16 -16
  212. package/src/apis/analyticsActions.js +17 -17
  213. package/src/apis/contactActions.js +20 -20
  214. package/src/apis/eventActions.js +153 -144
  215. package/src/apis/fileActions.js +19 -27
  216. package/src/apis/followerActions.js +29 -29
  217. package/src/apis/index.js +12 -12
  218. package/src/apis/notificationActions.js +44 -44
  219. package/src/apis/profileActions.js +8 -8
  220. package/src/apis/reactionActions.js +81 -73
  221. package/src/apis/settingActions.js +15 -15
  222. package/src/apis/stringActions.js +29 -25
  223. package/src/apis/typeActions.js +10 -10
  224. package/src/apis/userActions.js +93 -93
  225. package/src/assets/icons/fontawesome/fa-brands-400.ttf +0 -0
  226. package/src/assets/icons/fontawesome/fa-light-300.ttf +0 -0
  227. package/src/assets/icons/fontawesome/fa-regular-400.ttf +0 -0
  228. package/src/assets/icons/fontawesome/fa-solid-900.ttf +0 -0
  229. package/src/assets/icons/fontawesome/fa-thin-100.ttf +0 -0
  230. package/src/assets/icons/fontawesome/fa7-glyphmap.json +4205 -0
  231. package/src/colours.js +116 -96
  232. package/src/components/AddButton.js +32 -27
  233. package/src/components/AddToCalendarButton.js +236 -202
  234. package/src/components/Attachment.js +59 -36
  235. package/src/components/AudienceSelectorLauncher.js +52 -48
  236. package/src/components/AudienceSelectorPage.js +353 -311
  237. package/src/components/AutoOffsetImage.js +237 -196
  238. package/src/components/BackButton.js +57 -41
  239. package/src/components/CalendarPopup.js +127 -97
  240. package/src/components/CategoryTabs.js +208 -163
  241. package/src/components/CommentReply.js +363 -309
  242. package/src/components/CommentSection.js +974 -782
  243. package/src/components/ConfirmPopup.js +141 -110
  244. package/src/components/ConfirmationPopup.js +80 -69
  245. package/src/components/DocumentUploader.js +255 -0
  246. package/src/components/DropDownItem.js +70 -60
  247. package/src/components/DropDownMenu.js +31 -27
  248. package/src/components/EmptyStateMain.js +51 -44
  249. package/src/components/EmptyStateWidget.js +47 -38
  250. package/src/components/FontScaleButton.js +29 -25
  251. package/src/components/FontScalePopup.js +67 -56
  252. package/src/components/Forbidden.js +48 -46
  253. package/src/components/FormCard.js +21 -17
  254. package/src/components/FormCardSection.js +284 -233
  255. package/src/components/FormCardSectionOptionLauncher.js +72 -46
  256. package/src/components/FormattedText.js +128 -111
  257. package/src/components/GenericInput.js +168 -136
  258. package/src/components/GenericInputSection.js +209 -161
  259. package/src/components/Header.js +620 -474
  260. package/src/components/Icon.js +119 -0
  261. package/src/components/ImagePopup.js +425 -206
  262. package/src/components/ImageUploadProgress.js +49 -41
  263. package/src/components/ImageUploader.js +23 -13
  264. package/src/components/InlineButton.js +79 -69
  265. package/src/components/Input.js +190 -156
  266. package/src/components/LoadingCircles.js +233 -233
  267. package/src/components/LoadingIndicator.js +87 -76
  268. package/src/components/LoadingStateWidget.js +47 -37
  269. package/src/components/MediaPlayer.js +416 -387
  270. package/src/components/MiddlePopup.js +50 -32
  271. package/src/components/PDFPopup.js +198 -159
  272. package/src/components/PlussChat.js +1271 -986
  273. package/src/components/PlussChatMessage.js +330 -262
  274. package/src/components/PlussChatTime.js +57 -53
  275. package/src/components/Popup.js +138 -116
  276. package/src/components/PopupMenu.js +140 -110
  277. package/src/components/PositionedImage.js +281 -237
  278. package/src/components/ProfilePic.js +122 -113
  279. package/src/components/RadioButton.js +76 -52
  280. package/src/components/Reaction.js +134 -96
  281. package/src/components/Reactions.js +65 -63
  282. package/src/components/SharingTools.js +136 -122
  283. package/src/components/Spinner.js +13 -13
  284. package/src/components/StickyFooter.js +36 -26
  285. package/src/components/Text.js +62 -0
  286. package/src/components/TickIcon.js +20 -20
  287. package/src/components/Toggle.js +74 -73
  288. package/src/components/TouchableSearchBar.js +68 -50
  289. package/src/components/UserListPopup.js +161 -124
  290. package/src/components/UserListing.js +273 -238
  291. package/src/components/VideoPopup.js +110 -96
  292. package/src/components/WarningPopup.js +92 -71
  293. package/src/components/expo-image-picker-multiple/ImageBrowser.js +288 -256
  294. package/src/components/expo-image-picker-multiple/ImageTile.js +108 -84
  295. package/src/components/index.js +59 -57
  296. package/src/components/react-native-expo-image-cropper/ExpoImageManipulator.js +442 -358
  297. package/src/components/react-native-expo-image-cropper/ImageCropOverlay.js +420 -324
  298. package/src/config.js +5 -0
  299. package/src/constants.js +8 -8
  300. package/src/helper.js +469 -438
  301. package/src/index.js +24 -12
  302. package/src/js/images/detectFaces.js +27 -20
  303. package/src/js/images/findLandmarkRange.js +97 -90
  304. package/src/js/images/getScaledOffset.js +80 -75
  305. package/src/js/site/getSiteLevelFromState.js +26 -26
  306. package/src/js/site/isTVEnabled.js +10 -10
  307. package/src/session.js +2 -2
  308. package/src/styles.js +61 -61
  309. package/src/withNavigationFocus.js +28 -0
  310. package/dist/module/components/TextStyle.js +0 -45
  311. package/dist/module/components/TextStyle.js.map +0 -1
  312. package/dist/module/fonts/index.js +0 -2
  313. package/dist/module/fonts/index.js.map +0 -1
  314. package/dist/module/fonts/pluss60-icons.js +0 -5
  315. package/dist/module/fonts/pluss60-icons.js.map +0 -1
  316. package/dist/module/fonts/pluss60-icons.json +0 -1097
  317. package/src/components/TextStyle.js +0 -48
  318. package/src/fonts/index.js +0 -1
  319. package/src/fonts/pluss60-icons.js +0 -6
  320. package/src/fonts/pluss60-icons.json +0 -1097
@@ -2,28 +2,29 @@ function _extends() { return _extends = Object.assign ? Object.assign.bind() : f
2
2
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
3
3
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
4
4
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
5
- import React, { Component } from 'react';
6
- import { View, Image, ImageBackground, TouchableOpacity, Text, KeyboardAvoidingView, Platform, ScrollView } from 'react-native';
7
- import { GiftedChat, Bubble, MessageText, Send, InputToolbar, Composer } from 'react-native-gifted-chat';
8
- import { connect } from 'react-redux';
9
- import _ from 'lodash';
10
- import moment from 'moment';
11
- import { Icon } from 'react-native-elements';
12
- import { getBottomSpace } from 'react-native-iphone-x-helper';
13
- import { Spinner } from './Spinner';
14
- import { ProfilePic } from './ProfilePic';
15
- import PlussChatTime from './PlussChatTime';
16
- import { PDFPopup } from './PDFPopup';
17
- import { Attachment } from './Attachment';
18
- import PlussChatMessage from './PlussChatMessage';
19
- import { TextStyle } from './TextStyle';
20
- import { TEXT_DARK, LINEGREY, TEXT_DARKEST, getMainBrandingColourFromState, getLightBrandingColourFromState, BG_GREY, TEXT_BLUEGREY } from '../colours';
21
- import { getEnabledTabsFromState, get1400, getThumb300, imageExists, isVideo, getImageSource, getFileName } from '../helper';
22
- import Config, { Services } from '../config';
23
- import ImageUploader from './ImageUploader';
24
- import ImageUploadProgress from './ImageUploadProgress';
25
- import { ImagePopup } from './ImagePopup';
26
- import { VideoPopup } from './VideoPopup';
5
+ import React, { Component } from "react";
6
+ import { View, Image, ImageBackground, TouchableOpacity, KeyboardAvoidingView, Platform, ScrollView, Alert, TextInput } from "react-native";
7
+ import { GiftedChat, Bubble, MessageText, Send, InputToolbar } from "react-native-gifted-chat";
8
+ import { connect } from "react-redux";
9
+ import _ from "lodash";
10
+ import moment from "moment";
11
+ import { Icon } from "@rneui/themed";
12
+ import { getBottomSpace } from "react-native-iphone-x-helper";
13
+ import { Spinner } from "./Spinner";
14
+ import { ProfilePic } from "./ProfilePic";
15
+ import PlussChatTime from "./PlussChatTime";
16
+ import { PDFPopup } from "./PDFPopup";
17
+ import { Attachment } from "./Attachment";
18
+ import PlussChatMessage from "./PlussChatMessage";
19
+ import { Text } from ".";
20
+ import { ConfirmPopup } from "./ConfirmPopup";
21
+ import { TEXT_DARK, LINEGREY, TEXT_DARKEST, getMainBrandingColourFromState, getLightBrandingColourFromState, BG_GREY, TEXT_BLUEGREY } from "../colours";
22
+ import { getEnabledTabsFromState, get1400, getThumb300, imageExists, isVideo, getImageSource, getFileName } from "../helper";
23
+ import Config, { Services } from "../config";
24
+ import ImageUploader from "./ImageUploader";
25
+ import ImageUploadProgress from "./ImageUploadProgress";
26
+ import { ImagePopup } from "./ImagePopup";
27
+ import { VideoPopup } from "./VideoPopup";
27
28
  const IMAGE_SIZE_SMALL = 55;
28
29
  const IMAGE_SIZE_LARGE = 110;
29
30
  const IMAGES_PER_ROW = 4;
@@ -34,19 +35,19 @@ class PlussChat extends Component {
34
35
  constructor(props) {
35
36
  super(props);
36
37
  _defineProperty(this, "onPressEvent", event => {
37
- Services.navigation.navigate('eventDetail', {
38
+ Services.navigation.navigate("eventDetail", {
38
39
  event
39
40
  });
40
41
  });
41
42
  _defineProperty(this, "onPressAttachment", attachment => {
42
43
  switch (attachment.Type) {
43
- case 'Event':
44
- Services.navigation.navigate('eventDetail', {
44
+ case "Event":
45
+ Services.navigation.navigate("eventDetail", {
45
46
  event: attachment
46
47
  });
47
48
  break;
48
- case 'Place':
49
- Services.navigation.navigate('placeDetail', {
49
+ case "Place":
50
+ Services.navigation.navigate("placeDetail", {
50
51
  place: attachment
51
52
  });
52
53
  break;
@@ -116,7 +117,7 @@ class PlussChat extends Component {
116
117
  _defineProperty(this, "onUploadStarted", (uploadUri, imageUri) => {
117
118
  const imagesToUpload = [...this.state.imagesToUpload, {
118
119
  uploading: true,
119
- uploadProgress: '0%',
120
+ uploadProgress: "0%",
120
121
  uploadUri,
121
122
  imageUri,
122
123
  allowRetry: true
@@ -142,7 +143,7 @@ class PlussChat extends Component {
142
143
  const imagesToUpload = [...this.state.imagesToUpload];
143
144
  imagesToUpload.map(img => {
144
145
  if (img.uploadUri === uploadUri && img.uploading) {
145
- img.url = uri.replace('/general/', '/general1400/');
146
+ img.url = uri.replace("/general/", "/general1400/");
146
147
  img.thumbNailExists = false;
147
148
  img.thumbNailUrl = getThumb300(img.url);
148
149
  img.allowRetry = true;
@@ -157,7 +158,7 @@ class PlussChat extends Component {
157
158
  imagesToUpload.map(img => {
158
159
  if (img.uploadUri === uploadUri) {
159
160
  img.uploading = true; // Requried for retry
160
- img.uploadProgress = '';
161
+ img.uploadProgress = "";
161
162
  img.allowRetry = true;
162
163
  }
163
164
  });
@@ -189,6 +190,52 @@ class PlussChat extends Component {
189
190
  replyingTo: message
190
191
  });
191
192
  });
193
+ _defineProperty(this, "onDelete", message => {
194
+ // Only proceed if delete handler is provided
195
+ if (!this.props.onDeleteMessage) {
196
+ return;
197
+ }
198
+
199
+ // Only allow deletion of own messages
200
+ if (message.user._id !== this.props.user.uid) {
201
+ return;
202
+ }
203
+ this.setState({
204
+ showDeleteMessageConfirm: true,
205
+ messageToDelete: message
206
+ });
207
+ });
208
+ _defineProperty(this, "onCancelDeleteMessage", () => {
209
+ this.setState({
210
+ showDeleteMessageConfirm: false,
211
+ messageToDelete: null
212
+ });
213
+ });
214
+ _defineProperty(this, "onConfirmDeleteMessage", async () => {
215
+ const {
216
+ messageToDelete
217
+ } = this.state;
218
+ if (!messageToDelete) return;
219
+ this.setState({
220
+ showDeleteMessageConfirm: false
221
+ });
222
+ try {
223
+ // Call the parent's delete handler if provided
224
+ if (this.props.onDeleteMessage) {
225
+ await this.props.onDeleteMessage(messageToDelete);
226
+ }
227
+ this.setState({
228
+ messageToDelete: null
229
+ });
230
+ } catch (error) {
231
+ // Handle error gracefully if parent handler fails
232
+ console.log("onConfirmDeleteMessage error", error);
233
+ // Error is already handled by parent component
234
+ this.setState({
235
+ messageToDelete: null
236
+ });
237
+ }
238
+ });
192
239
  _defineProperty(this, "onRemoveImage", url => {
193
240
  const imagesToUpload = this.state.imagesToUpload.filter(image => image.url !== url);
194
241
  this.setState({
@@ -196,7 +243,7 @@ class PlussChat extends Component {
196
243
  });
197
244
  });
198
245
  _defineProperty(this, "toggleFullscreenVideo", url => {
199
- if (typeof url !== 'string') url = '';
246
+ if (typeof url !== "string") url = "";
200
247
  this.setState({
201
248
  showFullscreenVideo: url.length > 0,
202
249
  currentVideoUrl: url
@@ -219,7 +266,10 @@ class PlussChat extends Component {
219
266
  imagePopupOpen: false,
220
267
  imagesToUpload: [],
221
268
  showFullscreenVideo: false,
222
- currentVideoUrl: ''
269
+ currentVideoUrl: "",
270
+ showDeleteMessageConfirm: false,
271
+ messageToDelete: null,
272
+ composerHeight: this.MIN_COMPOSER_HEIGHT
223
273
  };
224
274
  this.checkThumb = null;
225
275
  }
@@ -227,14 +277,18 @@ class PlussChat extends Component {
227
277
  this.updateMessages(this.props);
228
278
  }
229
279
  UNSAFE_componentWillReceiveProps(nextProps) {
230
- this.updateMessages(nextProps);
280
+ // Only update if messages actually changed
281
+ if (nextProps.messages !== this.props.messages) {
282
+ this.updateMessages(nextProps);
283
+ }
231
284
  }
232
285
  updateMessages(props) {
233
- const newState = {};
234
- if (!_.isUndefined(props.messages)) {
235
- newState.messages = props.messages;
286
+ // Only update if messages actually changed
287
+ if (!_.isUndefined(props.messages) && !_.isEqual(props.messages, this.state.messages)) {
288
+ this.setState({
289
+ messages: props.messages
290
+ });
236
291
  }
237
- this.setState(newState);
238
292
  }
239
293
 
240
294
  /***
@@ -263,7 +317,7 @@ class PlussChat extends Component {
263
317
  messages[0].image = this.state.imagesToUpload.map(image => image.url);
264
318
  }
265
319
  if (_.isEmpty(messages[0].text)) {
266
- messages[0].text = '';
320
+ messages[0].text = "";
267
321
  }
268
322
  if (!messages[0].text && !messages[0].image) return;
269
323
  if (this.state.replyingTo) {
@@ -331,14 +385,25 @@ class PlussChat extends Component {
331
385
  colourBrandingMain: this.props.colourBrandingMain,
332
386
  onPressReply: () => {
333
387
  this.onReply(props.currentMessage);
334
- }
388
+ },
389
+ onPressDelete: this.props.onDeleteMessage ? () => {
390
+ this.onDelete(props.currentMessage);
391
+ } : null
335
392
  }, props));
336
393
  }
337
394
  renderMessageText(messageTextProps) {
338
- return /*#__PURE__*/React.createElement(MessageText, _extends({}, messageTextProps, {
395
+ // If message is deleted, show placeholder text
396
+ const props = messageTextProps.currentMessage.deleted ? {
397
+ ...messageTextProps,
398
+ currentMessage: {
399
+ ...messageTextProps.currentMessage,
400
+ text: "[Message deleted]"
401
+ }
402
+ } : messageTextProps;
403
+ return /*#__PURE__*/React.createElement(MessageText, _extends({}, props, {
339
404
  textStyle: {
340
405
  left: {
341
- fontFamily: 'sf-regular',
406
+ fontFamily: "sf-regular",
342
407
  fontSize: 16,
343
408
  color: TEXT_DARKEST,
344
409
  marginTop: 10,
@@ -347,7 +412,7 @@ class PlussChat extends Component {
347
412
  marginRight: 15
348
413
  },
349
414
  right: {
350
- fontFamily: 'sf-regular',
415
+ fontFamily: "sf-regular",
351
416
  fontSize: 16,
352
417
  color: this.props.colourBrandingMain,
353
418
  marginTop: 10,
@@ -372,7 +437,7 @@ class PlussChat extends Component {
372
437
  renderDay(dayProps) {
373
438
  return /*#__PURE__*/React.createElement(PlussChatTime, _extends({}, dayProps, {
374
439
  textStyle: {
375
- fontFamily: 'sf-semibold',
440
+ fontFamily: "sf-semibold",
376
441
  color: TEXT_DARK,
377
442
  fontSize: 12
378
443
  }
@@ -382,8 +447,12 @@ class PlussChat extends Component {
382
447
  currentMessage,
383
448
  position
384
449
  }) {
450
+ // Don't show images or attachments for deleted messages
451
+ if (currentMessage.deleted) {
452
+ return null;
453
+ }
385
454
  if (currentMessage.image) {
386
- const images = typeof currentMessage.image === 'string' ? [currentMessage.image] : currentMessage.image;
455
+ const images = typeof currentMessage.image === "string" ? [currentMessage.image] : currentMessage.image;
387
456
  const containerWidth = (() => {
388
457
  if (images.length === 0) return 0;
389
458
  if (images.length === 1) return IMAGE_SIZE_LARGE;
@@ -457,7 +526,7 @@ class PlussChat extends Component {
457
526
  style: [styles.eventDate, styles.eventInfoAlign[position], {
458
527
  color: this.props.colourBrandingMain
459
528
  }]
460
- }, moment.utc(currentMessage.event.StartTime).local().format('ddd D MMM')))));
529
+ }, moment.utc(currentMessage.event.StartTime).local().format("ddd D MMM")))));
461
530
  }
462
531
  if (currentMessage.attachment) {
463
532
  return /*#__PURE__*/React.createElement(TouchableOpacity, {
@@ -480,40 +549,44 @@ class PlussChat extends Component {
480
549
  style: [styles.eventDate, styles.eventInfoAlign[position], {
481
550
  color: this.props.colourBrandingMain
482
551
  }]
483
- }, moment.utc(currentMessage.attachment.StartTime).local().format('ddd D MMM')))));
552
+ }, moment.utc(currentMessage.attachment.StartTime).local().format("ddd D MMM")))));
484
553
  }
485
554
  return null;
486
555
  }
487
556
  renderSend(props) {
557
+ const buttonTopOffset = this.state.replyingTo ? 46 : 4;
558
+ const showSendButton = !_.isEmpty(props.text) || this.hasImagesReady(props.imagesToUpload);
488
559
  return /*#__PURE__*/React.createElement(View, {
489
- style: [{
490
- position: 'absolute',
491
- top: 0,
492
- right: 0
493
- }, !!this.state.replyingTo && {
494
- marginTop: 38
495
- }]
496
- }, (!_.isEmpty(props.text) || this.hasImagesReady(props.imagesToUpload)) && /*#__PURE__*/React.createElement(Send, _extends({}, props, {
497
- alwaysShowSend: true,
498
- containerStyle: [styles.sendContainer, {
560
+ style: {
561
+ position: "absolute",
562
+ top: buttonTopOffset,
563
+ right: 8,
564
+ flexDirection: "row",
565
+ alignItems: "center"
566
+ }
567
+ }, /*#__PURE__*/React.createElement(TouchableOpacity, {
568
+ onPress: this.showUploadMenu.bind(this),
569
+ style: [styles.sendContainer, {
570
+ right: _.isEmpty(props.text) && !this.hasImagesReady(props.imagesToUpload) ? 0 : this.MIN_COMPOSER_HEIGHT,
499
571
  width: this.MIN_COMPOSER_HEIGHT,
500
572
  height: this.MIN_COMPOSER_HEIGHT
501
573
  }]
502
- }), /*#__PURE__*/React.createElement(Icon, {
503
- name: 'paper-plane',
574
+ }, /*#__PURE__*/React.createElement(Icon, {
575
+ name: "picture-o",
504
576
  type: "font-awesome",
505
577
  iconStyle: [styles.send, {
506
578
  width: this.MIN_COMPOSER_HEIGHT
507
579
  }]
508
- })), /*#__PURE__*/React.createElement(TouchableOpacity, {
509
- onPress: this.showUploadMenu.bind(this),
510
- style: [styles.sendContainer, {
511
- right: _.isEmpty(props.text) && !this.hasImagesReady(props.imagesToUpload) ? 0 : 8 + this.MIN_COMPOSER_HEIGHT,
580
+ })), showSendButton && /*#__PURE__*/React.createElement(Send, _extends({}, props, {
581
+ alwaysShowSend: true,
582
+ onSend: props.onSend,
583
+ text: props.text || " ",
584
+ containerStyle: [styles.sendContainer, {
512
585
  width: this.MIN_COMPOSER_HEIGHT,
513
586
  height: this.MIN_COMPOSER_HEIGHT
514
587
  }]
515
- }, /*#__PURE__*/React.createElement(Icon, {
516
- name: 'picture-o',
588
+ }), /*#__PURE__*/React.createElement(Icon, {
589
+ name: "paper-plane",
517
590
  type: "font-awesome",
518
591
  iconStyle: [styles.send, {
519
592
  width: this.MIN_COMPOSER_HEIGHT
@@ -604,11 +677,11 @@ class PlussChat extends Component {
604
677
  return /*#__PURE__*/React.createElement(View, {
605
678
  style: {
606
679
  marginTop: 15,
607
- justifyContent: 'center',
608
- alignContent: 'center'
680
+ justifyContent: "center",
681
+ alignContent: "center"
609
682
  }
610
683
  }, /*#__PURE__*/React.createElement(Spinner, {
611
- size: 'small',
684
+ size: "small",
612
685
  color: this.props.colourBrandingMain
613
686
  }));
614
687
  }
@@ -625,12 +698,14 @@ class PlussChat extends Component {
625
698
  renderComposer(props) {
626
699
  var _this$state$replyingT, _this$state$replyingT2;
627
700
  return /*#__PURE__*/React.createElement(View, {
628
- style: styles.composerContainer
701
+ style: {
702
+ width: "100%"
703
+ }
629
704
  }, this.state.replyingTo && /*#__PURE__*/React.createElement(View, {
630
705
  style: styles.replyingTo
631
- }, /*#__PURE__*/React.createElement(TextStyle, {
706
+ }, /*#__PURE__*/React.createElement(Text, {
632
707
  type: "body"
633
- }, "Replying to ", _.isEmpty((_this$state$replyingT = this.state.replyingTo) === null || _this$state$replyingT === void 0 || (_this$state$replyingT = _this$state$replyingT.user) === null || _this$state$replyingT === void 0 ? void 0 : _this$state$replyingT.name) ? 'message' : (_this$state$replyingT2 = this.state.replyingTo) === null || _this$state$replyingT2 === void 0 || (_this$state$replyingT2 = _this$state$replyingT2.user) === null || _this$state$replyingT2 === void 0 ? void 0 : _this$state$replyingT2.name), /*#__PURE__*/React.createElement(TouchableOpacity, {
708
+ }, "Replying to", " ", _.isEmpty((_this$state$replyingT = this.state.replyingTo) === null || _this$state$replyingT === void 0 || (_this$state$replyingT = _this$state$replyingT.user) === null || _this$state$replyingT === void 0 ? void 0 : _this$state$replyingT.name) ? "message" : (_this$state$replyingT2 = this.state.replyingTo) === null || _this$state$replyingT2 === void 0 || (_this$state$replyingT2 = _this$state$replyingT2.user) === null || _this$state$replyingT2 === void 0 ? void 0 : _this$state$replyingT2.name), /*#__PURE__*/React.createElement(TouchableOpacity, {
634
709
  style: styles.replyingRemoveButton,
635
710
  onPress: () => this.onReply(null),
636
711
  hitSlop: {
@@ -648,43 +723,52 @@ class PlussChat extends Component {
648
723
  type: "font-awesome",
649
724
  iconStyle: styles.replyingRemoveIcon
650
725
  })))), /*#__PURE__*/React.createElement(View, {
651
- style: styles.composerInputWrapper
726
+ style: {
727
+ flexDirection: "row",
728
+ alignItems: "flex-end",
729
+ width: "100%",
730
+ paddingBottom: 8
731
+ }
652
732
  }, /*#__PURE__*/React.createElement(View, {
653
733
  style: [styles.input, {
654
- //height: props.composerHeight + 10,
655
- //borderRadius: (this.MIN_COMPOSER_HEIGHT + 10) / 2,
656
- marginRight: _.isEmpty(props.text) && !this.hasImagesReady(props.imagesToUpload) ? 8 + this.MIN_COMPOSER_HEIGHT : 2 * (this.MIN_COMPOSER_HEIGHT + 8),
657
- justifyContent: 'center'
658
- }, Platform.OS === 'ios' && {
659
- height: props.composerHeight + 10
734
+ flex: 1,
735
+ marginRight: _.isEmpty(props.text) && !this.hasImagesReady(props.imagesToUpload) ? 16 + this.MIN_COMPOSER_HEIGHT : 2 * (this.MIN_COMPOSER_HEIGHT + 8),
736
+ paddingHorizontal: 12,
737
+ paddingVertical: Platform.select({
738
+ ios: 8,
739
+ android: 6
740
+ })
660
741
  }]
661
- }, /*#__PURE__*/React.createElement(Composer, _extends({}, props, {
662
- //composerHeight={props.composerHeight}
742
+ }, /*#__PURE__*/React.createElement(TextInput, {
743
+ maxFontSizeMultiplier: 1.2,
663
744
  placeholder: "Type a message...",
664
- textInputStyle: styles.inputText,
665
- textInputProps: {
666
- onFocus: this.onFocusInput.bind(this),
667
- onBlur: this.onBlurInput.bind(this)
668
- }
669
- })))));
745
+ multiline: true,
746
+ value: props.text,
747
+ onChangeText: props.onTextChanged,
748
+ style: [styles.inputText, {
749
+ lineHeight: 20,
750
+ minHeight: this.MIN_COMPOSER_HEIGHT - 16,
751
+ maxHeight: 100
752
+ }],
753
+ onFocus: this.onFocusInput.bind(this),
754
+ onBlur: this.onBlurInput.bind(this),
755
+ placeholderTextColor: "#999"
756
+ }))));
670
757
  }
671
758
 
672
759
  /***
673
760
  * Main Render
674
761
  */
675
762
  renderChat() {
676
- const {
677
- tabCount,
678
- noTab
679
- } = this.props;
680
- const iosBottomOffset = (tabCount === 1 || noTab ? -10 : 52) + getBottomSpace();
681
- const minInputToolbarHeight = this.MIN_COMPOSER_HEIGHT + 16 + (this.state.replyingTo ? 30 : 0) + (this.hasImagesAttached() ? IMAGE_PREVIEW_AREA_HEIGHT : 0);
763
+ const minInputToolbarHeight = this.MIN_COMPOSER_HEIGHT + 32 + (this.state.replyingTo ? 38 : 0) + (this.hasImagesAttached() ? IMAGE_PREVIEW_AREA_HEIGHT : 0);
682
764
  return /*#__PURE__*/React.createElement(GiftedChat, {
765
+ isKeyboardInternallyHandled: false,
683
766
  alwaysShowSend: false,
684
- keyboardShouldPersistTaps: 'never',
767
+ keyboardShouldPersistTaps: "never",
685
768
  renderAvatarOnTop: true,
686
769
  minInputToolbarHeight: minInputToolbarHeight,
687
- bottomOffset: Platform.OS === 'android' ? 0 : iosBottomOffset,
770
+ minComposerHeight: this.MIN_COMPOSER_HEIGHT,
771
+ bottomOffset: 0,
688
772
  onSend: this.sendMessages.bind(this),
689
773
  messages: this.state.messages,
690
774
  user: this.state.currentUser,
@@ -712,8 +796,8 @@ class PlussChat extends Component {
712
796
  onLibrarySelected: this.onLibrarySelected,
713
797
  quality: 0.8,
714
798
  allowsEditing: false,
715
- fileName: 'imageInput',
716
- popupTitle: 'Add Image',
799
+ fileName: "imageInput",
800
+ popupTitle: "Add Image",
717
801
  userId: this.props.user.uid,
718
802
  multiple: true,
719
803
  allowVideo: true
@@ -729,8 +813,7 @@ class PlussChat extends Component {
729
813
  visible: imagePopupOpen,
730
814
  images: imagePopupSource,
731
815
  index: imagePopupIndex,
732
- onClose: this.closeGallery.bind(this),
733
- ref: "imagePopup"
816
+ onClose: this.closeGallery.bind(this)
734
817
  });
735
818
  }
736
819
  renderVideoPlayerPopup() {
@@ -756,22 +839,27 @@ class PlussChat extends Component {
756
839
  pdfCount: 1
757
840
  });
758
841
  }
842
+ renderDeleteConfirmPopup() {
843
+ return /*#__PURE__*/React.createElement(ConfirmPopup, {
844
+ visible: this.state.showDeleteMessageConfirm,
845
+ onConfirm: this.onConfirmDeleteMessage,
846
+ onCancel: this.onCancelDeleteMessage,
847
+ text: "Are you sure you want to delete this message?",
848
+ yesText: "Delete",
849
+ noText: "Cancel"
850
+ });
851
+ }
759
852
  render() {
760
- if (Platform.OS === 'android' && !this.props.noAndroidAvoid) {
761
- return /*#__PURE__*/React.createElement(KeyboardAvoidingView, {
762
- behavior: Platform.OS === 'ios' && 'padding',
763
- style: styles.chatContainer
764
- }, this.renderChat(), this.renderImageUploader(), this.renderImagePopup(), this.renderVideoPlayerPopup(), this.renderPDF());
765
- }
766
- return /*#__PURE__*/React.createElement(View, {
853
+ return /*#__PURE__*/React.createElement(KeyboardAvoidingView, {
854
+ behavior: "padding",
767
855
  style: styles.chatContainer
768
- }, this.renderChat(), this.renderImageUploader(), this.renderImagePopup(), this.renderVideoPlayerPopup(), this.renderPDF());
856
+ }, this.renderChat(), this.renderImageUploader(), this.renderImagePopup(), this.renderVideoPlayerPopup(), this.renderPDF(), this.renderDeleteConfirmPopup());
769
857
  }
770
858
  }
771
859
  const styles = {
772
860
  chatContainer: {
773
861
  flex: 1,
774
- justifyContent: 'center'
862
+ justifyContent: "center"
775
863
  },
776
864
  eventContainer: {
777
865
  left: {
@@ -779,20 +867,20 @@ const styles = {
779
867
  paddingLeft: 15,
780
868
  paddingRight: 15,
781
869
  paddingBottom: 5,
782
- flexDirection: 'row'
870
+ flexDirection: "row"
783
871
  },
784
872
  right: {
785
873
  paddingTop: 5,
786
874
  paddingLeft: 15,
787
875
  paddingRight: 15,
788
876
  paddingBottom: 5,
789
- flexDirection: 'row-reverse'
877
+ flexDirection: "row-reverse"
790
878
  }
791
879
  },
792
880
  eventImage: {
793
881
  width: 80,
794
882
  height: 80,
795
- resizeMode: 'cover',
883
+ resizeMode: "cover",
796
884
  borderRadius: 2
797
885
  },
798
886
  eventImageMargin: {
@@ -809,45 +897,45 @@ const styles = {
809
897
  },
810
898
  eventTitle: {
811
899
  fontSize: 12,
812
- fontFamily: 'sf-bold',
813
- backgroundColor: 'rgba(255,255,255,0)'
900
+ fontFamily: "sf-bold",
901
+ backgroundColor: "rgba(255,255,255,0)"
814
902
  },
815
903
  eventInfoAlign: {
816
904
  left: {
817
- textAlign: 'left'
905
+ textAlign: "left"
818
906
  },
819
907
  right: {
820
- textAlign: 'right'
908
+ textAlign: "right"
821
909
  }
822
910
  },
823
911
  messageImageLarge: {
824
912
  width: IMAGE_SIZE_LARGE,
825
913
  height: IMAGE_SIZE_LARGE,
826
914
  borderRadius: 2,
827
- alignSelf: 'center'
915
+ alignSelf: "center"
828
916
  },
829
917
  messageImageSmall: {
830
918
  width: IMAGE_SIZE_SMALL,
831
919
  height: IMAGE_SIZE_SMALL,
832
920
  borderRadius: 2,
833
- alignSelf: 'center',
921
+ alignSelf: "center",
834
922
  marginRight: IMAGE_MARGIN,
835
923
  marginBottom: IMAGE_MARGIN
836
924
  },
837
925
  eventDate: {
838
926
  fontSize: 12,
839
- fontFamily: 'sf-regular',
840
- backgroundColor: 'rgba(255,255,255,0)'
927
+ fontFamily: "sf-regular",
928
+ backgroundColor: "rgba(255,255,255,0)"
841
929
  },
842
930
  inputContainer: {
843
- backgroundColor: '#fff',
931
+ backgroundColor: "#fff",
844
932
  paddingVertical: 8,
845
933
  paddingHorizontal: 8
846
934
  },
847
935
  inputText: {
848
936
  color: TEXT_DARKEST,
849
937
  fontSize: 14,
850
- fontFamily: 'sf-medium'
938
+ fontFamily: "sf-medium"
851
939
  },
852
940
  input: {
853
941
  margin: 0,
@@ -860,12 +948,12 @@ const styles = {
860
948
  },
861
949
  composerInputWrapper: {
862
950
  flex: 1,
863
- flexDirection: 'row'
951
+ flexDirection: "row"
864
952
  },
865
953
  replyingTo: {
866
954
  minHeight: 30,
867
- flexDirection: 'row',
868
- alignItems: 'center',
955
+ flexDirection: "row",
956
+ alignItems: "center",
869
957
  borderBottomWidth: 1,
870
958
  borderBottomColor: LINEGREY,
871
959
  marginBottom: 8
@@ -874,34 +962,34 @@ const styles = {
874
962
  marginLeft: 10
875
963
  },
876
964
  replyingRemoveContainer: {
877
- justifyContent: 'center',
878
- alignItems: 'center',
965
+ justifyContent: "center",
966
+ alignItems: "center",
879
967
  borderRadius: 10,
880
968
  width: 20,
881
969
  height: 20,
882
970
  borderWidth: 2,
883
- borderColor: '#fff'
971
+ borderColor: "#fff"
884
972
  },
885
973
  replyingRemoveIcon: {
886
974
  fontSize: 10,
887
- color: '#fff',
975
+ color: "#fff",
888
976
  marginBottom: 1
889
977
  },
890
978
  sendContainer: {
891
- position: 'absolute',
979
+ position: "absolute",
892
980
  top: 0,
893
981
  right: 0,
894
982
  height: 30,
895
983
  width: 30,
896
- alignItems: 'center',
897
- justifyContent: 'center',
898
- backgroundColor: '#fff'
984
+ alignItems: "center",
985
+ justifyContent: "center",
986
+ backgroundColor: "#fff"
899
987
  },
900
988
  send: {
901
989
  fontSize: 15,
902
990
  color: TEXT_BLUEGREY,
903
991
  fontSize: 24,
904
- textAlign: 'center'
992
+ textAlign: "center"
905
993
  },
906
994
  accessory: {
907
995
  height: IMAGE_PREVIEW_AREA_HEIGHT,
@@ -923,50 +1011,50 @@ const styles = {
923
1011
  borderRadius: 2
924
1012
  },
925
1013
  settingDropDownOpen: {
926
- height: 'auto'
1014
+ height: "auto"
927
1015
  },
928
1016
  imagesContainer: {
929
1017
  marginLeft: 10,
930
1018
  marginRight: 10,
931
- flexDirection: 'row',
932
- flexWrap: 'wrap'
1019
+ flexDirection: "row",
1020
+ flexWrap: "wrap"
933
1021
  },
934
1022
  uploadImagesContainer: {
935
- flexDirection: 'row',
936
- overflow: 'visible'
1023
+ flexDirection: "row",
1024
+ overflow: "visible"
937
1025
  },
938
1026
  previewItemRemoveButton: {
939
- position: 'absolute',
1027
+ position: "absolute",
940
1028
  top: 0,
941
1029
  right: 0
942
1030
  },
943
1031
  previewItemRemoveContainer: {
944
- justifyContent: 'center',
945
- alignItems: 'center',
1032
+ justifyContent: "center",
1033
+ alignItems: "center",
946
1034
  borderRadius: 10,
947
1035
  width: 20,
948
1036
  height: 20,
949
1037
  borderWidth: 2,
950
- borderColor: '#fff'
1038
+ borderColor: "#fff"
951
1039
  },
952
1040
  previewItemRemoveIcon: {
953
1041
  fontSize: 10,
954
- color: '#fff',
1042
+ color: "#fff",
955
1043
  marginBottom: 1
956
1044
  },
957
1045
  imagePlayContainer: {
958
- position: 'absolute',
1046
+ position: "absolute",
959
1047
  top: 0,
960
1048
  left: 0,
961
1049
  right: 0,
962
1050
  bottom: 0,
963
- alignItems: 'center',
964
- justifyContent: 'center'
1051
+ alignItems: "center",
1052
+ justifyContent: "center"
965
1053
  },
966
1054
  imageControlIcon: {
967
- color: '#fff',
1055
+ color: "#fff",
968
1056
  fontSize: 20,
969
- textShadowColor: 'rgba(0,0,0,0.3)',
1057
+ textShadowColor: "rgba(0,0,0,0.3)",
970
1058
  textShadowOffset: {
971
1059
  width: 2,
972
1060
  height: 2