@plusscommunities/pluss-core-app 8.0.0 → 8.0.1-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 +15 -15
  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 +43 -37
  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 +50 -50
  76. package/dist/module/components/DocumentUploader.js.map +1 -1
  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 +211 -73
  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 +116 -96
  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 +31 -31
  124. package/dist/module/components/MediaPlayer.js.map +1 -1
  125. package/dist/module/components/MiddlePopup.js +17 -11
  126. package/dist/module/components/MiddlePopup.js.map +1 -1
  127. package/dist/module/components/PDFPopup.js +52 -39
  128. package/dist/module/components/PDFPopup.js.map +1 -1
  129. package/dist/module/components/PlussChat.js +168 -149
  130. package/dist/module/components/PlussChat.js.map +1 -1
  131. package/dist/module/components/PlussChatMessage.js +42 -42
  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 +78 -43
  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 -58
  176. package/dist/module/components/index.js.map +1 -1
  177. package/dist/module/components/react-native-expo-image-cropper/ExpoImageManipulator.js +94 -64
  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 +15 -10
  182. package/dist/module/config.js.map +1 -1
  183. package/dist/module/constants.js +3 -4
  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 +11 -10
  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 +6 -6
  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 +71 -68
  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 +96 -86
  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 +370 -309
  242. package/src/components/CommentSection.js +974 -781
  243. package/src/components/ConfirmPopup.js +141 -110
  244. package/src/components/ConfirmationPopup.js +80 -69
  245. package/src/components/DocumentUploader.js +245 -215
  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 -221
  262. package/src/components/ImageUploadProgress.js +49 -41
  263. package/src/components/ImageUploader.js +968 -797
  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 +62 -33
  271. package/src/components/PDFPopup.js +212 -159
  272. package/src/components/PlussChat.js +1224 -1025
  273. package/src/components/PlussChatMessage.js +329 -298
  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 +185 -134
  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 -58
  296. package/src/components/react-native-expo-image-cropper/ExpoImageManipulator.js +444 -359
  297. package/src/components/react-native-expo-image-cropper/ImageCropOverlay.js +420 -324
  298. package/src/config.js +26 -21
  299. package/src/constants.js +8 -10
  300. package/src/helper.js +469 -438
  301. package/src/index.js +24 -12
  302. package/src/js/images/detectFaces.js +28 -21
  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 +32 -32
  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 -7
  320. package/src/fonts/pluss60-icons.json +0 -1097
