@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":["React","Component","View","Text","TouchableOpacity","Image","StyleSheet","_","moment","connect","Icon","getPluralS","getThumb300","get1400","getSiteSettingFromState","getFirstName","getPluralOptions","getMainBrandingColourFromState","TEXT_DARKEST","BG_GREY","TEXT_LIGHT","LINEGREY","reactionActions","notificationActions","blockUser","unblockUser","ConfirmPopup","ProfilePic","ImagePopup","InlineButton","Spinner","Services","CommentSection","constructor","props","_defineProperty","c","setState","commentToDelete","removeComment","state","Id","then","res","console","log","newComments","filter","comments","commentToReport","commentToBlock","userId","UserId","commentToUnblock","commentId","reportLoading","reportComment","commentReportedStatus","catch","error","comment","navigation","navigate","threadId","entityType","entityId","processing","data","muteEntity","muteExpiry","Expiry","unmuteEntity","actual","duration","diff","asHours","Math","abs","ceil","notificationsForComments","getEntityNotificationSetting","muteLoaded","commentsLoading","includes","blockedUsers","user","uid","isUserBlocked","hideReplyButton","threadComments","innerC","ParentId","content","isEmpty","createElement","style","styles","commentRepliesText","color","colourBrandingMain","User","displayName","profilePics","take","uniqBy","multiReplyContainer","map","i","key","marginRight","Diameter","profilePic","marginLeft","length","commentReplies","onPress","onOpenThread","addingComment","componentDidMount","getNotificationSate","hidden","getComments","componentWillUnmount","loadTimer","clearTimeout","onPressCommentImage","image","imagePopupSource","imagePopupOpen","onGoToAdd","_this$props$commentRe","commentReply","current","focusInput","getAdjustedSize","size","scaleFont","fontScale","commentsLoadStarted","_this$props$commentRe2","loadingStarted","loadComments","minTime","maxBy","Timestamp","_this$props$commentRe3","sortBy","concat","onCommentsLoaded","loadingCompleted","live","setTimeout","refreshFrequency","startedAddingComment","commentAdded","push","onCommentAdded","canRemoveComment","permissions","adminPermission","closeCommentGallery","renderCommentDeleteConfirm","visible","onConfirm","onPressConfirmDelete","onCancel","onPressCancelDelete","onClose","text","renderCommentReportConfirm","onPressConfirmReport","onPressCancelReport","extraContent","commentReportText","renderCommentBlockConfirm","onPressConfirmBlock","onPressCancelBlock","renderCommentUnblockConfirm","onPressConfirmUnblock","onPressCancelUnblock","renderCommentReportStatus","isSuccess","onPressConfirmReportStatus","hideNo","yesText","renderCommentImage","commentImageContainer","bind","commentImage","source","uri","renderComment","commentFlex","commentProfilePic","commentBlock","commentTitleRow","onPressDeleteComment","commentButtonContainer","backgroundColor","name","type","iconStyle","commentButtonIcon","disableFlag","onPressReportComment","canBlockComment","onPressUnblockUser","onPressBlockUser","commentName","fontSize","Comment","commentText","commentBottom","commentTime","utc","local","format","renderReplyText","renderMute","muteSpinnerContainer","isMuted","hours","getMuteRemaining","mutedFor","muteContainer","mutedForText","onUnmute","onMute","borderColor","muteButton","disabled","disabledOpacity","noText","muteButtonInner","muteButtonIcon","muteButtonText","renderComments","commentSection","isNil","placeHolder","commentsEmpty","reverseOrder","reverse","showReplies","commentSectionTitleRow","alignItems","hideAddComment","goToText","commentCount","renderCommentImagePopup","images","ref","renderReportLoading","reportLoadingContainer","render","commentSectionOuter","create","flex","paddingHorizontal","paddingVertical","borderTopColor","borderTopWidth","fontFamily","marginTop","flexDirection","borderRadius","padding","width","height","justifyContent","textAlign","paddingLeft","marginBottom","borderWidth","mapStateToProps","userSettings","forwardRef"],"sources":["CommentSection.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { View, Text, TouchableOpacity, Image, StyleSheet } from 'react-native';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport { connect } from 'react-redux';\nimport { Icon } from '@rneui/themed';\nimport { getPluralS, getThumb300, get1400, getSiteSettingFromState, getFirstName, getPluralOptions } from '../helper';\nimport { getMainBrandingColourFromState, TEXT_DARKEST, BG_GREY, TEXT_LIGHT, LINEGREY } from '../colours';\nimport { reactionActions, notificationActions } from '../apis';\nimport { blockUser, unblockUser } from '../actions';\nimport { ConfirmPopup } from './ConfirmPopup';\nimport { ProfilePic } from './ProfilePic';\nimport { ImagePopup } from './ImagePopup';\nimport { InlineButton } from './InlineButton';\nimport { Spinner } from './Spinner';\nimport { Services } from '../config';\n\nclass CommentSection extends Component {\n constructor(props) {\n super(props);\n this.state = {\n commentsLoading: false,\n comments: [],\n addingComment: false,\n commentToDelete: null,\n commentToReport: null,\n commentReportedStatus: null,\n reportLoading: false,\n processing: false,\n muteExpiry: null,\n muteLoaded: false,\n };\n }\n\n componentDidMount() {\n this.getNotificationSate();\n\n if (!_.includes(this.props.user.hidden, 'viewComment')) {\n this.getComments();\n }\n }\n\n componentWillUnmount() {\n if (this.loadTimer) {\n clearTimeout(this.loadTimer);\n }\n }\n\n onPressDeleteComment = c => {\n this.setState({ commentToDelete: c });\n };\n\n onPressConfirmDelete = () => {\n reactionActions.removeComment(this.state.commentToDelete.Id).then(res => {\n console.log('deleted');\n });\n const newComments = _.filter(this.state.comments, c => {\n return c.Id !== this.state.commentToDelete.Id;\n });\n this.setState({\n comments: newComments,\n commentToDelete: null,\n });\n };\n\n onPressCancelDelete = () => {\n this.setState({ commentToDelete: null });\n };\n\n onPressReportComment = c => {\n this.setState({ commentToReport: c });\n };\n\n onPressBlockUser = c => {\n this.setState({ commentToBlock: c });\n };\n\n onPressConfirmBlock = () => {\n const userId = this.state.commentToBlock.UserId;\n this.props.blockUser(userId);\n this.setState({ commentToBlock: null });\n };\n\n onPressCancelBlock = () => {\n this.setState({ commentToBlock: null });\n };\n\n onPressUnblockUser = c => {\n this.setState({ commentToUnblock: c });\n };\n\n onPressConfirmUnblock = () => {\n const userId = this.state.commentToUnblock.UserId;\n this.props.unblockUser(userId);\n this.setState({ commentToUnblock: null });\n };\n\n onPressCancelUnblock = () => {\n this.setState({ commentToUnblock: null });\n };\n\n onPressConfirmReport = () => {\n const commentId = this.state.commentToReport.Id;\n this.setState({ reportLoading: true, commentToReport: null }, () => {\n reactionActions\n .reportComment(commentId)\n .then(res => {\n this.setState({ commentReportedStatus: 'success', reportLoading: false });\n })\n .catch(error => {\n console.log('reportComment', error);\n this.setState({ commentReportedStatus: 'fail', reportLoading: false });\n });\n });\n };\n\n onPressCancelReport = () => {\n this.setState({ commentToReport: null });\n };\n\n onPressConfirmReportStatus = () => {\n this.setState({ commentReportedStatus: null });\n };\n\n onPressCommentImage(image) {\n this.setState({\n imagePopupSource: [image],\n imagePopupOpen: true,\n });\n }\n\n onGoToAdd() {\n this.props.commentReply?.current?.focusInput();\n }\n\n onOpenThread = comment => {\n Services.navigation.navigate('thread', { ...this.props, threadId: comment.Id });\n };\n\n onMute = () => {\n const { entityType, entityId } = this.props;\n this.setState({ processing: true }, async () => {\n try {\n const { data } = await notificationActions.muteEntity(entityType, entityId);\n // console.log('onMute', data);\n const muteExpiry = moment(data.Expiry);\n this.setState({ muteExpiry, processing: false });\n } catch (error) {\n console.error('onMute', error);\n this.setState({ processing: false });\n }\n });\n };\n\n onUnmute = () => {\n const { entityType, entityId } = this.props;\n this.setState({ processing: true }, async () => {\n try {\n const { data } = await notificationActions.unmuteEntity(entityType, entityId);\n // console.log('onUnmute', data);\n this.setState({ muteExpiry: null, processing: false });\n } catch (error) {\n console.error('onUnmute', error);\n this.setState({ processing: false });\n }\n });\n };\n\n isMuted = () => {\n const { muteExpiry } = this.state;\n return muteExpiry && moment() <= muteExpiry;\n };\n\n getMuteRemaining = () => {\n const { muteExpiry } = this.state;\n const actual = muteExpiry ? moment.duration(muteExpiry.diff(moment())).asHours() : 0;\n return Math.abs(Math.ceil(actual));\n };\n\n getNotificationSate = () => {\n const { processing } = this.state;\n const { entityType, entityId, notificationsForComments } = this.props;\n if (processing || !notificationsForComments) return;\n\n this.setState({ processing: true }, async () => {\n try {\n const { data } = await notificationActions.getEntityNotificationSetting(entityType, entityId);\n // console.log('getNotificationSate', data);\n const muteExpiry = data ? moment(data.Expiry) : null;\n this.setState({ muteExpiry, muteLoaded: true, processing: false });\n } catch (error) {\n console.error('getNotificationSate', error);\n this.setState({ processing: false });\n }\n });\n };\n\n getAdjustedSize(size) {\n if (this.props.scaleFont) {\n return size + this.props.user.fontScale;\n }\n return size;\n }\n\n getComments() {\n if (!this.state.commentsLoadStarted) {\n this.setState({\n commentsLoadStarted: true,\n commentsLoading: true,\n });\n this.props.commentReply?.current?.loadingStarted();\n\n this.loadComments();\n }\n }\n\n isEmpty() {\n return _.isEmpty(this.state.comments);\n }\n\n loadComments() {\n const minTime = this.isEmpty()\n ? 0\n : _.maxBy(this.state.comments, c => {\n return c.Timestamp;\n }).Timestamp;\n reactionActions.getComments(this.props.entityId, this.props.entityType, minTime).then(res => {\n this.setState(\n {\n comments: _.sortBy(\n _.uniqBy(\n _.filter(_.concat(this.state.comments, res.data), c => {\n if (!this.props.threadId) {\n return true;\n }\n return c.Id === this.props.threadId || c.ParentId === this.props.threadId;\n }),\n c => {\n return c.Id;\n },\n ),\n 'Timestamp',\n ),\n commentsLoading: false,\n },\n () => {\n if (this.props.onCommentsLoaded) {\n this.props.onCommentsLoaded(this.state.comments.length);\n }\n },\n );\n //if (this.props.commentReply) {\n this.props.commentReply?.current?.loadingCompleted();\n //}\n if (this.props.live) {\n this.loadTimer = setTimeout(() => {\n this.loadComments();\n }, this.props.refreshFrequency || 2000);\n }\n });\n }\n\n isLoading = () => {\n return this.state.commentsLoading;\n };\n\n startedAddingComment() {\n this.setState({\n addingComment: true,\n });\n }\n\n commentAdded(comment) {\n const newComments = this.state.comments;\n newComments.push(comment);\n this.setState(\n {\n addingComment: false,\n comments: newComments,\n },\n () => {\n if (this.props.onCommentAdded) {\n this.props.onCommentAdded();\n }\n },\n );\n }\n\n isUserBlocked = c => {\n return _.includes(this.props.blockedUsers, c.UserId);\n };\n\n canBlockComment = c => {\n return this.props.user.uid !== c.UserId;\n };\n\n canRemoveComment(c) {\n if (this.props.user.uid === c.UserId) {\n return true;\n }\n return _.includes(this.props.user.permissions, this.props.adminPermission);\n }\n\n closeCommentGallery() {\n this.setState({\n imagePopupSource: [],\n imagePopupOpen: false,\n });\n }\n\n renderCommentDeleteConfirm() {\n return (\n <ConfirmPopup\n visible={!!this.state.commentToDelete}\n onConfirm={this.onPressConfirmDelete}\n onCancel={this.onPressCancelDelete}\n onClose={this.onPressCancelDelete}\n text=\"Are you sure you want to delete this comment?\"\n />\n );\n }\n\n renderCommentReportConfirm() {\n return (\n <ConfirmPopup\n visible={!!this.state.commentToReport}\n onConfirm={this.onPressConfirmReport}\n onCancel={this.onPressCancelReport}\n onClose={this.onPressCancelReport}\n text=\"Are you sure you want to report this comment?\"\n extraContent={<Text style={styles.commentReportText}>This comment will be reported to our team and considered for deletion</Text>}\n />\n );\n }\n\n renderCommentBlockConfirm() {\n return (\n <ConfirmPopup\n visible={!!this.state.commentToBlock}\n onConfirm={this.onPressConfirmBlock}\n onCancel={this.onPressCancelBlock}\n onClose={this.onPressCancelBlock}\n text=\"Are you sure you want to block this user?\"\n extraContent={<Text style={styles.commentReportText}>You will no longer see comments made by this user</Text>}\n />\n );\n }\n\n renderCommentUnblockConfirm() {\n return (\n <ConfirmPopup\n visible={!!this.state.commentToUnblock}\n onConfirm={this.onPressConfirmUnblock}\n onCancel={this.onPressCancelUnblock}\n onClose={this.onPressCancelUnblock}\n text=\"Are you sure you want to unblock this user?\"\n extraContent={<Text style={styles.commentReportText}>You will once again see comments made by this user</Text>}\n />\n );\n }\n\n renderCommentReportStatus() {\n const { commentReportedStatus } = this.state;\n const isSuccess = commentReportedStatus === 'success';\n return (\n <ConfirmPopup\n visible={!!commentReportedStatus}\n onConfirm={this.onPressConfirmReportStatus}\n text={isSuccess ? 'Thank you for reporting' : 'Unable to report'}\n extraContent={\n <Text style={styles.commentReportText}>\n {isSuccess ? 'We will review the comment within 24 hours' : 'There was a problem reporting the comment please try again later'}\n </Text>\n }\n hideNo\n yesText={'Done'}\n />\n );\n }\n\n renderCommentImage(c) {\n if (_.isEmpty(c.Image)) {\n return null;\n }\n return (\n <TouchableOpacity style={styles.commentImageContainer} onPress={this.onPressCommentImage.bind(this, get1400(c.Image))}>\n <Image style={styles.commentImage} source={{ uri: getThumb300(c.Image) }} />\n </TouchableOpacity>\n );\n }\n\n renderReplyText = (c, isUserBlocked) => {\n if (this.props.threadId || this.props.hideReplyButton) {\n return null;\n }\n\n const threadComments = _.filter(this.state.comments, innerC => {\n return innerC.ParentId === c.Id;\n });\n\n let content = null;\n\n if (_.isEmpty(threadComments)) {\n // no replies\n content = (\n <Text style={[styles.commentRepliesText, { color: this.props.colourBrandingMain }]}>{`Reply to ${getFirstName(\n !isUserBlocked && c.User ? c.User.displayName : 'comment',\n )}`}</Text>\n );\n } else {\n // existing replies\n const profilePics = _.take(\n _.uniqBy(threadComments, c => c.UserId),\n 3,\n );\n content = (\n <View style={styles.multiReplyContainer}>\n {profilePics.map((c, i) => {\n return <ProfilePic key={c.Id} style={{ marginRight: -10 }} Diameter={20} ProfilePic={c.User.profilePic} />;\n })}\n <Text style={[styles.commentRepliesText, { marginLeft: 20, color: this.props.colourBrandingMain }]}>{`${threadComments.length\n } repl${getPluralOptions(threadComments.length, 'y', 'ies')}`}</Text>\n </View>\n );\n }\n\n return (\n <View style={styles.commentReplies}>\n <TouchableOpacity\n onPress={() => {\n this.onOpenThread(c);\n }}\n >\n {content}\n </TouchableOpacity>\n </View>\n );\n };\n\n renderComment(c) {\n const isUserBlocked = this.isUserBlocked(c);\n return (\n <View style={styles.comment} key={c.Id}>\n <View style={styles.commentFlex}>\n <ProfilePic ProfilePic={isUserBlocked ? null : c.User.profilePic} Diameter={40} style={styles.commentProfilePic} />\n <View style={styles.commentBlock}>\n <View style={styles.commentTitleRow}>\n {this.canRemoveComment(c) ? (\n <TouchableOpacity onPress={this.onPressDeleteComment.bind(this, c)}>\n <View style={[styles.commentButtonContainer, { backgroundColor: this.props.colourBrandingMain }]}>\n <Icon name=\"trash\" type=\"font-awesome\" iconStyle={styles.commentButtonIcon} />\n </View>\n </TouchableOpacity>\n ) : (\n !this.props.disableFlag && (\n <TouchableOpacity onPress={this.onPressReportComment.bind(this, c)}>\n <View style={[styles.commentButtonContainer, { backgroundColor: this.props.colourBrandingMain }]}>\n <Icon name=\"flag\" type=\"font-awesome\" iconStyle={styles.commentButtonIcon} />\n </View>\n </TouchableOpacity>\n )\n )}\n {!this.props.disableFlag &&\n this.canBlockComment(c) &&\n (isUserBlocked ? (\n <TouchableOpacity style={{ marginRight: 8 }} onPress={this.onPressUnblockUser.bind(this, c)}>\n <View style={[styles.commentButtonContainer, { backgroundColor: this.props.colourBrandingMain }]}>\n <Icon name=\"user-plus\" type=\"font-awesome\" iconStyle={styles.commentButtonIcon} />\n </View>\n </TouchableOpacity>\n ) : (\n <TouchableOpacity style={{ marginRight: 8 }} onPress={this.onPressBlockUser.bind(this, c)}>\n <View style={[styles.commentButtonContainer, { backgroundColor: this.props.colourBrandingMain }]}>\n <Icon name=\"user-times\" type=\"font-awesome\" iconStyle={styles.commentButtonIcon} />\n </View>\n </TouchableOpacity>\n ))}\n <Text style={[styles.commentName, { fontSize: this.getAdjustedSize(13) }]}>\n {isUserBlocked ? '[blocked user]' : c.User.displayName}\n </Text>\n </View>\n {!_.isEmpty(c.Comment) && (\n <Text style={[styles.commentText, { fontSize: this.getAdjustedSize(13) }]}>{isUserBlocked ? '[hidden]' : c.Comment}</Text>\n )}\n {!isUserBlocked && this.renderCommentImage(c)}\n </View>\n </View>\n <View style={styles.commentBottom}>\n <Text style={[styles.commentTime, { fontSize: this.getAdjustedSize(13) }]}>\n {moment\n .utc(c.Timestamp)\n .local()\n .format('D MMM • h:mma')}\n </Text>\n {this.renderReplyText(c, isUserBlocked)}\n </View>\n </View>\n );\n }\n\n renderMute() {\n const { notificationsForComments } = this.props;\n const { muteLoaded, muteExpiry, processing } = this.state;\n if (!notificationsForComments || !muteLoaded) return null;\n\n if (processing)\n return (\n <View style={styles.muteSpinnerContainer}>\n <Spinner size={'small'} color={this.props.colourBrandingMain} />\n </View>\n );\n\n const isMuted = this.isMuted();\n const hours = this.getMuteRemaining();\n const mutedFor = `Muted for ${hours} hour${getPluralS(hours)}`;\n // console.log(muteExpiry.format('DD MMM YYYY hh:mm a'));\n\n return (\n <View style={styles.muteContainer}>\n {isMuted && muteExpiry ? <Text style={[{ color: this.props.colourBrandingMain }, styles.mutedForText]}>{mutedFor}</Text> : null}\n <InlineButton\n onPress={isMuted ? this.onUnmute : this.onMute}\n color=\"#fff\"\n style={[{ borderColor: this.props.colourBrandingMain }, styles.muteButton]}\n disabled={processing}\n disabledOpacity\n noText\n >\n <View style={styles.muteButtonInner}>\n <Icon\n name={isMuted ? 'bell-o' : 'bell-slash-o'}\n type={'font-awesome'}\n iconStyle={[{ color: this.props.colourBrandingMain }, styles.muteButtonIcon]}\n />\n <Text style={[{ color: this.props.colourBrandingMain }, styles.muteButtonText]}>{isMuted ? 'Unmute' : 'Mute'}</Text>\n </View>\n </InlineButton>\n </View>\n );\n }\n\n renderComments() {\n if (this.state.commentsLoading) {\n return (\n <View style={styles.commentSection}>\n <Spinner color={this.props.colourBrandingMain} />\n </View>\n );\n }\n if (this.isEmpty() && !this.state.addingComment) {\n if (_.includes(this.props.user.hidden, 'addComment')) {\n return null;\n }\n if (!_.isNil(this.props.placeHolder) && _.isEmpty(this.props.placeHolder)) return null;\n return (\n <View style={styles.commentSection}>\n <Text style={[styles.commentsEmpty, { fontSize: this.getAdjustedSize(15) }]}>\n {_.isNil(this.props.placeHolder) ? 'Be the first to add a comment!' : this.props.placeHolder}\n </Text>\n </View>\n );\n }\n let source = [...this.state.comments];\n if (this.props.reverseOrder) {\n source = source.reverse();\n }\n if (!this.props.showReplies && !this.props.threadId) {\n source = _.filter(source, c => {\n return !c.ParentId;\n });\n }\n return (\n <View style={styles.commentSection}>\n {!this.isEmpty() && (\n <View style={styles.commentSectionTitleRow}>\n <View style={{ alignItems: 'flex-end' }}>\n {this.renderMute()}\n {!this.props.hideAddComment && this.state.comments.length > 2 && (\n <TouchableOpacity onPress={this.onGoToAdd.bind(this)}>\n <Text style={[styles.goToText, { color: this.props.colourBrandingMain }]}>Add a comment</Text>\n </TouchableOpacity>\n )}\n </View>\n <Text style={[styles.commentCount, { fontSize: this.getAdjustedSize(15) }]}>\n {this.state.comments.length}\n {` comment${getPluralS(this.state.comments.length)}`}\n </Text>\n </View>\n )}\n {this.props.reverseOrder && this.state.addingComment && <Spinner color={this.props.colourBrandingMain} />}\n {source.map(c => {\n return this.renderComment(c);\n })}\n {!this.props.reverseOrder && this.state.addingComment && <Spinner color={this.props.colourBrandingMain} />}\n </View>\n );\n }\n\n renderCommentImagePopup() {\n return (\n <ImagePopup\n visible={this.state.imagePopupOpen}\n images={this.state.imagePopupSource}\n onClose={this.closeCommentGallery.bind(this)}\n ref=\"commentImagePopup\"\n />\n );\n }\n\n renderReportLoading() {\n if (!this.state.reportLoading) return null;\n return (\n <View style={styles.reportLoadingContainer}>\n <Spinner color={this.props.colourBrandingMain} />\n </View>\n );\n }\n\n render() {\n if (_.includes(this.props.user.hidden, 'viewComment')) {\n return null;\n }\n return (\n <View style={[styles.commentSectionOuter, this.props.style]}>\n {this.renderComments()}\n {this.renderReportLoading()}\n {this.renderCommentDeleteConfirm()}\n {this.renderCommentReportConfirm()}\n {this.renderCommentBlockConfirm()}\n {this.renderCommentUnblockConfirm()}\n {this.renderCommentReportStatus()}\n {this.renderCommentImagePopup()}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n commentSectionOuter: {\n flex: 1,\n paddingHorizontal: 16,\n },\n commentSection: {\n flex: 1,\n paddingVertical: 12,\n borderTopColor: LINEGREY,\n borderTopWidth: 1,\n },\n commentCount: {\n fontFamily: 'sf-semibold',\n color: TEXT_DARKEST,\n flex: 1,\n marginTop: 4,\n },\n comment: {\n marginTop: 16,\n },\n commentFlex: {\n flexDirection: 'row',\n },\n commentProfilePic: {\n marginRight: 8,\n },\n commentBlock: {\n flex: 1,\n backgroundColor: BG_GREY,\n borderRadius: 5,\n padding: 8,\n },\n commentTitleRow: {\n flexDirection: 'row-reverse',\n alignItems: 'center',\n },\n commentButtonContainer: {\n width: 24,\n height: 24,\n borderRadius: 12,\n alignItems: 'center',\n justifyContent: 'center',\n },\n commentButtonIcon: {\n fontSize: 13,\n color: '#fff',\n },\n commentName: {\n fontFamily: 'sf-semibold',\n color: TEXT_DARKEST,\n flex: 1,\n },\n commentText: {\n marginTop: 8,\n fontFamily: 'sf-regular',\n color: TEXT_DARKEST,\n },\n commentBottom: {\n flexDirection: 'row-reverse',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n commentTime: {\n fontFamily: 'sf-regular',\n marginTop: 4,\n color: TEXT_LIGHT,\n textAlign: 'right',\n },\n commentReplies: {\n flex: 1,\n paddingLeft: 48,\n },\n commentRepliesText: {\n fontFamily: 'sf-semibold',\n fontSize: 15,\n },\n multiReplyContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n paddingVertical: 4,\n },\n commentImageContainer: {\n marginTop: 8,\n width: 60,\n height: 60,\n },\n commentImage: {\n width: 60,\n height: 60,\n borderRadius: 2,\n },\n commentsEmpty: {\n fontFamily: 'sf-semibold',\n color: TEXT_DARKEST,\n },\n commentSectionTitleRow: {\n flexDirection: 'row-reverse',\n },\n commentReportText: {\n fontFamily: 'sf-regular',\n fontSize: 14,\n paddingHorizontal: 22,\n textAlign: 'center',\n },\n reportLoadingContainer: {\n paddingVertical: 10,\n },\n goToText: {\n marginTop: 4,\n },\n muteSpinnerContainer: {\n width: 100,\n marginBottom: 6,\n },\n muteContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'flex-end',\n marginBottom: 6,\n },\n mutedForText: {\n fontFamily: 'sf-semibold',\n fontSize: 13,\n marginRight: 8,\n },\n muteButton: {\n borderWidth: 1,\n paddingHorizontal: 8,\n },\n muteButtonInner: {\n flexDirection: 'row',\n alignItems: 'center',\n },\n muteButtonIcon: {\n fontSize: 14,\n },\n muteButtonText: {\n fontFamily: 'sf-semibold',\n fontSize: 14,\n marginLeft: 6,\n },\n});\n\nconst mapStateToProps = state => {\n return {\n colourBrandingMain: getMainBrandingColourFromState(state),\n user: state.user,\n notificationsForComments: getSiteSettingFromState(state, 'NotificationsForComments', false),\n blockedUsers: state.userSettings.blockedUsers || [],\n };\n};\n\nconst commentSection = connect(mapStateToProps, { blockUser, unblockUser }, null, { forwardRef: true })(CommentSection);\nexport { commentSection as CommentSection };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","View","TouchableOpacity","Image","StyleSheet","Text","_","moment","connect","Icon","getPluralS","getThumb300","get1400","getSiteSettingFromState","getFirstName","getPluralOptions","getMainBrandingColourFromState","TEXT_DARKEST","BG_GREY","TEXT_LIGHT","LINEGREY","reactionActions","notificationActions","blockUser","unblockUser","ConfirmPopup","ProfilePic","ImagePopup","InlineButton","Spinner","Services","CommentSection","constructor","props","_defineProperty","c","setState","commentToDelete","removeComment","state","Id","then","res","console","log","newComments","filter","comments","commentToReport","commentToBlock","userId","UserId","commentToUnblock","commentId","reportLoading","reportComment","commentReportedStatus","catch","error","comment","navigation","navigate","threadId","entityType","entityId","processing","data","muteEntity","muteExpiry","Expiry","unmuteEntity","actual","duration","diff","asHours","Math","abs","ceil","notificationsForComments","getEntityNotificationSetting","muteLoaded","commentsLoading","includes","blockedUsers","user","uid","isUserBlocked","hideReplyButton","threadComments","innerC","ParentId","content","isEmpty","createElement","style","styles","commentRepliesText","color","colourBrandingMain","User","displayName","profilePics","take","uniqBy","multiReplyContainer","map","i","key","marginRight","Diameter","profilePic","marginLeft","length","commentReplies","onPress","onOpenThread","addingComment","componentDidMount","getNotificationSate","hidden","getComments","componentWillUnmount","loadTimer","clearTimeout","onPressCommentImage","image","imagePopupSource","imagePopupOpen","onGoToAdd","_this$props$commentRe","commentReply","current","focusInput","getAdjustedSize","size","scaleFont","fontScale","commentsLoadStarted","_this$props$commentRe2","loadingStarted","loadComments","minTime","maxBy","Timestamp","_this$props$commentRe3","sortBy","concat","onCommentsLoaded","loadingCompleted","live","setTimeout","refreshFrequency","startedAddingComment","commentAdded","push","onCommentAdded","canRemoveComment","permissions","adminPermission","closeCommentGallery","renderCommentDeleteConfirm","visible","onConfirm","onPressConfirmDelete","onCancel","onPressCancelDelete","onClose","text","renderCommentReportConfirm","onPressConfirmReport","onPressCancelReport","extraContent","commentReportText","renderCommentBlockConfirm","onPressConfirmBlock","onPressCancelBlock","renderCommentUnblockConfirm","onPressConfirmUnblock","onPressCancelUnblock","renderCommentReportStatus","isSuccess","onPressConfirmReportStatus","hideNo","yesText","renderCommentImage","commentImageContainer","bind","commentImage","source","uri","renderComment","commentFlex","commentProfilePic","commentBlock","commentTitleRow","onPressDeleteComment","commentButtonContainer","backgroundColor","name","type","iconStyle","commentButtonIcon","disableFlag","onPressReportComment","canBlockComment","onPressUnblockUser","onPressBlockUser","commentName","fontSize","Comment","commentText","commentBottom","commentTime","utc","local","format","renderReplyText","renderMute","muteSpinnerContainer","isMuted","hours","getMuteRemaining","mutedFor","muteContainer","mutedForText","onUnmute","onMute","borderColor","muteButton","disabled","disabledOpacity","noText","muteButtonInner","muteButtonIcon","muteButtonText","renderComments","commentSection","isNil","placeHolder","commentsEmpty","reverseOrder","reverse","showReplies","commentSectionTitleRow","alignItems","hideAddComment","goToText","commentCount","renderCommentImagePopup","images","renderReportLoading","reportLoadingContainer","render","commentSectionOuter","create","flex","paddingHorizontal","paddingVertical","borderTopColor","borderTopWidth","fontFamily","marginTop","flexDirection","borderRadius","padding","width","height","justifyContent","textAlign","paddingLeft","marginBottom","borderWidth","mapStateToProps","userSettings","forwardRef"],"sources":["CommentSection.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { View, TouchableOpacity, Image, StyleSheet } from \"react-native\";\nimport { Text } from \"./Text\";\nimport _ from \"lodash\";\nimport moment from \"moment\";\nimport { connect } from \"react-redux\";\nimport { Icon } from \"@rneui/themed\";\nimport {\n\tgetPluralS,\n\tgetThumb300,\n\tget1400,\n\tgetSiteSettingFromState,\n\tgetFirstName,\n\tgetPluralOptions,\n} from \"../helper\";\nimport {\n\tgetMainBrandingColourFromState,\n\tTEXT_DARKEST,\n\tBG_GREY,\n\tTEXT_LIGHT,\n\tLINEGREY,\n} from \"../colours\";\nimport { reactionActions, notificationActions } from \"../apis\";\nimport { blockUser, unblockUser } from \"../actions\";\nimport { ConfirmPopup } from \"./ConfirmPopup\";\nimport { ProfilePic } from \"./ProfilePic\";\nimport { ImagePopup } from \"./ImagePopup\";\nimport { InlineButton } from \"./InlineButton\";\nimport { Spinner } from \"./Spinner\";\nimport { Services } from \"../config\";\n\nclass CommentSection extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tcommentsLoading: false,\n\t\t\tcomments: [],\n\t\t\taddingComment: false,\n\t\t\tcommentToDelete: null,\n\t\t\tcommentToReport: null,\n\t\t\tcommentReportedStatus: null,\n\t\t\treportLoading: false,\n\t\t\tprocessing: false,\n\t\t\tmuteExpiry: null,\n\t\t\tmuteLoaded: false,\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.getNotificationSate();\n\n\t\tif (!_.includes(this.props.user.hidden, \"viewComment\")) {\n\t\t\tthis.getComments();\n\t\t}\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif (this.loadTimer) {\n\t\t\tclearTimeout(this.loadTimer);\n\t\t}\n\t}\n\n\tonPressDeleteComment = (c) => {\n\t\tthis.setState({ commentToDelete: c });\n\t};\n\n\tonPressConfirmDelete = () => {\n\t\treactionActions.removeComment(this.state.commentToDelete.Id).then((res) => {\n\t\t\tconsole.log(\"deleted\");\n\t\t});\n\t\tconst newComments = _.filter(this.state.comments, (c) => {\n\t\t\treturn c.Id !== this.state.commentToDelete.Id;\n\t\t});\n\t\tthis.setState({\n\t\t\tcomments: newComments,\n\t\t\tcommentToDelete: null,\n\t\t});\n\t};\n\n\tonPressCancelDelete = () => {\n\t\tthis.setState({ commentToDelete: null });\n\t};\n\n\tonPressReportComment = (c) => {\n\t\tthis.setState({ commentToReport: c });\n\t};\n\n\tonPressBlockUser = (c) => {\n\t\tthis.setState({ commentToBlock: c });\n\t};\n\n\tonPressConfirmBlock = () => {\n\t\tconst userId = this.state.commentToBlock.UserId;\n\t\tthis.props.blockUser(userId);\n\t\tthis.setState({ commentToBlock: null });\n\t};\n\n\tonPressCancelBlock = () => {\n\t\tthis.setState({ commentToBlock: null });\n\t};\n\n\tonPressUnblockUser = (c) => {\n\t\tthis.setState({ commentToUnblock: c });\n\t};\n\n\tonPressConfirmUnblock = () => {\n\t\tconst userId = this.state.commentToUnblock.UserId;\n\t\tthis.props.unblockUser(userId);\n\t\tthis.setState({ commentToUnblock: null });\n\t};\n\n\tonPressCancelUnblock = () => {\n\t\tthis.setState({ commentToUnblock: null });\n\t};\n\n\tonPressConfirmReport = () => {\n\t\tconst commentId = this.state.commentToReport.Id;\n\t\tthis.setState({ reportLoading: true, commentToReport: null }, () => {\n\t\t\treactionActions\n\t\t\t\t.reportComment(commentId)\n\t\t\t\t.then((res) => {\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tcommentReportedStatus: \"success\",\n\t\t\t\t\t\treportLoading: false,\n\t\t\t\t\t});\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tconsole.log(\"reportComment\", error);\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tcommentReportedStatus: \"fail\",\n\t\t\t\t\t\treportLoading: false,\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t});\n\t};\n\n\tonPressCancelReport = () => {\n\t\tthis.setState({ commentToReport: null });\n\t};\n\n\tonPressConfirmReportStatus = () => {\n\t\tthis.setState({ commentReportedStatus: null });\n\t};\n\n\tonPressCommentImage(image) {\n\t\tthis.setState({\n\t\t\timagePopupSource: [image],\n\t\t\timagePopupOpen: true,\n\t\t});\n\t}\n\n\tonGoToAdd() {\n\t\tthis.props.commentReply?.current?.focusInput();\n\t}\n\n\tonOpenThread = (comment) => {\n\t\tServices.navigation.navigate(\"thread\", {\n\t\t\t...this.props,\n\t\t\tthreadId: comment.Id,\n\t\t});\n\t};\n\n\tonMute = () => {\n\t\tconst { entityType, entityId } = this.props;\n\t\tthis.setState({ processing: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconst { data } = await notificationActions.muteEntity(\n\t\t\t\t\tentityType,\n\t\t\t\t\tentityId,\n\t\t\t\t);\n\t\t\t\t// console.log('onMute', data);\n\t\t\t\tconst muteExpiry = moment(data.Expiry);\n\t\t\t\tthis.setState({ muteExpiry, processing: false });\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(\"onMute\", error);\n\t\t\t\tthis.setState({ processing: false });\n\t\t\t}\n\t\t});\n\t};\n\n\tonUnmute = () => {\n\t\tconst { entityType, entityId } = this.props;\n\t\tthis.setState({ processing: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconst { data } = await notificationActions.unmuteEntity(\n\t\t\t\t\tentityType,\n\t\t\t\t\tentityId,\n\t\t\t\t);\n\t\t\t\t// console.log('onUnmute', data);\n\t\t\t\tthis.setState({ muteExpiry: null, processing: false });\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(\"onUnmute\", error);\n\t\t\t\tthis.setState({ processing: false });\n\t\t\t}\n\t\t});\n\t};\n\n\tisMuted = () => {\n\t\tconst { muteExpiry } = this.state;\n\t\treturn muteExpiry && moment() <= muteExpiry;\n\t};\n\n\tgetMuteRemaining = () => {\n\t\tconst { muteExpiry } = this.state;\n\t\tconst actual = muteExpiry\n\t\t\t? moment.duration(muteExpiry.diff(moment())).asHours()\n\t\t\t: 0;\n\t\treturn Math.abs(Math.ceil(actual));\n\t};\n\n\tgetNotificationSate = () => {\n\t\tconst { processing } = this.state;\n\t\tconst { entityType, entityId, notificationsForComments } = this.props;\n\t\tif (processing || !notificationsForComments) return;\n\n\t\tthis.setState({ processing: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconst { data } = await notificationActions.getEntityNotificationSetting(\n\t\t\t\t\tentityType,\n\t\t\t\t\tentityId,\n\t\t\t\t);\n\t\t\t\t// console.log('getNotificationSate', data);\n\t\t\t\tconst muteExpiry = data ? moment(data.Expiry) : null;\n\t\t\t\tthis.setState({ muteExpiry, muteLoaded: true, processing: false });\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(\"getNotificationSate\", error);\n\t\t\t\tthis.setState({ processing: false });\n\t\t\t}\n\t\t});\n\t};\n\n\tgetAdjustedSize(size) {\n\t\tif (this.props.scaleFont) {\n\t\t\treturn size + this.props.user.fontScale;\n\t\t}\n\t\treturn size;\n\t}\n\n\tgetComments() {\n\t\tif (!this.state.commentsLoadStarted) {\n\t\t\tthis.setState({\n\t\t\t\tcommentsLoadStarted: true,\n\t\t\t\tcommentsLoading: true,\n\t\t\t});\n\t\t\tthis.props.commentReply?.current?.loadingStarted();\n\n\t\t\tthis.loadComments();\n\t\t}\n\t}\n\n\tisEmpty() {\n\t\treturn _.isEmpty(this.state.comments);\n\t}\n\n\tloadComments() {\n\t\tconst minTime = this.isEmpty()\n\t\t\t? 0\n\t\t\t: _.maxBy(this.state.comments, (c) => {\n\t\t\t\t\treturn c.Timestamp;\n\t\t\t\t}).Timestamp;\n\t\treactionActions\n\t\t\t.getComments(this.props.entityId, this.props.entityType, minTime)\n\t\t\t.then((res) => {\n\t\t\t\tthis.setState(\n\t\t\t\t\t{\n\t\t\t\t\t\tcomments: _.sortBy(\n\t\t\t\t\t\t\t_.uniqBy(\n\t\t\t\t\t\t\t\t_.filter(_.concat(this.state.comments, res.data), (c) => {\n\t\t\t\t\t\t\t\t\tif (!this.props.threadId) {\n\t\t\t\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\tc.Id === this.props.threadId ||\n\t\t\t\t\t\t\t\t\t\tc.ParentId === this.props.threadId\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t(c) => {\n\t\t\t\t\t\t\t\t\treturn c.Id;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\"Timestamp\",\n\t\t\t\t\t\t),\n\t\t\t\t\t\tcommentsLoading: false,\n\t\t\t\t\t},\n\t\t\t\t\t() => {\n\t\t\t\t\t\tif (this.props.onCommentsLoaded) {\n\t\t\t\t\t\t\tthis.props.onCommentsLoaded(this.state.comments.length);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t);\n\t\t\t\t//if (this.props.commentReply) {\n\t\t\t\tthis.props.commentReply?.current?.loadingCompleted();\n\t\t\t\t//}\n\t\t\t\tif (this.props.live) {\n\t\t\t\t\tthis.loadTimer = setTimeout(() => {\n\t\t\t\t\t\tthis.loadComments();\n\t\t\t\t\t}, this.props.refreshFrequency || 2000);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tisLoading = () => {\n\t\treturn this.state.commentsLoading;\n\t};\n\n\tstartedAddingComment() {\n\t\tthis.setState({\n\t\t\taddingComment: true,\n\t\t});\n\t}\n\n\tcommentAdded(comment) {\n\t\tconst newComments = this.state.comments;\n\t\tnewComments.push(comment);\n\t\tthis.setState(\n\t\t\t{\n\t\t\t\taddingComment: false,\n\t\t\t\tcomments: newComments,\n\t\t\t},\n\t\t\t() => {\n\t\t\t\tif (this.props.onCommentAdded) {\n\t\t\t\t\tthis.props.onCommentAdded();\n\t\t\t\t}\n\t\t\t},\n\t\t);\n\t}\n\n\tisUserBlocked = (c) => {\n\t\treturn _.includes(this.props.blockedUsers, c.UserId);\n\t};\n\n\tcanBlockComment = (c) => {\n\t\treturn this.props.user.uid !== c.UserId;\n\t};\n\n\tcanRemoveComment(c) {\n\t\tif (this.props.user.uid === c.UserId) {\n\t\t\treturn true;\n\t\t}\n\t\treturn _.includes(this.props.user.permissions, this.props.adminPermission);\n\t}\n\n\tcloseCommentGallery() {\n\t\tthis.setState({\n\t\t\timagePopupSource: [],\n\t\t\timagePopupOpen: false,\n\t\t});\n\t}\n\n\trenderCommentDeleteConfirm() {\n\t\treturn (\n\t\t\t<ConfirmPopup\n\t\t\t\tvisible={!!this.state.commentToDelete}\n\t\t\t\tonConfirm={this.onPressConfirmDelete}\n\t\t\t\tonCancel={this.onPressCancelDelete}\n\t\t\t\tonClose={this.onPressCancelDelete}\n\t\t\t\ttext=\"Are you sure you want to delete this comment?\"\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderCommentReportConfirm() {\n\t\treturn (\n\t\t\t<ConfirmPopup\n\t\t\t\tvisible={!!this.state.commentToReport}\n\t\t\t\tonConfirm={this.onPressConfirmReport}\n\t\t\t\tonCancel={this.onPressCancelReport}\n\t\t\t\tonClose={this.onPressCancelReport}\n\t\t\t\ttext=\"Are you sure you want to report this comment?\"\n\t\t\t\textraContent={\n\t\t\t\t\t<Text style={styles.commentReportText}>\n\t\t\t\t\t\tThis comment will be reported to our team and considered for\n\t\t\t\t\t\tdeletion\n\t\t\t\t\t</Text>\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderCommentBlockConfirm() {\n\t\treturn (\n\t\t\t<ConfirmPopup\n\t\t\t\tvisible={!!this.state.commentToBlock}\n\t\t\t\tonConfirm={this.onPressConfirmBlock}\n\t\t\t\tonCancel={this.onPressCancelBlock}\n\t\t\t\tonClose={this.onPressCancelBlock}\n\t\t\t\ttext=\"Are you sure you want to block this user?\"\n\t\t\t\textraContent={\n\t\t\t\t\t<Text style={styles.commentReportText}>\n\t\t\t\t\t\tYou will no longer see comments made by this user\n\t\t\t\t\t</Text>\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderCommentUnblockConfirm() {\n\t\treturn (\n\t\t\t<ConfirmPopup\n\t\t\t\tvisible={!!this.state.commentToUnblock}\n\t\t\t\tonConfirm={this.onPressConfirmUnblock}\n\t\t\t\tonCancel={this.onPressCancelUnblock}\n\t\t\t\tonClose={this.onPressCancelUnblock}\n\t\t\t\ttext=\"Are you sure you want to unblock this user?\"\n\t\t\t\textraContent={\n\t\t\t\t\t<Text style={styles.commentReportText}>\n\t\t\t\t\t\tYou will once again see comments made by this user\n\t\t\t\t\t</Text>\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderCommentReportStatus() {\n\t\tconst { commentReportedStatus } = this.state;\n\t\tconst isSuccess = commentReportedStatus === \"success\";\n\t\treturn (\n\t\t\t<ConfirmPopup\n\t\t\t\tvisible={!!commentReportedStatus}\n\t\t\t\tonConfirm={this.onPressConfirmReportStatus}\n\t\t\t\ttext={isSuccess ? \"Thank you for reporting\" : \"Unable to report\"}\n\t\t\t\textraContent={\n\t\t\t\t\t<Text style={styles.commentReportText}>\n\t\t\t\t\t\t{isSuccess\n\t\t\t\t\t\t\t? \"We will review the comment within 24 hours\"\n\t\t\t\t\t\t\t: \"There was a problem reporting the comment please try again later\"}\n\t\t\t\t\t</Text>\n\t\t\t\t}\n\t\t\t\thideNo\n\t\t\t\tyesText={\"Done\"}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderCommentImage(c) {\n\t\tif (_.isEmpty(c.Image)) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<TouchableOpacity\n\t\t\t\tstyle={styles.commentImageContainer}\n\t\t\t\tonPress={this.onPressCommentImage.bind(this, get1400(c.Image))}\n\t\t\t>\n\t\t\t\t<Image\n\t\t\t\t\tstyle={styles.commentImage}\n\t\t\t\t\tsource={{ uri: getThumb300(c.Image) }}\n\t\t\t\t/>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t}\n\n\trenderReplyText = (c, isUserBlocked) => {\n\t\tif (this.props.threadId || this.props.hideReplyButton) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst threadComments = _.filter(this.state.comments, (innerC) => {\n\t\t\treturn innerC.ParentId === c.Id;\n\t\t});\n\n\t\tlet content = null;\n\n\t\tif (_.isEmpty(threadComments)) {\n\t\t\t// no replies\n\t\t\tcontent = (\n\t\t\t\t<Text\n\t\t\t\t\tstyle={[\n\t\t\t\t\t\tstyles.commentRepliesText,\n\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t]}\n\t\t\t\t>{`Reply to ${getFirstName(\n\t\t\t\t\t!isUserBlocked && c.User ? c.User.displayName : \"comment\",\n\t\t\t\t)}`}</Text>\n\t\t\t);\n\t\t} else {\n\t\t\t// existing replies\n\t\t\tconst profilePics = _.take(\n\t\t\t\t_.uniqBy(threadComments, (c) => c.UserId),\n\t\t\t\t3,\n\t\t\t);\n\t\t\tcontent = (\n\t\t\t\t<View style={styles.multiReplyContainer}>\n\t\t\t\t\t{profilePics.map((c, i) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<ProfilePic\n\t\t\t\t\t\t\t\tkey={c.Id}\n\t\t\t\t\t\t\t\tstyle={{ marginRight: -10 }}\n\t\t\t\t\t\t\t\tDiameter={20}\n\t\t\t\t\t\t\t\tProfilePic={c.User.profilePic}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t\t<Text\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.commentRepliesText,\n\t\t\t\t\t\t\t{ marginLeft: 20, color: this.props.colourBrandingMain },\n\t\t\t\t\t\t]}\n\t\t\t\t\t>{`${\n\t\t\t\t\t\tthreadComments.length\n\t\t\t\t\t} repl${getPluralOptions(threadComments.length, \"y\", \"ies\")}`}</Text>\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<View style={styles.commentReplies}>\n\t\t\t\t<TouchableOpacity\n\t\t\t\t\tonPress={() => {\n\t\t\t\t\t\tthis.onOpenThread(c);\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{content}\n\t\t\t\t</TouchableOpacity>\n\t\t\t</View>\n\t\t);\n\t};\n\n\trenderComment(c) {\n\t\tconst isUserBlocked = this.isUserBlocked(c);\n\t\treturn (\n\t\t\t<View style={styles.comment} key={c.Id}>\n\t\t\t\t<View style={styles.commentFlex}>\n\t\t\t\t\t<ProfilePic\n\t\t\t\t\t\tProfilePic={isUserBlocked ? null : c.User.profilePic}\n\t\t\t\t\t\tDiameter={40}\n\t\t\t\t\t\tstyle={styles.commentProfilePic}\n\t\t\t\t\t/>\n\t\t\t\t\t<View style={styles.commentBlock}>\n\t\t\t\t\t\t<View style={styles.commentTitleRow}>\n\t\t\t\t\t\t\t{this.canRemoveComment(c) ? (\n\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\tonPress={this.onPressDeleteComment.bind(this, c)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\tstyles.commentButtonContainer,\n\t\t\t\t\t\t\t\t\t\t\t{ backgroundColor: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\tname=\"trash\"\n\t\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\t\ticonStyle={styles.commentButtonIcon}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t!this.props.disableFlag && (\n\t\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\t\tonPress={this.onPressReportComment.bind(this, c)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\t\tstyles.commentButtonContainer,\n\t\t\t\t\t\t\t\t\t\t\t\t{ backgroundColor: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\tname=\"flag\"\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\t\t\ticonStyle={styles.commentButtonIcon}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{!this.props.disableFlag &&\n\t\t\t\t\t\t\t\tthis.canBlockComment(c) &&\n\t\t\t\t\t\t\t\t(isUserBlocked ? (\n\t\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\t\tstyle={{ marginRight: 8 }}\n\t\t\t\t\t\t\t\t\t\tonPress={this.onPressUnblockUser.bind(this, c)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\t\tstyles.commentButtonContainer,\n\t\t\t\t\t\t\t\t\t\t\t\t{ backgroundColor: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\tname=\"user-plus\"\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\t\t\ticonStyle={styles.commentButtonIcon}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\t\tstyle={{ marginRight: 8 }}\n\t\t\t\t\t\t\t\t\t\tonPress={this.onPressBlockUser.bind(this, c)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\t\tstyles.commentButtonContainer,\n\t\t\t\t\t\t\t\t\t\t\t\t{ backgroundColor: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\tname=\"user-times\"\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\t\t\ticonStyle={styles.commentButtonIcon}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\tstyles.commentName,\n\t\t\t\t\t\t\t\t\t{ fontSize: this.getAdjustedSize(13) },\n\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{isUserBlocked ? \"[blocked user]\" : c.User.displayName}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t{!_.isEmpty(c.Comment) && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\tstyles.commentText,\n\t\t\t\t\t\t\t\t\t{ fontSize: this.getAdjustedSize(13) },\n\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{isUserBlocked ? \"[hidden]\" : c.Comment}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!isUserBlocked && this.renderCommentImage(c)}\n\t\t\t\t\t</View>\n\t\t\t\t</View>\n\t\t\t\t<View style={styles.commentBottom}>\n\t\t\t\t\t<Text\n\t\t\t\t\t\tstyle={[styles.commentTime, { fontSize: this.getAdjustedSize(13) }]}\n\t\t\t\t\t>\n\t\t\t\t\t\t{moment.utc(c.Timestamp).local().format(\"D MMM • h:mma\")}\n\t\t\t\t\t</Text>\n\t\t\t\t\t{this.renderReplyText(c, isUserBlocked)}\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderMute() {\n\t\tconst { notificationsForComments } = this.props;\n\t\tconst { muteLoaded, muteExpiry, processing } = this.state;\n\t\tif (!notificationsForComments || !muteLoaded) return null;\n\n\t\tif (processing)\n\t\t\treturn (\n\t\t\t\t<View style={styles.muteSpinnerContainer}>\n\t\t\t\t\t<Spinner size={\"small\"} color={this.props.colourBrandingMain} />\n\t\t\t\t</View>\n\t\t\t);\n\n\t\tconst isMuted = this.isMuted();\n\t\tconst hours = this.getMuteRemaining();\n\t\tconst mutedFor = `Muted for ${hours} hour${getPluralS(hours)}`;\n\t\t// console.log(muteExpiry.format('DD MMM YYYY hh:mm a'));\n\n\t\treturn (\n\t\t\t<View style={styles.muteContainer}>\n\t\t\t\t{isMuted && muteExpiry ? (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\tstyles.mutedForText,\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t{mutedFor}\n\t\t\t\t\t</Text>\n\t\t\t\t) : null}\n\t\t\t\t<InlineButton\n\t\t\t\t\tonPress={isMuted ? this.onUnmute : this.onMute}\n\t\t\t\t\tcolor=\"#fff\"\n\t\t\t\t\tstyle={[\n\t\t\t\t\t\t{ borderColor: this.props.colourBrandingMain },\n\t\t\t\t\t\tstyles.muteButton,\n\t\t\t\t\t]}\n\t\t\t\t\tdisabled={processing}\n\t\t\t\t\tdisabledOpacity\n\t\t\t\t\tnoText\n\t\t\t\t>\n\t\t\t\t\t<View style={styles.muteButtonInner}>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tname={isMuted ? \"bell-o\" : \"bell-slash-o\"}\n\t\t\t\t\t\t\ttype={\"font-awesome\"}\n\t\t\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\tstyles.muteButtonIcon,\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\tstyles.muteButtonText,\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{isMuted ? \"Unmute\" : \"Mute\"}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</View>\n\t\t\t\t</InlineButton>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderComments() {\n\t\tif (this.state.commentsLoading) {\n\t\t\treturn (\n\t\t\t\t<View style={styles.commentSection}>\n\t\t\t\t\t<Spinner color={this.props.colourBrandingMain} />\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\tif (this.isEmpty() && !this.state.addingComment) {\n\t\t\tif (_.includes(this.props.user.hidden, \"addComment\")) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tif (!_.isNil(this.props.placeHolder) && _.isEmpty(this.props.placeHolder))\n\t\t\t\treturn null;\n\t\t\treturn (\n\t\t\t\t<View style={styles.commentSection}>\n\t\t\t\t\t<Text\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.commentsEmpty,\n\t\t\t\t\t\t\t{ fontSize: this.getAdjustedSize(15) },\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t{_.isNil(this.props.placeHolder)\n\t\t\t\t\t\t\t? \"Be the first to add a comment!\"\n\t\t\t\t\t\t\t: this.props.placeHolder}\n\t\t\t\t\t</Text>\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\tlet source = [...this.state.comments];\n\t\tif (this.props.reverseOrder) {\n\t\t\tsource = source.reverse();\n\t\t}\n\t\tif (!this.props.showReplies && !this.props.threadId) {\n\t\t\tsource = _.filter(source, (c) => {\n\t\t\t\treturn !c.ParentId;\n\t\t\t});\n\t\t}\n\t\treturn (\n\t\t\t<View style={styles.commentSection}>\n\t\t\t\t{!this.isEmpty() && (\n\t\t\t\t\t<View style={styles.commentSectionTitleRow}>\n\t\t\t\t\t\t<View style={{ alignItems: \"flex-end\" }}>\n\t\t\t\t\t\t\t{this.renderMute()}\n\t\t\t\t\t\t\t{!this.props.hideAddComment && this.state.comments.length > 2 && (\n\t\t\t\t\t\t\t\t<TouchableOpacity onPress={this.onGoToAdd.bind(this)}>\n\t\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\tstyles.goToText,\n\t\t\t\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tAdd a comment\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\tstyles.commentCount,\n\t\t\t\t\t\t\t\t{ fontSize: this.getAdjustedSize(15) },\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{this.state.comments.length}\n\t\t\t\t\t\t\t{` comment${getPluralS(this.state.comments.length)}`}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</View>\n\t\t\t\t)}\n\t\t\t\t{this.props.reverseOrder && this.state.addingComment && (\n\t\t\t\t\t<Spinner color={this.props.colourBrandingMain} />\n\t\t\t\t)}\n\t\t\t\t{source.map((c) => {\n\t\t\t\t\treturn this.renderComment(c);\n\t\t\t\t})}\n\t\t\t\t{!this.props.reverseOrder && this.state.addingComment && (\n\t\t\t\t\t<Spinner color={this.props.colourBrandingMain} />\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderCommentImagePopup() {\n\t\treturn (\n\t\t\t<ImagePopup\n\t\t\t\tvisible={this.state.imagePopupOpen}\n\t\t\t\timages={this.state.imagePopupSource}\n\t\t\t\tonClose={this.closeCommentGallery.bind(this)}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderReportLoading() {\n\t\tif (!this.state.reportLoading) return null;\n\t\treturn (\n\t\t\t<View style={styles.reportLoadingContainer}>\n\t\t\t\t<Spinner color={this.props.colourBrandingMain} />\n\t\t\t</View>\n\t\t);\n\t}\n\n\trender() {\n\t\tif (_.includes(this.props.user.hidden, \"viewComment\")) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<View style={[styles.commentSectionOuter, this.props.style]}>\n\t\t\t\t{this.renderComments()}\n\t\t\t\t{this.renderReportLoading()}\n\t\t\t\t{this.renderCommentDeleteConfirm()}\n\t\t\t\t{this.renderCommentReportConfirm()}\n\t\t\t\t{this.renderCommentBlockConfirm()}\n\t\t\t\t{this.renderCommentUnblockConfirm()}\n\t\t\t\t{this.renderCommentReportStatus()}\n\t\t\t\t{this.renderCommentImagePopup()}\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nconst styles = StyleSheet.create({\n\tcommentSectionOuter: {\n\t\tflex: 1,\n\t\tpaddingHorizontal: 16,\n\t},\n\tcommentSection: {\n\t\tflex: 1,\n\t\tpaddingVertical: 12,\n\t\tborderTopColor: LINEGREY,\n\t\tborderTopWidth: 1,\n\t},\n\tcommentCount: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tcolor: TEXT_DARKEST,\n\t\tflex: 1,\n\t\tmarginTop: 4,\n\t},\n\tcomment: {\n\t\tmarginTop: 16,\n\t},\n\tcommentFlex: {\n\t\tflexDirection: \"row\",\n\t},\n\tcommentProfilePic: {\n\t\tmarginRight: 8,\n\t},\n\tcommentBlock: {\n\t\tflex: 1,\n\t\tbackgroundColor: BG_GREY,\n\t\tborderRadius: 5,\n\t\tpadding: 8,\n\t},\n\tcommentTitleRow: {\n\t\tflexDirection: \"row-reverse\",\n\t\talignItems: \"center\",\n\t},\n\tcommentButtonContainer: {\n\t\twidth: 24,\n\t\theight: 24,\n\t\tborderRadius: 12,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\tcommentButtonIcon: {\n\t\tfontSize: 13,\n\t\tcolor: \"#fff\",\n\t},\n\tcommentName: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tcolor: TEXT_DARKEST,\n\t\tflex: 1,\n\t},\n\tcommentText: {\n\t\tmarginTop: 8,\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: TEXT_DARKEST,\n\t},\n\tcommentBottom: {\n\t\tflexDirection: \"row-reverse\",\n\t\tjustifyContent: \"space-between\",\n\t\talignItems: \"center\",\n\t},\n\tcommentTime: {\n\t\tfontFamily: \"sf-regular\",\n\t\tmarginTop: 4,\n\t\tcolor: TEXT_LIGHT,\n\t\ttextAlign: \"right\",\n\t},\n\tcommentReplies: {\n\t\tflex: 1,\n\t\tpaddingLeft: 48,\n\t},\n\tcommentRepliesText: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 15,\n\t},\n\tmultiReplyContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tpaddingVertical: 4,\n\t},\n\tcommentImageContainer: {\n\t\tmarginTop: 8,\n\t\twidth: 60,\n\t\theight: 60,\n\t},\n\tcommentImage: {\n\t\twidth: 60,\n\t\theight: 60,\n\t\tborderRadius: 2,\n\t},\n\tcommentsEmpty: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tcolor: TEXT_DARKEST,\n\t},\n\tcommentSectionTitleRow: {\n\t\tflexDirection: \"row-reverse\",\n\t},\n\tcommentReportText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 14,\n\t\tpaddingHorizontal: 22,\n\t\ttextAlign: \"center\",\n\t},\n\treportLoadingContainer: {\n\t\tpaddingVertical: 10,\n\t},\n\tgoToText: {\n\t\tmarginTop: 4,\n\t},\n\tmuteSpinnerContainer: {\n\t\twidth: 100,\n\t\tmarginBottom: 6,\n\t},\n\tmuteContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"flex-end\",\n\t\tmarginBottom: 6,\n\t},\n\tmutedForText: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 13,\n\t\tmarginRight: 8,\n\t},\n\tmuteButton: {\n\t\tborderWidth: 1,\n\t\tpaddingHorizontal: 8,\n\t},\n\tmuteButtonInner: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tmuteButtonIcon: {\n\t\tfontSize: 14,\n\t},\n\tmuteButtonText: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 14,\n\t\tmarginLeft: 6,\n\t},\n});\n\nconst mapStateToProps = (state) => {\n\treturn {\n\t\tcolourBrandingMain: getMainBrandingColourFromState(state),\n\t\tuser: state.user,\n\t\tnotificationsForComments: getSiteSettingFromState(\n\t\t\tstate,\n\t\t\t\"NotificationsForComments\",\n\t\t\tfalse,\n\t\t),\n\t\tblockedUsers: state.userSettings.blockedUsers || [],\n\t};\n};\n\nconst commentSection = connect(\n\tmapStateToProps,\n\t{ blockUser, unblockUser },\n\tnull,\n\t{ forwardRef: true },\n)(CommentSection);\nexport { commentSection as CommentSection };\n"],"mappings":"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","ignoreList":[]}
@@ -1,11 +1,12 @@
1
- import React, { PureComponent } from 'react';
2
- import { Text, View } from 'react-native';
3
- import _ from 'lodash';
4
- import { connect } from 'react-redux';
5
- import { getMainBrandingColourFromState, TEXT_DARK } from '../colours';
6
- import { Spinner } from './Spinner';
7
- import { InlineButton } from './InlineButton';
8
- import { MiddlePopup } from './MiddlePopup';
1
+ import React, { PureComponent } from "react";
2
+ import { View } from "react-native";
3
+ import { Text } from "./Text";
4
+ import _ from "lodash";
5
+ import { connect } from "react-redux";
6
+ import { getMainBrandingColourFromState, TEXT_DARK } from "../colours";
7
+ import { Spinner } from "./Spinner";
8
+ import { InlineButton } from "./InlineButton";
9
+ import { MiddlePopup } from "./MiddlePopup";
9
10
  class ConfirmPopup extends PureComponent {
10
11
  render() {
11
12
  return /*#__PURE__*/React.createElement(MiddlePopup, {
@@ -42,12 +43,12 @@ class ConfirmPopup extends PureComponent {
42
43
  color: this.props.colourBrandingMain
43
44
  },
44
45
  large: true
45
- }, this.props.noText || 'No'), !this.props.hideYes && !this.props.buttonsLoading && /*#__PURE__*/React.createElement(InlineButton, {
46
+ }, this.props.noText || "No"), !this.props.hideYes && !this.props.buttonsLoading && /*#__PURE__*/React.createElement(InlineButton, {
46
47
  onPress: this.props.onConfirm,
47
48
  color: this.props.colourBrandingMain,
48
49
  style: [styles.button, this.props.verticalButtons && styles.buttonVertical],
49
50
  large: true
50
- }, this.props.yesText || 'Yes')));
51
+ }, this.props.yesText || "Yes")));
51
52
  }
52
53
  }
53
54
  const styles = {
@@ -57,28 +58,28 @@ const styles = {
57
58
  maxWidth: 350
58
59
  },
59
60
  text: {
60
- fontFamily: 'sf-bold',
61
+ fontFamily: "sf-bold",
61
62
  fontSize: 20,
62
63
  color: TEXT_DARK,
63
- textAlign: 'center'
64
+ textAlign: "center"
64
65
  },
65
66
  subtext: {
66
- fontFamily: 'sf-regular',
67
+ fontFamily: "sf-regular",
67
68
  fontSize: 17,
68
69
  color: TEXT_DARK,
69
- textAlign: 'center'
70
+ textAlign: "center"
70
71
  },
71
72
  textAlignLeft: {
72
- textAlign: 'left'
73
+ textAlign: "left"
73
74
  },
74
75
  buttonsContainer: {
75
- flexDirection: 'row',
76
+ flexDirection: "row",
76
77
  marginTop: 24
77
78
  },
78
79
  loadingContainer: {
79
80
  height: 40,
80
- justifyContent: 'center',
81
- alignItems: 'center'
81
+ justifyContent: "center",
82
+ alignItems: "center"
82
83
  },
83
84
  button: {
84
85
  width: 120,
@@ -89,13 +90,13 @@ const styles = {
89
90
  marginRight: 16
90
91
  },
91
92
  buttonVertical: {
92
- width: '100%',
93
+ width: "100%",
93
94
  marginTop: 16,
94
95
  marginRight: 0,
95
96
  paddingHorizontal: 8
96
97
  },
97
98
  verticalButtons: {
98
- flexDirection: 'column-reverse'
99
+ flexDirection: "column-reverse"
99
100
  }
100
101
  };
101
102
  const mapStateToProps = state => {
@@ -1 +1 @@
1
- {"version":3,"names":["React","PureComponent","Text","View","_","connect","getMainBrandingColourFromState","TEXT_DARK","Spinner","InlineButton","MiddlePopup","ConfirmPopup","render","createElement","visible","props","onClose","style","styles","popup","headerContent","paddingTop","width","marginBottom","isEmpty","text","textAlignLeft","subtext","extraContent","marginTop","children","buttonsContainer","verticalButtons","buttonsLoading","loadingContainer","hideNo","onPress","onCancel","color","button","noButton","buttonVertical","borderColor","colourBrandingMain","textStyle","large","noText","hideYes","onConfirm","yesText","padding","margin","maxWidth","fontFamily","fontSize","textAlign","flexDirection","height","justifyContent","alignItems","paddingHorizontal","borderWidth","marginRight","mapStateToProps","state","confirmPopup"],"sources":["ConfirmPopup.js"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport { Text, View } from 'react-native';\nimport _ from 'lodash';\nimport { connect } from 'react-redux';\nimport { getMainBrandingColourFromState, TEXT_DARK } from '../colours';\nimport { Spinner } from './Spinner';\nimport { InlineButton } from './InlineButton';\nimport { MiddlePopup } from './MiddlePopup';\n\nclass ConfirmPopup extends PureComponent {\n render() {\n return (\n <MiddlePopup\n visible={this.props.visible}\n onClose={this.props.onClose}\n style={[styles.popup, this.props.headerContent && { paddingTop: 16 }]}\n >\n {this.props.headerContent && <View style={{ width: 350, marginBottom: 16 }}>{this.props.headerContent}</View>}\n {!_.isEmpty(this.props.text) && (\n <Text style={[styles.text, this.props.textAlignLeft && styles.textAlignLeft]}>{this.props.text}</Text>\n )}\n {!_.isEmpty(this.props.subtext) && (\n <Text style={[styles.subtext, this.props.textAlignLeft && styles.textAlignLeft]}>{this.props.subtext}</Text>\n )}\n {this.props.extraContent && <View style={{ width: 350, marginTop: 16 }}>{this.props.extraContent}</View>}\n {this.props.children}\n <View style={[styles.buttonsContainer, this.props.verticalButtons && styles.verticalButtons]}>\n {this.props.buttonsLoading && (\n <View style={styles.loadingContainer}>\n <Spinner />\n </View>\n )}\n {!this.props.hideNo && !this.props.buttonsLoading && (\n <InlineButton\n onPress={this.props.onCancel}\n color=\"#fff\"\n style={[\n styles.button,\n styles.noButton,\n this.props.verticalButtons && styles.buttonVertical,\n { borderColor: this.props.colourBrandingMain },\n ]}\n textStyle={{ color: this.props.colourBrandingMain }}\n large\n >\n {this.props.noText || 'No'}\n </InlineButton>\n )}\n {!this.props.hideYes && !this.props.buttonsLoading && (\n <InlineButton\n onPress={this.props.onConfirm}\n color={this.props.colourBrandingMain}\n style={[styles.button, this.props.verticalButtons && styles.buttonVertical]}\n large\n >\n {this.props.yesText || 'Yes'}\n </InlineButton>\n )}\n </View>\n </MiddlePopup>\n );\n }\n}\n\nconst styles = {\n popup: {\n padding: 24,\n margin: 16,\n maxWidth: 350,\n },\n text: {\n fontFamily: 'sf-bold',\n fontSize: 20,\n color: TEXT_DARK,\n textAlign: 'center',\n },\n subtext: {\n fontFamily: 'sf-regular',\n fontSize: 17,\n color: TEXT_DARK,\n textAlign: 'center',\n },\n textAlignLeft: {\n textAlign: 'left',\n },\n buttonsContainer: {\n flexDirection: 'row',\n marginTop: 24,\n },\n loadingContainer: {\n height: 40,\n justifyContent: 'center',\n alignItems: 'center',\n },\n button: {\n width: 120,\n paddingHorizontal: 2,\n },\n noButton: {\n borderWidth: 1,\n marginRight: 16,\n },\n buttonVertical: {\n width: '100%',\n marginTop: 16,\n marginRight: 0,\n paddingHorizontal: 8,\n },\n verticalButtons: {\n flexDirection: 'column-reverse',\n },\n};\n\nconst mapStateToProps = state => {\n return {\n colourBrandingMain: getMainBrandingColourFromState(state),\n };\n};\n\nconst confirmPopup = connect(mapStateToProps, {})(ConfirmPopup);\nexport { confirmPopup as ConfirmPopup };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","PureComponent","View","Text","_","connect","getMainBrandingColourFromState","TEXT_DARK","Spinner","InlineButton","MiddlePopup","ConfirmPopup","render","createElement","visible","props","onClose","style","styles","popup","headerContent","paddingTop","width","marginBottom","isEmpty","text","textAlignLeft","subtext","extraContent","marginTop","children","buttonsContainer","verticalButtons","buttonsLoading","loadingContainer","hideNo","onPress","onCancel","color","button","noButton","buttonVertical","borderColor","colourBrandingMain","textStyle","large","noText","hideYes","onConfirm","yesText","padding","margin","maxWidth","fontFamily","fontSize","textAlign","flexDirection","height","justifyContent","alignItems","paddingHorizontal","borderWidth","marginRight","mapStateToProps","state","confirmPopup"],"sources":["ConfirmPopup.js"],"sourcesContent":["import React, { PureComponent } from \"react\";\nimport { View } from \"react-native\";\nimport { Text } from \"./Text\";\nimport _ from \"lodash\";\nimport { connect } from \"react-redux\";\nimport { getMainBrandingColourFromState, TEXT_DARK } from \"../colours\";\nimport { Spinner } from \"./Spinner\";\nimport { InlineButton } from \"./InlineButton\";\nimport { MiddlePopup } from \"./MiddlePopup\";\n\nclass ConfirmPopup extends PureComponent {\n\trender() {\n\t\treturn (\n\t\t\t<MiddlePopup\n\t\t\t\tvisible={this.props.visible}\n\t\t\t\tonClose={this.props.onClose}\n\t\t\t\tstyle={[styles.popup, this.props.headerContent && { paddingTop: 16 }]}\n\t\t\t>\n\t\t\t\t{this.props.headerContent && (\n\t\t\t\t\t<View style={{ width: 350, marginBottom: 16 }}>\n\t\t\t\t\t\t{this.props.headerContent}\n\t\t\t\t\t</View>\n\t\t\t\t)}\n\t\t\t\t{!_.isEmpty(this.props.text) && (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.text,\n\t\t\t\t\t\t\tthis.props.textAlignLeft && styles.textAlignLeft,\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.props.text}\n\t\t\t\t\t</Text>\n\t\t\t\t)}\n\t\t\t\t{!_.isEmpty(this.props.subtext) && (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.subtext,\n\t\t\t\t\t\t\tthis.props.textAlignLeft && styles.textAlignLeft,\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.props.subtext}\n\t\t\t\t\t</Text>\n\t\t\t\t)}\n\t\t\t\t{this.props.extraContent && (\n\t\t\t\t\t<View style={{ width: 350, marginTop: 16 }}>\n\t\t\t\t\t\t{this.props.extraContent}\n\t\t\t\t\t</View>\n\t\t\t\t)}\n\t\t\t\t{this.props.children}\n\t\t\t\t<View\n\t\t\t\t\tstyle={[\n\t\t\t\t\t\tstyles.buttonsContainer,\n\t\t\t\t\t\tthis.props.verticalButtons && styles.verticalButtons,\n\t\t\t\t\t]}\n\t\t\t\t>\n\t\t\t\t\t{this.props.buttonsLoading && (\n\t\t\t\t\t\t<View style={styles.loadingContainer}>\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</View>\n\t\t\t\t\t)}\n\t\t\t\t\t{!this.props.hideNo && !this.props.buttonsLoading && (\n\t\t\t\t\t\t<InlineButton\n\t\t\t\t\t\t\tonPress={this.props.onCancel}\n\t\t\t\t\t\t\tcolor=\"#fff\"\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\tstyles.button,\n\t\t\t\t\t\t\t\tstyles.noButton,\n\t\t\t\t\t\t\t\tthis.props.verticalButtons && styles.buttonVertical,\n\t\t\t\t\t\t\t\t{ borderColor: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\ttextStyle={{ color: this.props.colourBrandingMain }}\n\t\t\t\t\t\t\tlarge\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{this.props.noText || \"No\"}\n\t\t\t\t\t\t</InlineButton>\n\t\t\t\t\t)}\n\t\t\t\t\t{!this.props.hideYes && !this.props.buttonsLoading && (\n\t\t\t\t\t\t<InlineButton\n\t\t\t\t\t\t\tonPress={this.props.onConfirm}\n\t\t\t\t\t\t\tcolor={this.props.colourBrandingMain}\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\tstyles.button,\n\t\t\t\t\t\t\t\tthis.props.verticalButtons && styles.buttonVertical,\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\tlarge\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{this.props.yesText || \"Yes\"}\n\t\t\t\t\t\t</InlineButton>\n\t\t\t\t\t)}\n\t\t\t\t</View>\n\t\t\t</MiddlePopup>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tpopup: {\n\t\tpadding: 24,\n\t\tmargin: 16,\n\t\tmaxWidth: 350,\n\t},\n\ttext: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 20,\n\t\tcolor: TEXT_DARK,\n\t\ttextAlign: \"center\",\n\t},\n\tsubtext: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 17,\n\t\tcolor: TEXT_DARK,\n\t\ttextAlign: \"center\",\n\t},\n\ttextAlignLeft: {\n\t\ttextAlign: \"left\",\n\t},\n\tbuttonsContainer: {\n\t\tflexDirection: \"row\",\n\t\tmarginTop: 24,\n\t},\n\tloadingContainer: {\n\t\theight: 40,\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t},\n\tbutton: {\n\t\twidth: 120,\n\t\tpaddingHorizontal: 2,\n\t},\n\tnoButton: {\n\t\tborderWidth: 1,\n\t\tmarginRight: 16,\n\t},\n\tbuttonVertical: {\n\t\twidth: \"100%\",\n\t\tmarginTop: 16,\n\t\tmarginRight: 0,\n\t\tpaddingHorizontal: 8,\n\t},\n\tverticalButtons: {\n\t\tflexDirection: \"column-reverse\",\n\t},\n};\n\nconst mapStateToProps = (state) => {\n\treturn {\n\t\tcolourBrandingMain: getMainBrandingColourFromState(state),\n\t};\n};\n\nconst confirmPopup = connect(mapStateToProps, {})(ConfirmPopup);\nexport { confirmPopup as ConfirmPopup };\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,IAAI,QAAQ,QAAQ;AAC7B,OAAOC,CAAC,MAAM,QAAQ;AACtB,SAASC,OAAO,QAAQ,aAAa;AACrC,SAASC,8BAA8B,EAAEC,SAAS,QAAQ,YAAY;AACtE,SAASC,OAAO,QAAQ,WAAW;AACnC,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,WAAW,QAAQ,eAAe;AAE3C,MAAMC,YAAY,SAASV,aAAa,CAAC;EACxCW,MAAMA,CAAA,EAAG;IACR,oBACCZ,KAAA,CAAAa,aAAA,CAACH,WAAW;MACXI,OAAO,EAAE,IAAI,CAACC,KAAK,CAACD,OAAQ;MAC5BE,OAAO,EAAE,IAAI,CAACD,KAAK,CAACC,OAAQ;MAC5BC,KAAK,EAAE,CAACC,MAAM,CAACC,KAAK,EAAE,IAAI,CAACJ,KAAK,CAACK,aAAa,IAAI;QAAEC,UAAU,EAAE;MAAG,CAAC;IAAE,GAErE,IAAI,CAACN,KAAK,CAACK,aAAa,iBACxBpB,KAAA,CAAAa,aAAA,CAACX,IAAI;MAACe,KAAK,EAAE;QAAEK,KAAK,EAAE,GAAG;QAAEC,YAAY,EAAE;MAAG;IAAE,GAC5C,IAAI,CAACR,KAAK,CAACK,aACP,CACN,EACA,CAAChB,CAAC,CAACoB,OAAO,CAAC,IAAI,CAACT,KAAK,CAACU,IAAI,CAAC,iBAC3BzB,KAAA,CAAAa,aAAA,CAACV,IAAI;MACJc,KAAK,EAAE,CACNC,MAAM,CAACO,IAAI,EACX,IAAI,CAACV,KAAK,CAACW,aAAa,IAAIR,MAAM,CAACQ,aAAa;IAC/C,GAED,IAAI,CAACX,KAAK,CAACU,IACP,CACN,EACA,CAACrB,CAAC,CAACoB,OAAO,CAAC,IAAI,CAACT,KAAK,CAACY,OAAO,CAAC,iBAC9B3B,KAAA,CAAAa,aAAA,CAACV,IAAI;MACJc,KAAK,EAAE,CACNC,MAAM,CAACS,OAAO,EACd,IAAI,CAACZ,KAAK,CAACW,aAAa,IAAIR,MAAM,CAACQ,aAAa;IAC/C,GAED,IAAI,CAACX,KAAK,CAACY,OACP,CACN,EACA,IAAI,CAACZ,KAAK,CAACa,YAAY,iBACvB5B,KAAA,CAAAa,aAAA,CAACX,IAAI;MAACe,KAAK,EAAE;QAAEK,KAAK,EAAE,GAAG;QAAEO,SAAS,EAAE;MAAG;IAAE,GACzC,IAAI,CAACd,KAAK,CAACa,YACP,CACN,EACA,IAAI,CAACb,KAAK,CAACe,QAAQ,eACpB9B,KAAA,CAAAa,aAAA,CAACX,IAAI;MACJe,KAAK,EAAE,CACNC,MAAM,CAACa,gBAAgB,EACvB,IAAI,CAAChB,KAAK,CAACiB,eAAe,IAAId,MAAM,CAACc,eAAe;IACnD,GAED,IAAI,CAACjB,KAAK,CAACkB,cAAc,iBACzBjC,KAAA,CAAAa,aAAA,CAACX,IAAI;MAACe,KAAK,EAAEC,MAAM,CAACgB;IAAiB,gBACpClC,KAAA,CAAAa,aAAA,CAACL,OAAO,MAAE,CACL,CACN,EACA,CAAC,IAAI,CAACO,KAAK,CAACoB,MAAM,IAAI,CAAC,IAAI,CAACpB,KAAK,CAACkB,cAAc,iBAChDjC,KAAA,CAAAa,aAAA,CAACJ,YAAY;MACZ2B,OAAO,EAAE,IAAI,CAACrB,KAAK,CAACsB,QAAS;MAC7BC,KAAK,EAAC,MAAM;MACZrB,KAAK,EAAE,CACNC,MAAM,CAACqB,MAAM,EACbrB,MAAM,CAACsB,QAAQ,EACf,IAAI,CAACzB,KAAK,CAACiB,eAAe,IAAId,MAAM,CAACuB,cAAc,EACnD;QAAEC,WAAW,EAAE,IAAI,CAAC3B,KAAK,CAAC4B;MAAmB,CAAC,CAC7C;MACFC,SAAS,EAAE;QAAEN,KAAK,EAAE,IAAI,CAACvB,KAAK,CAAC4B;MAAmB,CAAE;MACpDE,KAAK;IAAA,GAEJ,IAAI,CAAC9B,KAAK,CAAC+B,MAAM,IAAI,IACT,CACd,EACA,CAAC,IAAI,CAAC/B,KAAK,CAACgC,OAAO,IAAI,CAAC,IAAI,CAAChC,KAAK,CAACkB,cAAc,iBACjDjC,KAAA,CAAAa,aAAA,CAACJ,YAAY;MACZ2B,OAAO,EAAE,IAAI,CAACrB,KAAK,CAACiC,SAAU;MAC9BV,KAAK,EAAE,IAAI,CAACvB,KAAK,CAAC4B,kBAAmB;MACrC1B,KAAK,EAAE,CACNC,MAAM,CAACqB,MAAM,EACb,IAAI,CAACxB,KAAK,CAACiB,eAAe,IAAId,MAAM,CAACuB,cAAc,CAClD;MACFI,KAAK;IAAA,GAEJ,IAAI,CAAC9B,KAAK,CAACkC,OAAO,IAAI,KACV,CAEV,CACM,CAAC;EAEhB;AACD;AAEA,MAAM/B,MAAM,GAAG;EACdC,KAAK,EAAE;IACN+B,OAAO,EAAE,EAAE;IACXC,MAAM,EAAE,EAAE;IACVC,QAAQ,EAAE;EACX,CAAC;EACD3B,IAAI,EAAE;IACL4B,UAAU,EAAE,SAAS;IACrBC,QAAQ,EAAE,EAAE;IACZhB,KAAK,EAAE/B,SAAS;IAChBgD,SAAS,EAAE;EACZ,CAAC;EACD5B,OAAO,EAAE;IACR0B,UAAU,EAAE,YAAY;IACxBC,QAAQ,EAAE,EAAE;IACZhB,KAAK,EAAE/B,SAAS;IAChBgD,SAAS,EAAE;EACZ,CAAC;EACD7B,aAAa,EAAE;IACd6B,SAAS,EAAE;EACZ,CAAC;EACDxB,gBAAgB,EAAE;IACjByB,aAAa,EAAE,KAAK;IACpB3B,SAAS,EAAE;EACZ,CAAC;EACDK,gBAAgB,EAAE;IACjBuB,MAAM,EAAE,EAAE;IACVC,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE;EACb,CAAC;EACDpB,MAAM,EAAE;IACPjB,KAAK,EAAE,GAAG;IACVsC,iBAAiB,EAAE;EACpB,CAAC;EACDpB,QAAQ,EAAE;IACTqB,WAAW,EAAE,CAAC;IACdC,WAAW,EAAE;EACd,CAAC;EACDrB,cAAc,EAAE;IACfnB,KAAK,EAAE,MAAM;IACbO,SAAS,EAAE,EAAE;IACbiC,WAAW,EAAE,CAAC;IACdF,iBAAiB,EAAE;EACpB,CAAC;EACD5B,eAAe,EAAE;IAChBwB,aAAa,EAAE;EAChB;AACD,CAAC;AAED,MAAMO,eAAe,GAAIC,KAAK,IAAK;EAClC,OAAO;IACNrB,kBAAkB,EAAErC,8BAA8B,CAAC0D,KAAK;EACzD,CAAC;AACF,CAAC;AAED,MAAMC,YAAY,GAAG5D,OAAO,CAAC0D,eAAe,EAAE,CAAC,CAAC,CAAC,CAACpD,YAAY,CAAC;AAC/D,SAASsD,YAAY,IAAItD,YAAY","ignoreList":[]}
@@ -1,19 +1,19 @@
1
- import React, { PureComponent } from 'react';
2
- import { Text } from 'react-native';
3
- import { connect } from 'react-redux';
4
- import { Pl60Icon } from '../fonts';
5
- import { COLOUR_GREEN, TEXT_DARK, getMainBrandingColourFromState } from '../colours';
6
- import { MiddlePopup } from './MiddlePopup';
7
- import { InlineButton } from './InlineButton';
1
+ import React, { PureComponent } from "react";
2
+ import { Text } from "./Text";
3
+ import { connect } from "react-redux";
4
+ import { FontAwesome } from "./Icon";
5
+ import { COLOUR_GREEN, TEXT_DARK, getMainBrandingColourFromState } from "../colours";
6
+ import { MiddlePopup } from "./MiddlePopup";
7
+ import { InlineButton } from "./InlineButton";
8
8
  class ConfirmationPopup extends PureComponent {
9
9
  render() {
10
10
  return /*#__PURE__*/React.createElement(MiddlePopup, {
11
11
  visible: this.props.visible,
12
12
  onClose: this.props.onClose,
13
13
  style: [styles.popup, this.props.style]
14
- }, /*#__PURE__*/React.createElement(Pl60Icon, {
14
+ }, /*#__PURE__*/React.createElement(FontAwesome, {
15
15
  style: styles.icon,
16
- name: "circleoutlined"
16
+ name: "check-circle"
17
17
  }), /*#__PURE__*/React.createElement(Text, {
18
18
  style: styles.text
19
19
  }, this.props.confirmText), this.props.onPressAction && /*#__PURE__*/React.createElement(InlineButton, {
@@ -44,11 +44,11 @@ const styles = {
44
44
  color: COLOUR_GREEN
45
45
  },
46
46
  text: {
47
- fontFamily: 'sf-bold',
47
+ fontFamily: "sf-bold",
48
48
  fontSize: 24,
49
49
  lineHeight: 24,
50
50
  color: TEXT_DARK,
51
- textAlign: 'center',
51
+ textAlign: "center",
52
52
  marginTop: 8
53
53
  },
54
54
  button: {
@@ -1 +1 @@
1
- {"version":3,"names":["React","PureComponent","Text","connect","Pl60Icon","COLOUR_GREEN","TEXT_DARK","getMainBrandingColourFromState","MiddlePopup","InlineButton","ConfirmationPopup","render","createElement","visible","props","onClose","style","styles","popup","icon","name","text","confirmText","onPressAction","onPress","color","colourBrandingMain","button","largeButtons","largeButton","large","repeatText","closeButton","borderColor","textStyle","width","paddingVertical","fontSize","fontFamily","lineHeight","textAlign","marginTop","borderWidth","mapStateToProps","state","confirmationPopup"],"sources":["ConfirmationPopup.js"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport { Text } from 'react-native';\nimport { connect } from 'react-redux';\nimport { Pl60Icon } from '../fonts';\nimport { COLOUR_GREEN, TEXT_DARK, getMainBrandingColourFromState } from '../colours';\nimport { MiddlePopup } from './MiddlePopup';\nimport { InlineButton } from './InlineButton';\n\nclass ConfirmationPopup extends PureComponent {\n render() {\n return (\n <MiddlePopup visible={this.props.visible} onClose={this.props.onClose} style={[styles.popup, this.props.style]}>\n <Pl60Icon style={styles.icon} name=\"circleoutlined\" />\n <Text style={styles.text}>{this.props.confirmText}</Text>\n {this.props.onPressAction && (\n <InlineButton\n onPress={this.props.onPressAction}\n color={this.props.colourBrandingMain}\n style={[styles.button, this.props.largeButtons && styles.largeButton]}\n large={this.props.largeButtons}\n >\n {this.props.repeatText}\n </InlineButton>\n )}\n <InlineButton\n onPress={this.props.onClose}\n color=\"#fff\"\n style={[\n styles.button,\n styles.closeButton,\n this.props.largeButtons && styles.largeButton,\n { borderColor: this.props.colourBrandingMain },\n ]}\n textStyle={{ color: this.props.colourBrandingMain }}\n large={this.props.largeButtons}\n >\n Close\n </InlineButton>\n </MiddlePopup>\n );\n }\n}\n\nconst styles = {\n popup: {\n width: 280,\n paddingVertical: 40,\n },\n icon: {\n fontSize: 52,\n color: COLOUR_GREEN,\n },\n text: {\n fontFamily: 'sf-bold',\n fontSize: 24,\n lineHeight: 24,\n color: TEXT_DARK,\n textAlign: 'center',\n marginTop: 8,\n },\n button: {\n width: 150,\n marginTop: 20,\n },\n closeButton: {\n borderWidth: 1,\n },\n largeButton: {\n width: 250,\n },\n};\n\nconst mapStateToProps = state => {\n return {\n colourBrandingMain: getMainBrandingColourFromState(state),\n };\n};\n\nconst confirmationPopup = connect(mapStateToProps, {})(ConfirmationPopup);\nexport { confirmationPopup as ConfirmationPopup };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","PureComponent","Text","connect","FontAwesome","COLOUR_GREEN","TEXT_DARK","getMainBrandingColourFromState","MiddlePopup","InlineButton","ConfirmationPopup","render","createElement","visible","props","onClose","style","styles","popup","icon","name","text","confirmText","onPressAction","onPress","color","colourBrandingMain","button","largeButtons","largeButton","large","repeatText","closeButton","borderColor","textStyle","width","paddingVertical","fontSize","fontFamily","lineHeight","textAlign","marginTop","borderWidth","mapStateToProps","state","confirmationPopup"],"sources":["ConfirmationPopup.js"],"sourcesContent":["import React, { PureComponent } from \"react\";\nimport { Text } from \"./Text\";\nimport { connect } from \"react-redux\";\nimport { FontAwesome } from \"./Icon\";\nimport {\n\tCOLOUR_GREEN,\n\tTEXT_DARK,\n\tgetMainBrandingColourFromState,\n} from \"../colours\";\nimport { MiddlePopup } from \"./MiddlePopup\";\nimport { InlineButton } from \"./InlineButton\";\n\nclass ConfirmationPopup extends PureComponent {\n\trender() {\n\t\treturn (\n\t\t\t<MiddlePopup\n\t\t\t\tvisible={this.props.visible}\n\t\t\t\tonClose={this.props.onClose}\n\t\t\t\tstyle={[styles.popup, this.props.style]}\n\t\t\t>\n\t\t\t\t<FontAwesome style={styles.icon} name=\"check-circle\" />\n\t\t\t\t<Text style={styles.text}>{this.props.confirmText}</Text>\n\t\t\t\t{this.props.onPressAction && (\n\t\t\t\t\t<InlineButton\n\t\t\t\t\t\tonPress={this.props.onPressAction}\n\t\t\t\t\t\tcolor={this.props.colourBrandingMain}\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.button,\n\t\t\t\t\t\t\tthis.props.largeButtons && styles.largeButton,\n\t\t\t\t\t\t]}\n\t\t\t\t\t\tlarge={this.props.largeButtons}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.props.repeatText}\n\t\t\t\t\t</InlineButton>\n\t\t\t\t)}\n\t\t\t\t<InlineButton\n\t\t\t\t\tonPress={this.props.onClose}\n\t\t\t\t\tcolor=\"#fff\"\n\t\t\t\t\tstyle={[\n\t\t\t\t\t\tstyles.button,\n\t\t\t\t\t\tstyles.closeButton,\n\t\t\t\t\t\tthis.props.largeButtons && styles.largeButton,\n\t\t\t\t\t\t{ borderColor: this.props.colourBrandingMain },\n\t\t\t\t\t]}\n\t\t\t\t\ttextStyle={{ color: this.props.colourBrandingMain }}\n\t\t\t\t\tlarge={this.props.largeButtons}\n\t\t\t\t>\n\t\t\t\t\tClose\n\t\t\t\t</InlineButton>\n\t\t\t</MiddlePopup>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tpopup: {\n\t\twidth: 280,\n\t\tpaddingVertical: 40,\n\t},\n\ticon: {\n\t\tfontSize: 52,\n\t\tcolor: COLOUR_GREEN,\n\t},\n\ttext: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 24,\n\t\tlineHeight: 24,\n\t\tcolor: TEXT_DARK,\n\t\ttextAlign: \"center\",\n\t\tmarginTop: 8,\n\t},\n\tbutton: {\n\t\twidth: 150,\n\t\tmarginTop: 20,\n\t},\n\tcloseButton: {\n\t\tborderWidth: 1,\n\t},\n\tlargeButton: {\n\t\twidth: 250,\n\t},\n};\n\nconst mapStateToProps = (state) => {\n\treturn {\n\t\tcolourBrandingMain: getMainBrandingColourFromState(state),\n\t};\n};\n\nconst confirmationPopup = connect(mapStateToProps, {})(ConfirmationPopup);\nexport { confirmationPopup as ConfirmationPopup };\n"],"mappings":"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","ignoreList":[]}