@@ -1 +1 @@
1
- {"version":3,"names":["PropTypes","React","View","StyleSheet","Text","TouchableOpacity","ViewPropTypes","_","Avatar","Bubble","SystemMessage","Day","utils","TEXT_MID","TEXT_LIGHT","TEXT_DARK","TEXT_SUPER_LIGHT","getFirstName","TextStyle","isSameUser","isSameDay","PlussChatMessage","Component","getInnerComponentProps","containerStyle","props","isCurrentUser","user","_id","currentMessage","renderDay","createdAt","dayProps","createElement","renderBubble","bubbleProps","renderSystemMessage","systemMessageProps","renderAvatar","showUserAvatar","avatarProps","avatar","isEmpty","_extends","imageStyle","left","width","height","borderRadius","right","marginRight","marginLeft","renderName","nameProps","name","nameText","replyingTo","style","styles","position","renderReply","deleted","replyBubble","replyBubbleInner","replyBubbleText","text","substr","renderReplyButton","replyContainer","onPress","onPressReply","type","color","colourBrandingMain","renderDeleteButton","onPressDelete","deleteContainer","render","sameUserAsLast","previousMessage","sameUser","nextMessage","system","container","marginBottom","inverted","actionButtons","create","flexDirection","alignItems","justifyContent","fontFamily","fontSize","textAlign","paddingLeft","padding","paddingBottom","opacity","backgroundColor","paddingRight","alignSelf","defaultProps","undefined","propTypes","func","bool","oneOf","object","shape"],"sources":["PlussChatMessage.js"],"sourcesContent":["/* eslint no-use-before-define: [\"error\", { \"variables\": false }], react-native/no-inline-styles: 0 */\n\n// NOTE:\n// This is a modified version of react-native-gifted-chat Message component\n\n// Original source:\n// https://github.com/FaridSafi/react-native-gifted-chat/blob/master/src/Message.js\n\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport { View, StyleSheet, Text, TouchableOpacity } from 'react-native';\nimport { ViewPropTypes } from 'deprecated-react-native-prop-types';\nimport _ from 'lodash';\n\nimport { Avatar, Bubble, SystemMessage, Day, utils } from 'react-native-gifted-chat';\nimport { TEXT_MID, TEXT_LIGHT, TEXT_DARK, TEXT_SUPER_LIGHT } from '../colours';\nimport { getFirstName } from '../helper';\nimport { TextStyle } from './TextStyle';\n\nconst isSameUser = utils.isSameUser;\nconst isSameDay = utils.isSameDay;\n\nexport default class PlussChatMessage extends React.Component {\n getInnerComponentProps() {\n const { containerStyle, ...props } = this.props;\n return {\n ...props,\n isSameUser,\n isSameDay,\n };\n }\n\n isCurrentUser() {\n if (this.props.user._id === this.props.currentMessage.user._id) {\n return true;\n }\n return false;\n }\n\n renderDay() {\n if (this.props.currentMessage.createdAt) {\n const dayProps = this.getInnerComponentProps();\n if (this.props.renderDay) {\n return this.props.renderDay(dayProps);\n }\n return <Day {...dayProps} />;\n }\n return null;\n }\n\n renderBubble() {\n const bubbleProps = this.getInnerComponentProps();\n if (this.props.renderBubble) {\n return this.props.renderBubble(bubbleProps);\n }\n return <Bubble {...bubbleProps} />;\n }\n\n renderSystemMessage() {\n const systemMessageProps = this.getInnerComponentProps();\n if (this.props.renderSystemMessage) {\n return this.props.renderSystemMessage(systemMessageProps);\n }\n return <SystemMessage {...systemMessageProps} />;\n }\n\n renderAvatar() {\n if (this.isCurrentUser() && !this.props.showUserAvatar) {\n return null;\n }\n const avatarProps = this.getInnerComponentProps();\n const { currentMessage } = avatarProps;\n if (currentMessage.user.avatar === null || _.isEmpty(currentMessage.user.avatar)) {\n return null;\n }\n return (\n <Avatar\n {...avatarProps}\n imageStyle={{\n left: {\n width: 30,\n height: 30,\n borderRadius: 15,\n },\n right: {\n width: 30,\n height: 30,\n borderRadius: 15,\n },\n }}\n containerStyle={{\n left: {\n marginRight: 10,\n },\n right: {\n marginLeft: 10,\n },\n }}\n />\n );\n }\n\n renderName() {\n const nameProps = this.getInnerComponentProps();\n const { currentMessage } = nameProps;\n if (currentMessage.user.name === null) {\n return null;\n }\n let nameText = this.isCurrentUser() ? 'Me' : getFirstName(currentMessage.user.name);\n if (\n this.props.currentMessage &&\n this.props.currentMessage.replyingTo &&\n this.props.currentMessage.replyingTo.user &&\n !_.isEmpty(this.props.currentMessage.replyingTo.user.name)\n ) {\n nameText = `${nameText} replying to ${this.props.currentMessage.replyingTo.user.name}`;\n }\n return <Text style={[styles[this.props.position].name]}>{nameText}</Text>;\n }\n\n renderReply() {\n // Don't show reply quote for deleted messages\n if (!this.props.currentMessage || !this.props.currentMessage.replyingTo || this.props.currentMessage.deleted) {\n return null;\n }\n return (\n <View style={styles[this.props.position].replyBubble}>\n <View style={styles[this.props.position].replyBubbleInner}>\n <Text style={styles[this.props.position].replyBubbleText}>\n {(this.props.currentMessage.replyingTo.text || '').substr(0, 100)}\n </Text>\n </View>\n </View>\n );\n }\n\n renderReplyButton() {\n // Don't show reply button for deleted messages\n if (this.props.currentMessage.deleted) {\n return null;\n }\n return (\n <TouchableOpacity style={styles[this.props.position].replyContainer} onPress={this.props.onPressReply}>\n <TextStyle type=\"button\" style={{ color: this.props.colourBrandingMain }}>\n Reply\n </TextStyle>\n </TouchableOpacity>\n );\n }\n\n renderDeleteButton() {\n // Only show delete button if handler is provided and for current user's messages that aren't already deleted\n if (!this.props.onPressDelete || !this.isCurrentUser() || this.props.currentMessage.deleted) {\n return null;\n }\n return (\n <TouchableOpacity style={styles[this.props.position].deleteContainer} onPress={this.props.onPressDelete}>\n <TextStyle type=\"button\" style={{ color: this.props.colourBrandingMain }}>\n Delete\n </TextStyle>\n </TouchableOpacity>\n );\n }\n\n render() {\n const sameUserAsLast = isSameUser(this.props.currentMessage, this.props.previousMessage);\n const sameUser = isSameUser(this.props.currentMessage, this.props.nextMessage);\n return (\n <View>\n {this.renderDay()}\n {this.props.currentMessage.system ? (\n this.renderSystemMessage()\n ) : (\n <View>\n {sameUserAsLast ? null : this.renderName()}\n <View\n style={[\n styles[this.props.position].container,\n { marginBottom: sameUser ? 2 : 10 },\n !this.props.inverted && { marginBottom: 2 },\n this.props.containerStyle[this.props.position],\n ]}\n >\n {this.props.position === 'left' ? this.renderAvatar() : null}\n <View>\n {this.renderReply()}\n {this.renderBubble()}\n <View style={styles[this.props.position].actionButtons}>\n {this.renderReplyButton()}\n {this.renderDeleteButton()}\n </View>\n </View>\n {this.props.position === 'right' ? this.renderAvatar() : null}\n </View>\n </View>\n )}\n </View>\n );\n }\n}\n\nconst styles = {\n left: StyleSheet.create({\n container: {\n flexDirection: 'row',\n alignItems: 'flex-end',\n justifyContent: 'flex-start',\n marginLeft: 10,\n marginRight: 0,\n },\n name: {\n fontFamily: 'sf-regular',\n color: TEXT_LIGHT,\n fontSize: 14,\n textAlign: 'left',\n marginLeft: 50,\n marginBottom: 5,\n },\n replyBubble: {\n flexDirection: 'row',\n alignItems: 'flex-end',\n justifyContent: 'flex-start',\n paddingLeft: 20,\n },\n replyBubbleInner: {\n padding: 4,\n paddingBottom: 16,\n marginBottom: -12,\n borderRadius: 4,\n opacity: 0.7,\n backgroundColor: TEXT_SUPER_LIGHT,\n },\n replyBubbleText: {\n fontFamily: 'sf-regular',\n color: TEXT_DARK,\n fontSize: 13,\n textAlign: 'left',\n },\n replyContainer: {\n paddingLeft: 20,\n paddingRight: 10,\n },\n deleteContainer: {\n paddingLeft: 10,\n },\n actionButtons: {\n flexDirection: 'row',\n alignItems: 'center',\n },\n }),\n right: StyleSheet.create({\n container: {\n flexDirection: 'row',\n alignItems: 'flex-end',\n justifyContent: 'flex-end',\n marginLeft: 0,\n marginRight: 10,\n },\n name: {\n fontFamily: 'sf-regular',\n color: TEXT_LIGHT,\n fontSize: 14,\n textAlign: 'right',\n marginRight: 10,\n marginBottom: 5,\n },\n replyBubble: {\n flexDirection: 'row',\n alignItems: 'flex-end',\n justifyContent: 'flex-end',\n paddingRight: 10,\n },\n replyBubbleInner: {\n padding: 4,\n paddingBottom: 16,\n marginBottom: -12,\n borderRadius: 4,\n opacity: 0.7,\n backgroundColor: TEXT_SUPER_LIGHT,\n },\n replyBubbleText: {\n fontFamily: 'sf-regular',\n color: TEXT_DARK,\n fontSize: 13,\n textAlign: 'right',\n },\n replyContainer: {\n paddingRight: 10,\n },\n deleteContainer: {\n paddingRight: 10,\n },\n actionButtons: {\n flexDirection: 'row',\n alignItems: 'center',\n alignSelf: 'flex-end',\n },\n }),\n};\n\nPlussChatMessage.defaultProps = {\n renderAvatar: undefined,\n renderBubble: null,\n renderDay: null,\n renderSystemMessage: null,\n position: 'left',\n currentMessage: {},\n nextMessage: {},\n previousMessage: {},\n user: {},\n containerStyle: {},\n showUserAvatar: true,\n inverted: true,\n};\n\nPlussChatMessage.propTypes = {\n renderAvatar: PropTypes.func,\n showUserAvatar: PropTypes.bool,\n renderBubble: PropTypes.func,\n renderDay: PropTypes.func,\n renderSystemMessage: PropTypes.func,\n position: PropTypes.oneOf(['left', 'right']),\n currentMessage: PropTypes.object,\n nextMessage: PropTypes.object,\n previousMessage: PropTypes.object,\n user: PropTypes.object,\n inverted: PropTypes.bool,\n containerStyle: PropTypes.shape({\n left: ViewPropTypes.style,\n right: ViewPropTypes.style,\n }),\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["PropTypes","React","View","StyleSheet","TouchableOpacity","ViewPropTypes","_","Avatar","Bubble","SystemMessage","Day","utils","TEXT_MID","TEXT_LIGHT","TEXT_DARK","TEXT_SUPER_LIGHT","getFirstName","Text","isSameUser","isSameDay","PlussChatMessage","Component","getInnerComponentProps","containerStyle","props","isCurrentUser","user","_id","currentMessage","renderDay","createdAt","dayProps","createElement","renderBubble","bubbleProps","renderSystemMessage","systemMessageProps","renderAvatar","showUserAvatar","avatarProps","avatar","isEmpty","_extends","imageStyle","left","width","height","borderRadius","right","marginRight","marginLeft","renderName","nameProps","name","nameText","replyingTo","style","styles","position","renderReply","deleted","replyBubble","replyBubbleInner","replyBubbleText","text","substr","renderReplyButton","replyContainer","onPress","onPressReply","type","color","colourBrandingMain","renderDeleteButton","onPressDelete","deleteContainer","render","sameUserAsLast","previousMessage","sameUser","nextMessage","system","container","marginBottom","inverted","actionButtons","create","flexDirection","alignItems","justifyContent","fontFamily","fontSize","textAlign","paddingLeft","padding","paddingBottom","opacity","backgroundColor","paddingRight","alignSelf","defaultProps","undefined","propTypes","func","bool","oneOf","object","shape"],"sources":["PlussChatMessage.js"],"sourcesContent":["/* eslint no-use-before-define: [\"error\", { \"variables\": false }], react-native/no-inline-styles: 0 */\n\n// NOTE:\n// This is a modified version of react-native-gifted-chat Message component\n\n// Original source:\n// https://github.com/FaridSafi/react-native-gifted-chat/blob/master/src/Message.js\n\nimport PropTypes from \"prop-types\";\nimport React from \"react\";\nimport { View, StyleSheet, TouchableOpacity } from \"react-native\";\nimport { ViewPropTypes } from \"deprecated-react-native-prop-types\";\nimport _ from \"lodash\";\n\nimport {\n\tAvatar,\n\tBubble,\n\tSystemMessage,\n\tDay,\n\tutils,\n} from \"react-native-gifted-chat\";\nimport { TEXT_MID, TEXT_LIGHT, TEXT_DARK, TEXT_SUPER_LIGHT } from \"../colours\";\nimport { getFirstName } from \"../helper\";\nimport { Text } from \".\";\n\nconst isSameUser = utils.isSameUser;\nconst isSameDay = utils.isSameDay;\n\nexport default class PlussChatMessage extends React.Component {\n\tgetInnerComponentProps() {\n\t\tconst { containerStyle, ...props } = this.props;\n\t\treturn {\n\t\t\t...props,\n\t\t\tisSameUser,\n\t\t\tisSameDay,\n\t\t};\n\t}\n\n\tisCurrentUser() {\n\t\tif (this.props.user._id === this.props.currentMessage.user._id) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\trenderDay() {\n\t\tif (this.props.currentMessage.createdAt) {\n\t\t\tconst dayProps = this.getInnerComponentProps();\n\t\t\tif (this.props.renderDay) {\n\t\t\t\treturn this.props.renderDay(dayProps);\n\t\t\t}\n\t\t\treturn <Day {...dayProps} />;\n\t\t}\n\t\treturn null;\n\t}\n\n\trenderBubble() {\n\t\tconst bubbleProps = this.getInnerComponentProps();\n\t\tif (this.props.renderBubble) {\n\t\t\treturn this.props.renderBubble(bubbleProps);\n\t\t}\n\t\treturn <Bubble {...bubbleProps} />;\n\t}\n\n\trenderSystemMessage() {\n\t\tconst systemMessageProps = this.getInnerComponentProps();\n\t\tif (this.props.renderSystemMessage) {\n\t\t\treturn this.props.renderSystemMessage(systemMessageProps);\n\t\t}\n\t\treturn <SystemMessage {...systemMessageProps} />;\n\t}\n\n\trenderAvatar() {\n\t\tif (this.isCurrentUser() && !this.props.showUserAvatar) {\n\t\t\treturn null;\n\t\t}\n\t\tconst avatarProps = this.getInnerComponentProps();\n\t\tconst { currentMessage } = avatarProps;\n\t\tif (\n\t\t\tcurrentMessage.user.avatar === null ||\n\t\t\t_.isEmpty(currentMessage.user.avatar)\n\t\t) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<Avatar\n\t\t\t\t{...avatarProps}\n\t\t\t\timageStyle={{\n\t\t\t\t\tleft: {\n\t\t\t\t\t\twidth: 30,\n\t\t\t\t\t\theight: 30,\n\t\t\t\t\t\tborderRadius: 15,\n\t\t\t\t\t},\n\t\t\t\t\tright: {\n\t\t\t\t\t\twidth: 30,\n\t\t\t\t\t\theight: 30,\n\t\t\t\t\t\tborderRadius: 15,\n\t\t\t\t\t},\n\t\t\t\t}}\n\t\t\t\tcontainerStyle={{\n\t\t\t\t\tleft: {\n\t\t\t\t\t\tmarginRight: 10,\n\t\t\t\t\t},\n\t\t\t\t\tright: {\n\t\t\t\t\t\tmarginLeft: 10,\n\t\t\t\t\t},\n\t\t\t\t}}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderName() {\n\t\tconst nameProps = this.getInnerComponentProps();\n\t\tconst { currentMessage } = nameProps;\n\t\tif (currentMessage.user.name === null) {\n\t\t\treturn null;\n\t\t}\n\t\tlet nameText = this.isCurrentUser()\n\t\t\t? \"Me\"\n\t\t\t: getFirstName(currentMessage.user.name);\n\t\tif (\n\t\t\tthis.props.currentMessage &&\n\t\t\tthis.props.currentMessage.replyingTo &&\n\t\t\tthis.props.currentMessage.replyingTo.user &&\n\t\t\t!_.isEmpty(this.props.currentMessage.replyingTo.user.name)\n\t\t) {\n\t\t\tnameText = `${nameText} replying to ${this.props.currentMessage.replyingTo.user.name}`;\n\t\t}\n\t\treturn <Text style={[styles[this.props.position].name]}>{nameText}</Text>;\n\t}\n\n\trenderReply() {\n\t\t// Don't show reply quote for deleted messages\n\t\tif (\n\t\t\t!this.props.currentMessage ||\n\t\t\t!this.props.currentMessage.replyingTo ||\n\t\t\tthis.props.currentMessage.deleted\n\t\t) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<View style={styles[this.props.position].replyBubble}>\n\t\t\t\t<View style={styles[this.props.position].replyBubbleInner}>\n\t\t\t\t\t<Text style={styles[this.props.position].replyBubbleText}>\n\t\t\t\t\t\t{(this.props.currentMessage.replyingTo.text || \"\").substr(0, 100)}\n\t\t\t\t\t</Text>\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderReplyButton() {\n\t\t// Don't show reply button for deleted messages\n\t\tif (this.props.currentMessage.deleted) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<TouchableOpacity\n\t\t\t\tstyle={styles[this.props.position].replyContainer}\n\t\t\t\tonPress={this.props.onPressReply}\n\t\t\t>\n\t\t\t\t<Text type=\"button\" style={{ color: this.props.colourBrandingMain }}>\n\t\t\t\t\tReply\n\t\t\t\t</Text>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t}\n\n\trenderDeleteButton() {\n\t\t// Only show delete button if handler is provided and for current user's messages that aren't already deleted\n\t\tif (\n\t\t\t!this.props.onPressDelete ||\n\t\t\t!this.isCurrentUser() ||\n\t\t\tthis.props.currentMessage.deleted\n\t\t) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<TouchableOpacity\n\t\t\t\tstyle={styles[this.props.position].deleteContainer}\n\t\t\t\tonPress={this.props.onPressDelete}\n\t\t\t>\n\t\t\t\t<Text type=\"button\" style={{ color: this.props.colourBrandingMain }}>\n\t\t\t\t\tDelete\n\t\t\t\t</Text>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst sameUserAsLast = isSameUser(\n\t\t\tthis.props.currentMessage,\n\t\t\tthis.props.previousMessage,\n\t\t);\n\t\tconst sameUser = isSameUser(\n\t\t\tthis.props.currentMessage,\n\t\t\tthis.props.nextMessage,\n\t\t);\n\t\treturn (\n\t\t\t<View>\n\t\t\t\t{this.renderDay()}\n\t\t\t\t{this.props.currentMessage.system ? (\n\t\t\t\t\tthis.renderSystemMessage()\n\t\t\t\t) : (\n\t\t\t\t\t<View>\n\t\t\t\t\t\t{sameUserAsLast ? null : this.renderName()}\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\tstyles[this.props.position].container,\n\t\t\t\t\t\t\t\t{ marginBottom: sameUser ? 2 : 10 },\n\t\t\t\t\t\t\t\t!this.props.inverted && { marginBottom: 2 },\n\t\t\t\t\t\t\t\tthis.props.containerStyle[this.props.position],\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{this.props.position === \"left\" ? this.renderAvatar() : null}\n\t\t\t\t\t\t\t<View>\n\t\t\t\t\t\t\t\t{this.renderReply()}\n\t\t\t\t\t\t\t\t{this.renderBubble()}\n\t\t\t\t\t\t\t\t<View style={styles[this.props.position].actionButtons}>\n\t\t\t\t\t\t\t\t\t{this.renderReplyButton()}\n\t\t\t\t\t\t\t\t\t{this.renderDeleteButton()}\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t{this.props.position === \"right\" ? this.renderAvatar() : null}\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tleft: StyleSheet.create({\n\t\tcontainer: {\n\t\t\tflexDirection: \"row\",\n\t\t\talignItems: \"flex-end\",\n\t\t\tjustifyContent: \"flex-start\",\n\t\t\tmarginLeft: 10,\n\t\t\tmarginRight: 0,\n\t\t},\n\t\tname: {\n\t\t\tfontFamily: \"sf-regular\",\n\t\t\tcolor: TEXT_LIGHT,\n\t\t\tfontSize: 14,\n\t\t\ttextAlign: \"left\",\n\t\t\tmarginLeft: 50,\n\t\t\tmarginBottom: 5,\n\t\t},\n\t\treplyBubble: {\n\t\t\tflexDirection: \"row\",\n\t\t\talignItems: \"flex-end\",\n\t\t\tjustifyContent: \"flex-start\",\n\t\t\tpaddingLeft: 20,\n\t\t},\n\t\treplyBubbleInner: {\n\t\t\tpadding: 4,\n\t\t\tpaddingBottom: 16,\n\t\t\tmarginBottom: -12,\n\t\t\tborderRadius: 4,\n\t\t\topacity: 0.7,\n\t\t\tbackgroundColor: TEXT_SUPER_LIGHT,\n\t\t},\n\t\treplyBubbleText: {\n\t\t\tfontFamily: \"sf-regular\",\n\t\t\tcolor: TEXT_DARK,\n\t\t\tfontSize: 13,\n\t\t\ttextAlign: \"left\",\n\t\t},\n\t\treplyContainer: {\n\t\t\tpaddingLeft: 20,\n\t\t\tpaddingRight: 10,\n\t\t},\n\t\tdeleteContainer: {\n\t\t\tpaddingLeft: 10,\n\t\t},\n\t\tactionButtons: {\n\t\t\tflexDirection: \"row\",\n\t\t\talignItems: \"center\",\n\t\t},\n\t}),\n\tright: StyleSheet.create({\n\t\tcontainer: {\n\t\t\tflexDirection: \"row\",\n\t\t\talignItems: \"flex-end\",\n\t\t\tjustifyContent: \"flex-end\",\n\t\t\tmarginLeft: 0,\n\t\t\tmarginRight: 10,\n\t\t},\n\t\tname: {\n\t\t\tfontFamily: \"sf-regular\",\n\t\t\tcolor: TEXT_LIGHT,\n\t\t\tfontSize: 14,\n\t\t\ttextAlign: \"right\",\n\t\t\tmarginRight: 10,\n\t\t\tmarginBottom: 5,\n\t\t},\n\t\treplyBubble: {\n\t\t\tflexDirection: \"row\",\n\t\t\talignItems: \"flex-end\",\n\t\t\tjustifyContent: \"flex-end\",\n\t\t\tpaddingRight: 10,\n\t\t},\n\t\treplyBubbleInner: {\n\t\t\tpadding: 4,\n\t\t\tpaddingBottom: 16,\n\t\t\tmarginBottom: -12,\n\t\t\tborderRadius: 4,\n\t\t\topacity: 0.7,\n\t\t\tbackgroundColor: TEXT_SUPER_LIGHT,\n\t\t},\n\t\treplyBubbleText: {\n\t\t\tfontFamily: \"sf-regular\",\n\t\t\tcolor: TEXT_DARK,\n\t\t\tfontSize: 13,\n\t\t\ttextAlign: \"right\",\n\t\t},\n\t\treplyContainer: {\n\t\t\tpaddingRight: 10,\n\t\t},\n\t\tdeleteContainer: {\n\t\t\tpaddingRight: 10,\n\t\t},\n\t\tactionButtons: {\n\t\t\tflexDirection: \"row\",\n\t\t\talignItems: \"center\",\n\t\t\talignSelf: \"flex-end\",\n\t\t},\n\t}),\n};\n\nPlussChatMessage.defaultProps = {\n\trenderAvatar: undefined,\n\trenderBubble: null,\n\trenderDay: null,\n\trenderSystemMessage: null,\n\tposition: \"left\",\n\tcurrentMessage: {},\n\tnextMessage: {},\n\tpreviousMessage: {},\n\tuser: {},\n\tcontainerStyle: {},\n\tshowUserAvatar: true,\n\tinverted: true,\n};\n\nPlussChatMessage.propTypes = {\n\trenderAvatar: PropTypes.func,\n\tshowUserAvatar: PropTypes.bool,\n\trenderBubble: PropTypes.func,\n\trenderDay: PropTypes.func,\n\trenderSystemMessage: PropTypes.func,\n\tposition: PropTypes.oneOf([\"left\", \"right\"]),\n\tcurrentMessage: PropTypes.object,\n\tnextMessage: PropTypes.object,\n\tpreviousMessage: PropTypes.object,\n\tuser: PropTypes.object,\n\tinverted: PropTypes.bool,\n\tcontainerStyle: PropTypes.shape({\n\t\tleft: ViewPropTypes.style,\n\t\tright: ViewPropTypes.style,\n\t}),\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,27 +1,28 @@
1
- import React from 'react';
2
- import { StyleSheet, Text, View } from 'react-native';
3
- import moment from 'moment';
1
+ import React from "react";
2
+ import { StyleSheet, View } from "react-native";
3
+ import { Text } from "./Text";
4
+ import moment from "moment";
4
5
  export default class PlussChatTime extends React.Component {
5
6
  shouldRenderDay(curTime, prevTime) {
6
- return !curTime.isSame(prevTime, 'd');
7
+ return !curTime.isSame(prevTime, "d");
7
8
  }
8
9
  shouldRenderTime(curTime, prevTime) {
9
- return curTime.diff(prevTime, 'm') >= 10;
10
+ return curTime.diff(prevTime, "m") >= 10;
10
11
  }
11
12
  render() {
12
13
  const curMesTime = moment(this.props.currentMessage.createdAt).local();
13
14
  const prevTime = moment(this.props.previousMessage.createdAt).local();
14
15
  const now = moment().local();
15
16
  if (this.shouldRenderDay(curMesTime, prevTime) || this.shouldRenderTime(curMesTime, prevTime)) {
16
- let timestamp = '';
17
- if (!now.isSame(curMesTime, 'd')) {
18
- timestamp += curMesTime.format('ddd, D MMM');
19
- if (!now.isSame(curMesTime, 'y')) {
20
- timestamp += ` ${curMesTime.format('YYYY')}`;
17
+ let timestamp = "";
18
+ if (!now.isSame(curMesTime, "d")) {
19
+ timestamp += curMesTime.format("ddd, D MMM");
20
+ if (!now.isSame(curMesTime, "y")) {
21
+ timestamp += ` ${curMesTime.format("YYYY")}`;
21
22
  }
22
- timestamp += '';
23
+ timestamp += "";
23
24
  }
24
- timestamp += curMesTime.format('h:mma');
25
+ timestamp += curMesTime.format("h:mma");
25
26
  return /*#__PURE__*/React.createElement(View, {
26
27
  style: [styles.container, this.props.containerStyle]
27
28
  }, /*#__PURE__*/React.createElement(View, {
@@ -35,8 +36,8 @@ export default class PlussChatTime extends React.Component {
35
36
  }
36
37
  const styles = StyleSheet.create({
37
38
  container: {
38
- alignItems: 'center',
39
- justifyContent: 'center',
39
+ alignItems: "center",
40
+ justifyContent: "center",
40
41
  marginTop: 5,
41
42
  marginBottom: 10
42
43
  },
@@ -49,10 +50,10 @@ const styles = StyleSheet.create({
49
50
  // paddingBottom: 5,
50
51
  },
51
52
  text: {
52
- backgroundColor: 'transparent',
53
- color: '#b2b2b2',
53
+ backgroundColor: "transparent",
54
+ color: "#b2b2b2",
54
55
  fontSize: 12,
55
- fontWeight: '600'
56
+ fontWeight: "600"
56
57
  }
57
58
  });
58
59
  //# sourceMappingURL=PlussChatTime.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","StyleSheet","Text","View","moment","PlussChatTime","Component","shouldRenderDay","curTime","prevTime","isSame","shouldRenderTime","diff","render","curMesTime","props","currentMessage","createdAt","local","previousMessage","now","timestamp","format","createElement","style","styles","container","containerStyle","wrapper","wrapperStyle","text","textStyle","create","alignItems","justifyContent","marginTop","marginBottom","backgroundColor","color","fontSize","fontWeight"],"sources":["PlussChatTime.js"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, Text, View } from 'react-native';\n\nimport moment from 'moment';\n\nexport default class PlussChatTime extends React.Component {\n shouldRenderDay(curTime, prevTime) {\n return !curTime.isSame(prevTime, 'd');\n }\n\n shouldRenderTime(curTime, prevTime) {\n return curTime.diff(prevTime, 'm') >= 10;\n }\n\n render() {\n const curMesTime = moment(this.props.currentMessage.createdAt).local();\n const prevTime = moment(this.props.previousMessage.createdAt).local();\n const now = moment().local();\n\n if (this.shouldRenderDay(curMesTime, prevTime) || this.shouldRenderTime(curMesTime, prevTime)) {\n let timestamp = '';\n if (!now.isSame(curMesTime, 'd')) {\n timestamp += curMesTime.format('ddd, D MMM');\n if (!now.isSame(curMesTime, 'y')) {\n timestamp += ` ${curMesTime.format('YYYY')}`;\n }\n timestamp += '';\n }\n timestamp += curMesTime.format('h:mma');\n return (\n <View style={[styles.container, this.props.containerStyle]}>\n <View style={[styles.wrapper, this.props.wrapperStyle]}>\n <Text style={[styles.text, this.props.textStyle]}>{timestamp}</Text>\n </View>\n </View>\n );\n }\n return null;\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n justifyContent: 'center',\n marginTop: 5,\n marginBottom: 10,\n },\n wrapper: {\n // backgroundColor: '#ccc',\n // borderRadius: 10,\n // paddingLeft: 10,\n // paddingRight: 10,\n // paddingTop: 5,\n // paddingBottom: 5,\n },\n text: {\n backgroundColor: 'transparent',\n color: '#b2b2b2',\n fontSize: 12,\n fontWeight: '600',\n },\n});\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,EAAEC,IAAI,EAAEC,IAAI,QAAQ,cAAc;AAErD,OAAOC,MAAM,MAAM,QAAQ;AAE3B,eAAe,MAAMC,aAAa,SAASL,KAAK,CAACM,SAAS,CAAC;EACzDC,eAAeA,CAACC,OAAO,EAAEC,QAAQ,EAAE;IACjC,OAAO,CAACD,OAAO,CAACE,MAAM,CAACD,QAAQ,EAAE,GAAG,CAAC;EACvC;EAEAE,gBAAgBA,CAACH,OAAO,EAAEC,QAAQ,EAAE;IAClC,OAAOD,OAAO,CAACI,IAAI,CAACH,QAAQ,EAAE,GAAG,CAAC,IAAI,EAAE;EAC1C;EAEAI,MAAMA,CAAA,EAAG;IACP,MAAMC,UAAU,GAAGV,MAAM,CAAC,IAAI,CAACW,KAAK,CAACC,cAAc,CAACC,SAAS,CAAC,CAACC,KAAK,CAAC,CAAC;IACtE,MAAMT,QAAQ,GAAGL,MAAM,CAAC,IAAI,CAACW,KAAK,CAACI,eAAe,CAACF,SAAS,CAAC,CAACC,KAAK,CAAC,CAAC;IACrE,MAAME,GAAG,GAAGhB,MAAM,CAAC,CAAC,CAACc,KAAK,CAAC,CAAC;IAE5B,IAAI,IAAI,CAACX,eAAe,CAACO,UAAU,EAAEL,QAAQ,CAAC,IAAI,IAAI,CAACE,gBAAgB,CAACG,UAAU,EAAEL,QAAQ,CAAC,EAAE;MAC7F,IAAIY,SAAS,GAAG,EAAE;MAClB,IAAI,CAACD,GAAG,CAACV,MAAM,CAACI,UAAU,EAAE,GAAG,CAAC,EAAE;QAChCO,SAAS,IAAIP,UAAU,CAACQ,MAAM,CAAC,YAAY,CAAC;QAC5C,IAAI,CAACF,GAAG,CAACV,MAAM,CAACI,UAAU,EAAE,GAAG,CAAC,EAAE;UAChCO,SAAS,IAAI,IAAIP,UAAU,CAACQ,MAAM,CAAC,MAAM,CAAC,EAAE;QAC9C;QACAD,SAAS,IAAI,KAAK;MACpB;MACAA,SAAS,IAAIP,UAAU,CAACQ,MAAM,CAAC,OAAO,CAAC;MACvC,oBACEtB,KAAA,CAAAuB,aAAA,CAACpB,IAAI;QAACqB,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAE,IAAI,CAACX,KAAK,CAACY,cAAc;MAAE,gBACzD3B,KAAA,CAAAuB,aAAA,CAACpB,IAAI;QAACqB,KAAK,EAAE,CAACC,MAAM,CAACG,OAAO,EAAE,IAAI,CAACb,KAAK,CAACc,YAAY;MAAE,gBACrD7B,KAAA,CAAAuB,aAAA,CAACrB,IAAI;QAACsB,KAAK,EAAE,CAACC,MAAM,CAACK,IAAI,EAAE,IAAI,CAACf,KAAK,CAACgB,SAAS;MAAE,GAAEV,SAAgB,CAC/D,CACF,CAAC;IAEX;IACA,OAAO,IAAI;EACb;AACF;AAEA,MAAMI,MAAM,GAAGxB,UAAU,CAAC+B,MAAM,CAAC;EAC/BN,SAAS,EAAE;IACTO,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE,QAAQ;IACxBC,SAAS,EAAE,CAAC;IACZC,YAAY,EAAE;EAChB,CAAC;EACDR,OAAO,EAAE;IACP;IACA;IACA;IACA;IACA;IACA;EAAA,CACD;EACDE,IAAI,EAAE;IACJO,eAAe,EAAE,aAAa;IAC9BC,KAAK,EAAE,SAAS;IAChBC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","StyleSheet","View","Text","moment","PlussChatTime","Component","shouldRenderDay","curTime","prevTime","isSame","shouldRenderTime","diff","render","curMesTime","props","currentMessage","createdAt","local","previousMessage","now","timestamp","format","createElement","style","styles","container","containerStyle","wrapper","wrapperStyle","text","textStyle","create","alignItems","justifyContent","marginTop","marginBottom","backgroundColor","color","fontSize","fontWeight"],"sources":["PlussChatTime.js"],"sourcesContent":["import React from \"react\";\nimport { StyleSheet, View } from \"react-native\";\nimport { Text } from \"./Text\";\n\nimport moment from \"moment\";\n\nexport default class PlussChatTime extends React.Component {\n\tshouldRenderDay(curTime, prevTime) {\n\t\treturn !curTime.isSame(prevTime, \"d\");\n\t}\n\n\tshouldRenderTime(curTime, prevTime) {\n\t\treturn curTime.diff(prevTime, \"m\") >= 10;\n\t}\n\n\trender() {\n\t\tconst curMesTime = moment(this.props.currentMessage.createdAt).local();\n\t\tconst prevTime = moment(this.props.previousMessage.createdAt).local();\n\t\tconst now = moment().local();\n\n\t\tif (\n\t\t\tthis.shouldRenderDay(curMesTime, prevTime) ||\n\t\t\tthis.shouldRenderTime(curMesTime, prevTime)\n\t\t) {\n\t\t\tlet timestamp = \"\";\n\t\t\tif (!now.isSame(curMesTime, \"d\")) {\n\t\t\t\ttimestamp += curMesTime.format(\"ddd, D MMM\");\n\t\t\t\tif (!now.isSame(curMesTime, \"y\")) {\n\t\t\t\t\ttimestamp += ` ${curMesTime.format(\"YYYY\")}`;\n\t\t\t\t}\n\t\t\t\ttimestamp += \"\";\n\t\t\t}\n\t\t\ttimestamp += curMesTime.format(\"h:mma\");\n\t\t\treturn (\n\t\t\t\t<View style={[styles.container, this.props.containerStyle]}>\n\t\t\t\t\t<View style={[styles.wrapper, this.props.wrapperStyle]}>\n\t\t\t\t\t\t<Text style={[styles.text, this.props.textStyle]}>{timestamp}</Text>\n\t\t\t\t\t</View>\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}\n}\n\nconst styles = StyleSheet.create({\n\tcontainer: {\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\tmarginTop: 5,\n\t\tmarginBottom: 10,\n\t},\n\twrapper: {\n\t\t// backgroundColor: '#ccc',\n\t\t// borderRadius: 10,\n\t\t// paddingLeft: 10,\n\t\t// paddingRight: 10,\n\t\t// paddingTop: 5,\n\t\t// paddingBottom: 5,\n\t},\n\ttext: {\n\t\tbackgroundColor: \"transparent\",\n\t\tcolor: \"#b2b2b2\",\n\t\tfontSize: 12,\n\t\tfontWeight: \"600\",\n\t},\n});\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SAASC,IAAI,QAAQ,QAAQ;AAE7B,OAAOC,MAAM,MAAM,QAAQ;AAE3B,eAAe,MAAMC,aAAa,SAASL,KAAK,CAACM,SAAS,CAAC;EAC1DC,eAAeA,CAACC,OAAO,EAAEC,QAAQ,EAAE;IAClC,OAAO,CAACD,OAAO,CAACE,MAAM,CAACD,QAAQ,EAAE,GAAG,CAAC;EACtC;EAEAE,gBAAgBA,CAACH,OAAO,EAAEC,QAAQ,EAAE;IACnC,OAAOD,OAAO,CAACI,IAAI,CAACH,QAAQ,EAAE,GAAG,CAAC,IAAI,EAAE;EACzC;EAEAI,MAAMA,CAAA,EAAG;IACR,MAAMC,UAAU,GAAGV,MAAM,CAAC,IAAI,CAACW,KAAK,CAACC,cAAc,CAACC,SAAS,CAAC,CAACC,KAAK,CAAC,CAAC;IACtE,MAAMT,QAAQ,GAAGL,MAAM,CAAC,IAAI,CAACW,KAAK,CAACI,eAAe,CAACF,SAAS,CAAC,CAACC,KAAK,CAAC,CAAC;IACrE,MAAME,GAAG,GAAGhB,MAAM,CAAC,CAAC,CAACc,KAAK,CAAC,CAAC;IAE5B,IACC,IAAI,CAACX,eAAe,CAACO,UAAU,EAAEL,QAAQ,CAAC,IAC1C,IAAI,CAACE,gBAAgB,CAACG,UAAU,EAAEL,QAAQ,CAAC,EAC1C;MACD,IAAIY,SAAS,GAAG,EAAE;MAClB,IAAI,CAACD,GAAG,CAACV,MAAM,CAACI,UAAU,EAAE,GAAG,CAAC,EAAE;QACjCO,SAAS,IAAIP,UAAU,CAACQ,MAAM,CAAC,YAAY,CAAC;QAC5C,IAAI,CAACF,GAAG,CAACV,MAAM,CAACI,UAAU,EAAE,GAAG,CAAC,EAAE;UACjCO,SAAS,IAAI,IAAIP,UAAU,CAACQ,MAAM,CAAC,MAAM,CAAC,EAAE;QAC7C;QACAD,SAAS,IAAI,KAAK;MACnB;MACAA,SAAS,IAAIP,UAAU,CAACQ,MAAM,CAAC,OAAO,CAAC;MACvC,oBACCtB,KAAA,CAAAuB,aAAA,CAACrB,IAAI;QAACsB,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAE,IAAI,CAACX,KAAK,CAACY,cAAc;MAAE,gBAC1D3B,KAAA,CAAAuB,aAAA,CAACrB,IAAI;QAACsB,KAAK,EAAE,CAACC,MAAM,CAACG,OAAO,EAAE,IAAI,CAACb,KAAK,CAACc,YAAY;MAAE,gBACtD7B,KAAA,CAAAuB,aAAA,CAACpB,IAAI;QAACqB,KAAK,EAAE,CAACC,MAAM,CAACK,IAAI,EAAE,IAAI,CAACf,KAAK,CAACgB,SAAS;MAAE,GAAEV,SAAgB,CAC9D,CACD,CAAC;IAET;IACA,OAAO,IAAI;EACZ;AACD;AAEA,MAAMI,MAAM,GAAGxB,UAAU,CAAC+B,MAAM,CAAC;EAChCN,SAAS,EAAE;IACVO,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE,QAAQ;IACxBC,SAAS,EAAE,CAAC;IACZC,YAAY,EAAE;EACf,CAAC;EACDR,OAAO,EAAE;IACR;IACA;IACA;IACA;IACA;IACA;EAAA,CACA;EACDE,IAAI,EAAE;IACLO,eAAe,EAAE,aAAa;IAC9BC,KAAK,EAAE,SAAS;IAChBC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE;EACb;AACD,CAAC,CAAC","ignoreList":[]}
@@ -1,9 +1,10 @@
1
- import React, { Component } from 'react';
2
- import { View, Text, TouchableWithoutFeedback, Modal } from 'react-native';
3
- import _ from 'lodash';
4
- import { connect } from 'react-redux';
5
- import { LINEGREY, TEXT_DARK, TEXT_LIGHT, getMainBrandingColourFromState } from '../colours';
6
- import { InlineButton } from './InlineButton';
1
+ import React, { Component } from "react";
2
+ import { View, TouchableWithoutFeedback, Modal } from "react-native";
3
+ import { Text } from "./Text";
4
+ import _ from "lodash";
5
+ import { connect } from "react-redux";
6
+ import { LINEGREY, TEXT_DARK, TEXT_LIGHT, getMainBrandingColourFromState } from "../colours";
7
+ import { InlineButton } from "./InlineButton";
7
8
  class Popup extends Component {
8
9
  renderOptions() {
9
10
  if (!this.props.options) {
@@ -63,56 +64,56 @@ class Popup extends Component {
63
64
  }
64
65
  const styles = {
65
66
  container: {
66
- position: 'absolute',
67
+ position: "absolute",
67
68
  bottom: 0,
68
69
  left: 0,
69
70
  right: 0,
70
71
  top: 0,
71
- backgroundColor: 'rgba(0,0,0,0.5)',
72
+ backgroundColor: "rgba(0,0,0,0.5)",
72
73
  zIndex: 1000,
73
74
  paddingHorizontal: 16,
74
75
  paddingVertical: 32,
75
- justifyContent: 'center',
76
- alignItems: 'center',
77
- width: '100%'
76
+ justifyContent: "center",
77
+ alignItems: "center",
78
+ width: "100%"
78
79
  },
79
80
  menu: {
80
- backgroundColor: '#fff',
81
+ backgroundColor: "#fff",
81
82
  borderRadius: 12
82
83
  },
83
84
  top: {
84
85
  padding: 24
85
86
  },
86
87
  title: {
87
- fontFamily: 'sf-bold',
88
+ fontFamily: "sf-bold",
88
89
  fontSize: 24,
89
90
  lineHeight: 24,
90
91
  color: TEXT_DARK,
91
- textAlign: 'center',
92
+ textAlign: "center",
92
93
  marginBottom: 16
93
94
  },
94
95
  text: {
95
- fontFamily: 'sf-regular',
96
+ fontFamily: "sf-regular",
96
97
  fontSize: 16,
97
98
  lineHeight: 22,
98
99
  color: TEXT_LIGHT,
99
- textAlign: 'center'
100
+ textAlign: "center"
100
101
  },
101
102
  bottom: {
102
103
  borderTopColor: LINEGREY,
103
104
  borderTopWidth: 1,
104
- flexDirection: 'row-reverse',
105
+ flexDirection: "row-reverse",
105
106
  padding: 8
106
107
  },
107
108
  option: {
108
109
  marginRight: 16
109
110
  },
110
111
  optionText: {
111
- fontFamily: 'sf-regular',
112
+ fontFamily: "sf-regular",
112
113
  fontSize: 16
113
114
  },
114
115
  optionTextBold: {
115
- fontFamily: 'sf-semibold'
116
+ fontFamily: "sf-semibold"
116
117
  }
117
118
  };
118
119
  const mapStateToProps = state => {
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","View","Text","TouchableWithoutFeedback","Modal","_","connect","LINEGREY","TEXT_DARK","TEXT_LIGHT","getMainBrandingColourFromState","InlineButton","Popup","renderOptions","props","options","createElement","style","styles","bottom","map","option","index","key","onPress","action","color","textStyle","optionText","colourBrandingMain","bold","optionTextBold","text","renderTitle","title","renderContent","content","render","visible","transparent","animationType","onRequestClose","onClose","container","menu","containerStyle","top","children","position","left","right","backgroundColor","zIndex","paddingHorizontal","paddingVertical","justifyContent","alignItems","width","borderRadius","padding","fontFamily","fontSize","lineHeight","textAlign","marginBottom","borderTopColor","borderTopWidth","flexDirection","marginRight","mapStateToProps","state","popup"],"sources":["Popup.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { View, Text, TouchableWithoutFeedback, Modal } from 'react-native';\nimport _ from 'lodash';\nimport { connect } from 'react-redux';\nimport { LINEGREY, TEXT_DARK, TEXT_LIGHT, getMainBrandingColourFromState } from '../colours';\nimport { InlineButton } from './InlineButton';\n\nclass Popup extends Component {\n renderOptions() {\n if (!this.props.options) {\n return null;\n }\n return (\n <View style={styles.bottom}>\n {_.map(this.props.options, (option, index) => {\n return (\n <InlineButton\n key={index}\n onPress={option.action}\n color=\"#fff\"\n textStyle={[styles.optionText, { color: this.props.colourBrandingMain }, option.bold && styles.optionTextBold]}\n >\n {option.text}\n </InlineButton>\n );\n })}\n </View>\n );\n }\n\n renderTitle() {\n if (!this.props.title) {\n return null;\n }\n return <Text style={[styles.title, { color: this.props.colourBrandingMain }]}>{this.props.title}</Text>;\n }\n\n renderContent() {\n if (this.props.content) {\n return this.props.content;\n }\n if (!this.props.text) {\n return null;\n }\n return <Text style={styles.text}>{this.props.text}</Text>;\n }\n\n render() {\n return (\n <Modal visible transparent animationType=\"fade\" onRequestClose={this.props.onClose}>\n <TouchableWithoutFeedback style={styles.container} onPress={this.props.onClose}>\n <View style={styles.container}>\n <View style={[styles.menu, this.props.containerStyle]}>\n <View style={styles.top}>\n {this.renderTitle()}\n {this.renderContent()}\n {this.props.children}\n </View>\n {this.renderOptions()}\n </View>\n </View>\n </TouchableWithoutFeedback>\n </Modal>\n );\n }\n}\n\nconst styles = {\n container: {\n position: 'absolute',\n bottom: 0,\n left: 0,\n right: 0,\n top: 0,\n backgroundColor: 'rgba(0,0,0,0.5)',\n zIndex: 1000,\n paddingHorizontal: 16,\n paddingVertical: 32,\n justifyContent: 'center',\n alignItems: 'center',\n width: '100%',\n },\n menu: {\n backgroundColor: '#fff',\n borderRadius: 12,\n },\n top: {\n padding: 24,\n },\n title: {\n fontFamily: 'sf-bold',\n fontSize: 24,\n lineHeight: 24,\n color: TEXT_DARK,\n textAlign: 'center',\n marginBottom: 16,\n },\n text: {\n fontFamily: 'sf-regular',\n fontSize: 16,\n lineHeight: 22,\n color: TEXT_LIGHT,\n textAlign: 'center',\n },\n bottom: {\n borderTopColor: LINEGREY,\n borderTopWidth: 1,\n flexDirection: 'row-reverse',\n padding: 8,\n },\n option: {\n marginRight: 16,\n },\n optionText: {\n fontFamily: 'sf-regular',\n fontSize: 16,\n },\n optionTextBold: {\n fontFamily: 'sf-semibold',\n },\n};\n\nconst mapStateToProps = state => {\n return {\n colourBrandingMain: getMainBrandingColourFromState(state),\n };\n};\n\nconst popup = connect(mapStateToProps, {})(Popup);\nexport { popup as Popup };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","View","TouchableWithoutFeedback","Modal","Text","_","connect","LINEGREY","TEXT_DARK","TEXT_LIGHT","getMainBrandingColourFromState","InlineButton","Popup","renderOptions","props","options","createElement","style","styles","bottom","map","option","index","key","onPress","action","color","textStyle","optionText","colourBrandingMain","bold","optionTextBold","text","renderTitle","title","renderContent","content","render","visible","transparent","animationType","onRequestClose","onClose","container","menu","containerStyle","top","children","position","left","right","backgroundColor","zIndex","paddingHorizontal","paddingVertical","justifyContent","alignItems","width","borderRadius","padding","fontFamily","fontSize","lineHeight","textAlign","marginBottom","borderTopColor","borderTopWidth","flexDirection","marginRight","mapStateToProps","state","popup"],"sources":["Popup.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { View, TouchableWithoutFeedback, Modal } from \"react-native\";\nimport { Text } from \"./Text\";\nimport _ from \"lodash\";\nimport { connect } from \"react-redux\";\nimport {\n\tLINEGREY,\n\tTEXT_DARK,\n\tTEXT_LIGHT,\n\tgetMainBrandingColourFromState,\n} from \"../colours\";\nimport { InlineButton } from \"./InlineButton\";\n\nclass Popup extends Component {\n\trenderOptions() {\n\t\tif (!this.props.options) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<View style={styles.bottom}>\n\t\t\t\t{_.map(this.props.options, (option, index) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<InlineButton\n\t\t\t\t\t\t\tkey={index}\n\t\t\t\t\t\t\tonPress={option.action}\n\t\t\t\t\t\t\tcolor=\"#fff\"\n\t\t\t\t\t\t\ttextStyle={[\n\t\t\t\t\t\t\t\tstyles.optionText,\n\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\toption.bold && styles.optionTextBold,\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{option.text}\n\t\t\t\t\t\t</InlineButton>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderTitle() {\n\t\tif (!this.props.title) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<Text style={[styles.title, { color: this.props.colourBrandingMain }]}>\n\t\t\t\t{this.props.title}\n\t\t\t</Text>\n\t\t);\n\t}\n\n\trenderContent() {\n\t\tif (this.props.content) {\n\t\t\treturn this.props.content;\n\t\t}\n\t\tif (!this.props.text) {\n\t\t\treturn null;\n\t\t}\n\t\treturn <Text style={styles.text}>{this.props.text}</Text>;\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Modal\n\t\t\t\tvisible\n\t\t\t\ttransparent\n\t\t\t\tanimationType=\"fade\"\n\t\t\t\tonRequestClose={this.props.onClose}\n\t\t\t>\n\t\t\t\t<TouchableWithoutFeedback\n\t\t\t\t\tstyle={styles.container}\n\t\t\t\t\tonPress={this.props.onClose}\n\t\t\t\t>\n\t\t\t\t\t<View style={styles.container}>\n\t\t\t\t\t\t<View style={[styles.menu, this.props.containerStyle]}>\n\t\t\t\t\t\t\t<View style={styles.top}>\n\t\t\t\t\t\t\t\t{this.renderTitle()}\n\t\t\t\t\t\t\t\t{this.renderContent()}\n\t\t\t\t\t\t\t\t{this.props.children}\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t{this.renderOptions()}\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t</Modal>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tcontainer: {\n\t\tposition: \"absolute\",\n\t\tbottom: 0,\n\t\tleft: 0,\n\t\tright: 0,\n\t\ttop: 0,\n\t\tbackgroundColor: \"rgba(0,0,0,0.5)\",\n\t\tzIndex: 1000,\n\t\tpaddingHorizontal: 16,\n\t\tpaddingVertical: 32,\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\twidth: \"100%\",\n\t},\n\tmenu: {\n\t\tbackgroundColor: \"#fff\",\n\t\tborderRadius: 12,\n\t},\n\ttop: {\n\t\tpadding: 24,\n\t},\n\ttitle: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 24,\n\t\tlineHeight: 24,\n\t\tcolor: TEXT_DARK,\n\t\ttextAlign: \"center\",\n\t\tmarginBottom: 16,\n\t},\n\ttext: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t\tlineHeight: 22,\n\t\tcolor: TEXT_LIGHT,\n\t\ttextAlign: \"center\",\n\t},\n\tbottom: {\n\t\tborderTopColor: LINEGREY,\n\t\tborderTopWidth: 1,\n\t\tflexDirection: \"row-reverse\",\n\t\tpadding: 8,\n\t},\n\toption: {\n\t\tmarginRight: 16,\n\t},\n\toptionText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t},\n\toptionTextBold: {\n\t\tfontFamily: \"sf-semibold\",\n\t},\n};\n\nconst mapStateToProps = (state) => {\n\treturn {\n\t\tcolourBrandingMain: getMainBrandingColourFromState(state),\n\t};\n};\n\nconst popup = connect(mapStateToProps, {})(Popup);\nexport { popup as Popup };\n"],"mappings":"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","ignoreList":[]}
@@ -1,8 +1,9 @@
1
- import React, { Component } from 'react';
2
- import { View, Text, TouchableWithoutFeedback, TouchableOpacity, Modal } from 'react-native';
3
- import { connect } from 'react-redux';
4
- import _ from 'lodash';
5
- import { getMainBrandingColourFromState, LINEGREY, TEXT_DARK } from '../colours';
1
+ import React, { Component } from "react";
2
+ import { Text } from "@plusscommunities/pluss-core-app/components";
3
+ import { View, TouchableWithoutFeedback, TouchableOpacity, Modal } from "react-native";
4
+ import { connect } from "react-redux";
5
+ import _ from "lodash";
6
+ import { getMainBrandingColourFromState, LINEGREY, TEXT_DARK } from "../colours";
6
7
  class PopupMenu extends Component {
7
8
  renderOption(item, index) {
8
9
  return /*#__PURE__*/React.createElement(TouchableOpacity, {
@@ -57,20 +58,20 @@ class PopupMenu extends Component {
57
58
  }
58
59
  const styles = {
59
60
  container: {
60
- position: 'absolute',
61
+ position: "absolute",
61
62
  bottom: 0,
62
63
  left: 0,
63
64
  right: 0,
64
65
  top: 0,
65
- backgroundColor: 'rgba(0,0,0,0.5)',
66
+ backgroundColor: "rgba(0,0,0,0.5)",
66
67
  zIndex: 1000
67
68
  },
68
69
  menu: {
69
- position: 'absolute',
70
+ position: "absolute",
70
71
  bottom: 0,
71
72
  left: 0,
72
73
  right: 0,
73
- backgroundColor: '#fff',
74
+ backgroundColor: "#fff",
74
75
  borderTopLeftRadius: 12,
75
76
  borderTopRightRadius: 12
76
77
  },
@@ -89,13 +90,13 @@ const styles = {
89
90
  borderTopWidth: 0
90
91
  },
91
92
  optionText: {
92
- fontFamily: 'sf-regular',
93
+ fontFamily: "sf-regular",
93
94
  fontSize: 16,
94
- textAlign: 'center',
95
+ textAlign: "center",
95
96
  color: TEXT_DARK
96
97
  },
97
98
  cancelText: {
98
- fontFamily: 'sf-medium'
99
+ fontFamily: "sf-medium"
99
100
  },
100
101
  titleContainer: {
101
102
  padding: 16,
@@ -103,9 +104,9 @@ const styles = {
103
104
  borderBottomWidth: 1
104
105
  },
105
106
  titleText: {
106
- fontFamily: 'sf-semibold',
107
+ fontFamily: "sf-semibold",
107
108
  fontSize: 16,
108
- textAlign: 'center',
109
+ textAlign: "center",
109
110
  color: TEXT_DARK
110
111
  }
111
112
  };
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","View","Text","TouchableWithoutFeedback","TouchableOpacity","Modal","connect","_","getMainBrandingColourFromState","LINEGREY","TEXT_DARK","PopupMenu","renderOption","item","index","createElement","key","onPress","style","styles","option","firstOption","isEmpty","text","content","optionText","renderOptions","optionsContainer","map","props","options","renderTitle","titleContainer","titleText","title","renderCancel","onClose","cancelOption","cancelText","color","colourBrandingMain","render","visible","transparent","animationType","onRequestClose","container","menu","position","bottom","left","right","top","backgroundColor","zIndex","borderTopLeftRadius","borderTopRightRadius","paddingHorizontal","paddingVertical","borderColor","borderTopWidth","fontFamily","fontSize","textAlign","padding","borderBottomWidth","mapStateToProps","state","popupMenu"],"sources":["PopupMenu.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { View, Text, TouchableWithoutFeedback, TouchableOpacity, Modal } from 'react-native';\nimport { connect } from 'react-redux';\nimport _ from 'lodash';\nimport { getMainBrandingColourFromState, LINEGREY, TEXT_DARK } from '../colours';\n\nclass PopupMenu extends Component {\n renderOption(item, index) {\n return (\n <TouchableOpacity key={index} onPress={item.onPress}>\n <View style={[styles.option, index === 0 && styles.firstOption]}>\n {_.isEmpty(item.text) && item.content ? item.content : <Text style={styles.optionText}>{item.text}</Text>}\n </View>\n </TouchableOpacity>\n );\n }\n\n renderOptions() {\n return (\n <View style={styles.optionsContainer}>\n {_.map(this.props.options, (item, index) => {\n return this.renderOption(item, index);\n })}\n </View>\n );\n }\n\n renderTitle() {\n return (\n <View style={styles.titleContainer}>\n <Text style={styles.titleText}>{this.props.title}</Text>\n </View>\n );\n }\n\n renderCancel() {\n return (\n <TouchableOpacity onPress={this.props.onClose}>\n <View style={[styles.option, styles.cancelOption]}>\n <Text style={[styles.optionText, styles.cancelText, { color: this.props.colourBrandingMain }]}>{this.props.cancelText}</Text>\n </View>\n </TouchableOpacity>\n );\n }\n\n render() {\n return (\n <Modal visible transparent animationType=\"slide\" onRequestClose={this.props.onClose}>\n <TouchableWithoutFeedback style={styles.container} onPress={this.props.onClose}>\n <View style={styles.container}>\n <View style={styles.menu}>\n {this.renderTitle()}\n {this.renderOptions()}\n {this.renderCancel()}\n </View>\n </View>\n </TouchableWithoutFeedback>\n </Modal>\n );\n }\n}\n\nconst styles = {\n container: {\n position: 'absolute',\n bottom: 0,\n left: 0,\n right: 0,\n top: 0,\n backgroundColor: 'rgba(0,0,0,0.5)',\n zIndex: 1000,\n },\n menu: {\n position: 'absolute',\n bottom: 0,\n left: 0,\n right: 0,\n backgroundColor: '#fff',\n borderTopLeftRadius: 12,\n borderTopRightRadius: 12,\n },\n optionsContainer: {\n paddingHorizontal: 16,\n },\n option: {\n paddingVertical: 16,\n borderColor: LINEGREY,\n borderTopWidth: 1,\n },\n cancelOption: {\n paddingHorizontal: 16,\n },\n firstOption: {\n borderTopWidth: 0,\n },\n optionText: {\n fontFamily: 'sf-regular',\n fontSize: 16,\n textAlign: 'center',\n color: TEXT_DARK,\n },\n cancelText: {\n fontFamily: 'sf-medium',\n },\n titleContainer: {\n padding: 16,\n borderColor: LINEGREY,\n borderBottomWidth: 1,\n },\n titleText: {\n fontFamily: 'sf-semibold',\n fontSize: 16,\n textAlign: 'center',\n color: TEXT_DARK,\n },\n};\n\nconst mapStateToProps = state => {\n return {\n colourBrandingMain: getMainBrandingColourFromState(state),\n };\n};\n\nconst popupMenu = connect(mapStateToProps, {})(PopupMenu);\nexport { popupMenu as PopupMenu };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","Text","View","TouchableWithoutFeedback","TouchableOpacity","Modal","connect","_","getMainBrandingColourFromState","LINEGREY","TEXT_DARK","PopupMenu","renderOption","item","index","createElement","key","onPress","style","styles","option","firstOption","isEmpty","text","content","optionText","renderOptions","optionsContainer","map","props","options","renderTitle","titleContainer","titleText","title","renderCancel","onClose","cancelOption","cancelText","color","colourBrandingMain","render","visible","transparent","animationType","onRequestClose","container","menu","position","bottom","left","right","top","backgroundColor","zIndex","borderTopLeftRadius","borderTopRightRadius","paddingHorizontal","paddingVertical","borderColor","borderTopWidth","fontFamily","fontSize","textAlign","padding","borderBottomWidth","mapStateToProps","state","popupMenu"],"sources":["PopupMenu.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { Text } from \"@plusscommunities/pluss-core-app/components\";\nimport {\n\tView,\n\tTouchableWithoutFeedback,\n\tTouchableOpacity,\n\tModal,\n} from \"react-native\";\nimport { connect } from \"react-redux\";\nimport _ from \"lodash\";\nimport {\n\tgetMainBrandingColourFromState,\n\tLINEGREY,\n\tTEXT_DARK,\n} from \"../colours\";\n\nclass PopupMenu extends Component {\n\trenderOption(item, index) {\n\t\treturn (\n\t\t\t<TouchableOpacity key={index} onPress={item.onPress}>\n\t\t\t\t<View style={[styles.option, index === 0 && styles.firstOption]}>\n\t\t\t\t\t{_.isEmpty(item.text) && item.content ? (\n\t\t\t\t\t\titem.content\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<Text style={styles.optionText}>{item.text}</Text>\n\t\t\t\t\t)}\n\t\t\t\t</View>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t}\n\n\trenderOptions() {\n\t\treturn (\n\t\t\t<View style={styles.optionsContainer}>\n\t\t\t\t{_.map(this.props.options, (item, index) => {\n\t\t\t\t\treturn this.renderOption(item, index);\n\t\t\t\t})}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderTitle() {\n\t\treturn (\n\t\t\t<View style={styles.titleContainer}>\n\t\t\t\t<Text style={styles.titleText}>{this.props.title}</Text>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderCancel() {\n\t\treturn (\n\t\t\t<TouchableOpacity onPress={this.props.onClose}>\n\t\t\t\t<View style={[styles.option, styles.cancelOption]}>\n\t\t\t\t\t<Text\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.optionText,\n\t\t\t\t\t\t\tstyles.cancelText,\n\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.props.cancelText}\n\t\t\t\t\t</Text>\n\t\t\t\t</View>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Modal\n\t\t\t\tvisible\n\t\t\t\ttransparent\n\t\t\t\tanimationType=\"slide\"\n\t\t\t\tonRequestClose={this.props.onClose}\n\t\t\t>\n\t\t\t\t<TouchableWithoutFeedback\n\t\t\t\t\tstyle={styles.container}\n\t\t\t\t\tonPress={this.props.onClose}\n\t\t\t\t>\n\t\t\t\t\t<View style={styles.container}>\n\t\t\t\t\t\t<View style={styles.menu}>\n\t\t\t\t\t\t\t{this.renderTitle()}\n\t\t\t\t\t\t\t{this.renderOptions()}\n\t\t\t\t\t\t\t{this.renderCancel()}\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t</Modal>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tcontainer: {\n\t\tposition: \"absolute\",\n\t\tbottom: 0,\n\t\tleft: 0,\n\t\tright: 0,\n\t\ttop: 0,\n\t\tbackgroundColor: \"rgba(0,0,0,0.5)\",\n\t\tzIndex: 1000,\n\t},\n\tmenu: {\n\t\tposition: \"absolute\",\n\t\tbottom: 0,\n\t\tleft: 0,\n\t\tright: 0,\n\t\tbackgroundColor: \"#fff\",\n\t\tborderTopLeftRadius: 12,\n\t\tborderTopRightRadius: 12,\n\t},\n\toptionsContainer: {\n\t\tpaddingHorizontal: 16,\n\t},\n\toption: {\n\t\tpaddingVertical: 16,\n\t\tborderColor: LINEGREY,\n\t\tborderTopWidth: 1,\n\t},\n\tcancelOption: {\n\t\tpaddingHorizontal: 16,\n\t},\n\tfirstOption: {\n\t\tborderTopWidth: 0,\n\t},\n\toptionText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t\ttextAlign: \"center\",\n\t\tcolor: TEXT_DARK,\n\t},\n\tcancelText: {\n\t\tfontFamily: \"sf-medium\",\n\t},\n\ttitleContainer: {\n\t\tpadding: 16,\n\t\tborderColor: LINEGREY,\n\t\tborderBottomWidth: 1,\n\t},\n\ttitleText: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 16,\n\t\ttextAlign: \"center\",\n\t\tcolor: TEXT_DARK,\n\t},\n};\n\nconst mapStateToProps = (state) => {\n\treturn {\n\t\tcolourBrandingMain: getMainBrandingColourFromState(state),\n\t};\n};\n\nconst popupMenu = connect(mapStateToProps, {})(PopupMenu);\nexport { popupMenu as PopupMenu };\n"],"mappings":"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","ignoreList":[]}
@@ -2,10 +2,10 @@ 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, Animated, PanResponder, Image, StyleSheet } from 'react-native';
7
- import { Icon } from '@rneui/themed';
8
- import { BOXGREY, TEXT_LIGHT } from '../colours';
5
+ import React, { Component } from "react";
6
+ import { View, Animated, PanResponder, Image, StyleSheet } from "react-native";
7
+ import { Icon } from "@rneui/themed";
8
+ import { BOXGREY, TEXT_LIGHT } from "../colours";
9
9
  class PositionedImage extends Component {
10
10
  constructor(props) {
11
11
  super(props);
@@ -207,7 +207,7 @@ class PositionedImage extends Component {
207
207
  }]
208
208
  }, /*#__PURE__*/React.createElement(View, {
209
209
  style: [styles.guideIconContainer, {
210
- flexDirection: 'column'
210
+ flexDirection: "column"
211
211
  }]
212
212
  }, /*#__PURE__*/React.createElement(Icon, {
213
213
  name: "arrow-up",
@@ -219,7 +219,7 @@ class PositionedImage extends Component {
219
219
  iconStyle: [styles.guideIcon, !isVertical && styles.guideIconDisabled]
220
220
  })), /*#__PURE__*/React.createElement(View, {
221
221
  style: [styles.guideIconContainer, {
222
- flexDirection: 'row'
222
+ flexDirection: "row"
223
223
  }]
224
224
  }, /*#__PURE__*/React.createElement(Icon, {
225
225
  name: "arrow-left",
@@ -253,30 +253,30 @@ class PositionedImage extends Component {
253
253
  }
254
254
  const styles = StyleSheet.create({
255
255
  container: {
256
- overflow: 'hidden',
256
+ overflow: "hidden",
257
257
  backgroundColor: BOXGREY
258
258
  },
259
259
  guideContainer: {
260
- position: 'absolute',
260
+ position: "absolute",
261
261
  top: 0,
262
262
  right: 0,
263
263
  bottom: 0,
264
264
  left: 0,
265
- alignItems: 'center',
266
- justifyContent: 'center',
267
- backgroundColor: '#0006'
265
+ alignItems: "center",
266
+ justifyContent: "center",
267
+ backgroundColor: "#0006"
268
268
  },
269
269
  guideIconContainer: {
270
- position: 'absolute',
270
+ position: "absolute",
271
271
  top: 0,
272
272
  right: 0,
273
273
  bottom: 0,
274
274
  left: 0,
275
- alignItems: 'center',
276
- justifyContent: 'center'
275
+ alignItems: "center",
276
+ justifyContent: "center"
277
277
  },
278
278
  guideIcon: {
279
- color: '#fff',
279
+ color: "#fff",
280
280
  fontSize: 50,
281
281
  margin: 15
282
282
  },
@@ -284,27 +284,27 @@ const styles = StyleSheet.create({
284
284
  color: TEXT_LIGHT
285
285
  },
286
286
  gridContainer: {
287
- position: 'absolute',
287
+ position: "absolute",
288
288
  top: 0,
289
289
  right: 0,
290
290
  bottom: 0,
291
291
  left: 0
292
292
  },
293
293
  gridHorizontal: {
294
- position: 'absolute',
294
+ position: "absolute",
295
295
  top: 0,
296
296
  right: 0,
297
297
  left: 0,
298
- height: '50%',
298
+ height: "50%",
299
299
  borderBottomWidth: 1,
300
300
  borderBottomColor: BOXGREY
301
301
  },
302
302
  gridVertical: {
303
- position: 'absolute',
303
+ position: "absolute",
304
304
  top: 0,
305
305
  right: 0,
306
306
  bottom: 0,
307
- width: '50%',
307
+ width: "50%",
308
308
  borderLeftWidth: 1,
309
309
  borderLeftColor: BOXGREY
310
310
  }