@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,12 +1,13 @@
1
- import React, { PureComponent } from 'react';
2
- import _ from 'lodash';
3
- import { View, Text, Dimensions } from 'react-native';
4
- import { connect } from 'react-redux';
5
- import { Pl60Icon } from '../fonts';
6
- import { COLOUR_GREEN, TEXT_DARK, getMainBrandingColourFromState } from '../colours';
7
- import { MiddlePopup } from './MiddlePopup';
8
- import { InlineButton } from './InlineButton';
9
- const SCREEN_WIDTH = Dimensions.get('window').width;
1
+ import React, { PureComponent } from "react";
2
+ import _ from "lodash";
3
+ import { View, Dimensions } from "react-native";
4
+ import { Text } from "./Text";
5
+ import { connect } from "react-redux";
6
+ import { FontAwesome } from "./Icon";
7
+ import { COLOUR_GREEN, TEXT_DARK, getMainBrandingColourFromState } from "../colours";
8
+ import { MiddlePopup } from "./MiddlePopup";
9
+ import { InlineButton } from "./InlineButton";
10
+ const SCREEN_WIDTH = Dimensions.get("window").width;
10
11
  class WarningPopup extends PureComponent {
11
12
  render() {
12
13
  return /*#__PURE__*/React.createElement(MiddlePopup, {
@@ -15,9 +16,9 @@ class WarningPopup extends PureComponent {
15
16
  style: [styles.popup, this.props.padHorizontal && {
16
17
  paddingHorizontal: 16
17
18
  }]
18
- }, this.props.isSuccess && /*#__PURE__*/React.createElement(Pl60Icon, {
19
+ }, this.props.isSuccess && /*#__PURE__*/React.createElement(FontAwesome, {
19
20
  style: styles.icon,
20
- name: "circleoutlined"
21
+ name: "circle-check"
21
22
  }), /*#__PURE__*/React.createElement(Text, {
22
23
  style: styles.text
23
24
  }, this.props.confirmText), /*#__PURE__*/React.createElement(View, {
@@ -29,18 +30,18 @@ class WarningPopup extends PureComponent {
29
30
  style: [styles.infoText, this.props.infoTextStyle]
30
31
  }, this.props.infoText)), /*#__PURE__*/React.createElement(InlineButton, {
31
32
  onPress: this.props.onClose,
32
- color: this.props.ctaButton ? this.props.colourBrandingMain : '#fff',
33
+ color: this.props.ctaButton ? this.props.colourBrandingMain : "#fff",
33
34
  style: styles.button,
34
35
  textStyle: [styles.closeText, {
35
- color: this.props.ctaButton ? '#fff' : this.props.colourBrandingMain
36
+ color: this.props.ctaButton ? "#fff" : this.props.colourBrandingMain
36
37
  }],
37
38
  large: true
38
- }, !_.isUndefined(this.props.buttonText) ? this.props.buttonText : 'Close'));
39
+ }, !_.isUndefined(this.props.buttonText) ? this.props.buttonText : "Close"));
39
40
  }
40
41
  }
41
42
  const styles = {
42
43
  popup: {
43
- width: 'auto',
44
+ width: "auto",
44
45
  maxWidth: SCREEN_WIDTH - 34,
45
46
  paddingVertical: 16
46
47
  },
@@ -51,26 +52,26 @@ const styles = {
51
52
  color: COLOUR_GREEN
52
53
  },
53
54
  text: {
54
- fontFamily: 'sf-bold',
55
+ fontFamily: "sf-bold",
55
56
  fontSize: 24,
56
57
  lineHeight: 24,
57
58
  color: TEXT_DARK,
58
- textAlign: 'center',
59
+ textAlign: "center",
59
60
  marginTop: 8
60
61
  },
61
62
  infoText: {
62
- fontFamily: 'sf-regular',
63
+ fontFamily: "sf-regular",
63
64
  fontSize: 16,
64
65
  lineHeight: 22,
65
66
  color: TEXT_DARK,
66
- textAlign: 'left'
67
+ textAlign: "left"
67
68
  },
68
69
  button: {
69
70
  width: 130,
70
71
  marginTop: 20
71
72
  },
72
73
  closeText: {
73
- fontFamily: 'sf-medium',
74
+ fontFamily: "sf-medium",
74
75
  fontSize: 15
75
76
  }
76
77
  };
@@ -1 +1 @@
1
- {"version":3,"names":["React","PureComponent","_","View","Text","Dimensions","connect","Pl60Icon","COLOUR_GREEN","TEXT_DARK","getMainBrandingColourFromState","MiddlePopup","InlineButton","SCREEN_WIDTH","get","width","WarningPopup","render","createElement","visible","props","onClose","style","styles","popup","padHorizontal","paddingHorizontal","isSuccess","icon","name","text","confirmText","marginTop","infoText","infoTextStyle","onPress","color","ctaButton","colourBrandingMain","button","textStyle","closeText","large","isUndefined","buttonText","maxWidth","paddingVertical","paddingBottom","fontSize","fontFamily","lineHeight","textAlign","mapStateToProps","state","warningPopup"],"sources":["WarningPopup.js"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport _ from 'lodash';\nimport { View, Text, Dimensions } 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\nconst SCREEN_WIDTH = Dimensions.get('window').width;\n\nclass WarningPopup extends PureComponent {\n render() {\n return (\n <MiddlePopup\n visible={this.props.visible}\n onClose={this.props.onClose}\n style={[styles.popup, this.props.padHorizontal && { paddingHorizontal: 16 }]}\n >\n {this.props.isSuccess && <Pl60Icon style={styles.icon} name=\"circleoutlined\" />}\n <Text style={styles.text}>{this.props.confirmText}</Text>\n <View style={{ marginTop: 16, paddingHorizontal: 24 }}>\n <Text style={[styles.infoText, this.props.infoTextStyle]}>{this.props.infoText}</Text>\n </View>\n <InlineButton\n onPress={this.props.onClose}\n color={this.props.ctaButton ? this.props.colourBrandingMain : '#fff'}\n style={styles.button}\n textStyle={[styles.closeText, { color: this.props.ctaButton ? '#fff' : this.props.colourBrandingMain }]}\n large\n >\n {!_.isUndefined(this.props.buttonText) ? this.props.buttonText : 'Close'}\n </InlineButton>\n </MiddlePopup>\n );\n }\n}\n\nconst styles = {\n popup: {\n width: 'auto',\n maxWidth: SCREEN_WIDTH - 34,\n paddingVertical: 16,\n },\n icon: {\n marginTop: 20,\n paddingBottom: 16,\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 infoText: {\n fontFamily: 'sf-regular',\n fontSize: 16,\n lineHeight: 22,\n color: TEXT_DARK,\n textAlign: 'left',\n },\n button: {\n width: 130,\n marginTop: 20,\n },\n closeText: {\n fontFamily: 'sf-medium',\n fontSize: 15,\n },\n};\n\nconst mapStateToProps = state => {\n return {\n colourBrandingMain: getMainBrandingColourFromState(state),\n };\n};\n\nconst warningPopup = connect(mapStateToProps, {})(WarningPopup);\nexport { warningPopup as WarningPopup };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","PureComponent","_","View","Dimensions","Text","connect","FontAwesome","COLOUR_GREEN","TEXT_DARK","getMainBrandingColourFromState","MiddlePopup","InlineButton","SCREEN_WIDTH","get","width","WarningPopup","render","createElement","visible","props","onClose","style","styles","popup","padHorizontal","paddingHorizontal","isSuccess","icon","name","text","confirmText","marginTop","infoText","infoTextStyle","onPress","color","ctaButton","colourBrandingMain","button","textStyle","closeText","large","isUndefined","buttonText","maxWidth","paddingVertical","paddingBottom","fontSize","fontFamily","lineHeight","textAlign","mapStateToProps","state","warningPopup"],"sources":["WarningPopup.js"],"sourcesContent":["import React, { PureComponent } from \"react\";\nimport _ from \"lodash\";\nimport { View, Dimensions } from \"react-native\";\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\nconst SCREEN_WIDTH = Dimensions.get(\"window\").width;\n\nclass WarningPopup 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={[\n\t\t\t\t\tstyles.popup,\n\t\t\t\t\tthis.props.padHorizontal && { paddingHorizontal: 16 },\n\t\t\t\t]}\n\t\t\t>\n\t\t\t\t{this.props.isSuccess && (\n\t\t\t\t\t<FontAwesome style={styles.icon} name=\"circle-check\" />\n\t\t\t\t)}\n\t\t\t\t<Text style={styles.text}>{this.props.confirmText}</Text>\n\t\t\t\t<View style={{ marginTop: 16, paddingHorizontal: 24 }}>\n\t\t\t\t\t<Text style={[styles.infoText, this.props.infoTextStyle]}>\n\t\t\t\t\t\t{this.props.infoText}\n\t\t\t\t\t</Text>\n\t\t\t\t</View>\n\t\t\t\t<InlineButton\n\t\t\t\t\tonPress={this.props.onClose}\n\t\t\t\t\tcolor={this.props.ctaButton ? this.props.colourBrandingMain : \"#fff\"}\n\t\t\t\t\tstyle={styles.button}\n\t\t\t\t\ttextStyle={[\n\t\t\t\t\t\tstyles.closeText,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcolor: this.props.ctaButton\n\t\t\t\t\t\t\t\t? \"#fff\"\n\t\t\t\t\t\t\t\t: this.props.colourBrandingMain,\n\t\t\t\t\t\t},\n\t\t\t\t\t]}\n\t\t\t\t\tlarge\n\t\t\t\t>\n\t\t\t\t\t{!_.isUndefined(this.props.buttonText)\n\t\t\t\t\t\t? this.props.buttonText\n\t\t\t\t\t\t: \"Close\"}\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: \"auto\",\n\t\tmaxWidth: SCREEN_WIDTH - 34,\n\t\tpaddingVertical: 16,\n\t},\n\ticon: {\n\t\tmarginTop: 20,\n\t\tpaddingBottom: 16,\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\tinfoText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t\tlineHeight: 22,\n\t\tcolor: TEXT_DARK,\n\t\ttextAlign: \"left\",\n\t},\n\tbutton: {\n\t\twidth: 130,\n\t\tmarginTop: 20,\n\t},\n\tcloseText: {\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 15,\n\t},\n};\n\nconst mapStateToProps = (state) => {\n\treturn {\n\t\tcolourBrandingMain: getMainBrandingColourFromState(state),\n\t};\n};\n\nconst warningPopup = connect(mapStateToProps, {})(WarningPopup);\nexport { warningPopup as WarningPopup };\n"],"mappings":"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","ignoreList":[]}
@@ -1,17 +1,17 @@
1
1
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
- import React from 'react';
5
- import { StyleSheet, View, FlatList, Dimensions, ActivityIndicator, Platform } from 'react-native';
6
- import _ from 'lodash';
7
- import * as ScreenOrientation from 'expo-screen-orientation';
8
- import * as MediaLibrary from 'expo-media-library';
9
- import { Camera } from 'expo-camera';
10
- import { isVideo } from '../../helper';
11
- import ImageTile from './ImageTile';
4
+ import React from "react";
5
+ import { StyleSheet, View, FlatList, Dimensions, ActivityIndicator, Platform } from "react-native";
6
+ import _ from "lodash";
7
+ import * as ScreenOrientation from "expo-screen-orientation";
8
+ import * as MediaLibrary from "expo-media-library";
9
+ import { Camera } from "expo-camera";
10
+ import { isVideo } from "../../helper";
11
+ import ImageTile from "./ImageTile";
12
12
  const {
13
13
  width
14
- } = Dimensions.get('window');
14
+ } = Dimensions.get("window");
15
15
  const defaultSelectionLimit = 10;
16
16
  const defaultLoadCount = 50;
17
17
  export default class ImageBrowser extends React.Component {
@@ -28,8 +28,8 @@ export default class ImageBrowser extends React.Component {
28
28
  status: cameraRoll
29
29
  } = await MediaLibrary.requestPermissionsAsync();
30
30
  this.setState({
31
- hasCameraPermission: camera === 'granted',
32
- hasCameraRollPermission: cameraRoll === 'granted'
31
+ hasCameraPermission: camera === "granted",
32
+ hasCameraRollPermission: cameraRoll === "granted"
33
33
  });
34
34
  });
35
35
  _defineProperty(this, "onOrientationChange", ({
@@ -123,7 +123,7 @@ export default class ImageBrowser extends React.Component {
123
123
  first: loadCount || defaultLoadCount,
124
124
  mediaType,
125
125
  album: album || undefined,
126
- sortBy: [Platform.OS === 'android' ? 'modificationTime' : 'creationTime']
126
+ sortBy: [Platform.OS === "android" ? "modificationTime" : "creationTime"]
127
127
  };
128
128
  if (reset) {
129
129
  this.setState({
@@ -141,7 +141,7 @@ export default class ImageBrowser extends React.Component {
141
141
  // Use remote albums
142
142
  const selectedAlbum = remoteAlbums.find(item => item.id === album);
143
143
  if (selectedAlbum && ((_selectedAlbum$images = selectedAlbum.images) === null || _selectedAlbum$images === void 0 ? void 0 : _selectedAlbum$images.length) > 0) {
144
- const ordered = _.orderBy(selectedAlbum.images, 'date', 'desc');
144
+ const ordered = _.orderBy(selectedAlbum.images, "date", "desc");
145
145
  this.setState({
146
146
  photos: ordered.map(image => {
147
147
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["React","StyleSheet","View","FlatList","Dimensions","ActivityIndicator","Platform","_","ScreenOrientation","MediaLibrary","Camera","isVideo","ImageTile","width","get","defaultSelectionLimit","defaultLoadCount","ImageBrowser","Component","constructor","props","_defineProperty","isNil","remoteAlbums","status","camera","requestCameraPermissionsAsync","cameraRoll","requestPermissionsAsync","setState","hasCameraPermission","hasCameraRollPermission","orientationInfo","removeOrientationChangeListeners","addOrientationChangeListener","onOrientationChange","numColumns","getNumColumns","orientation","Orientation","PORTRAIT_UP","PORTRAIT_DOWN","state","selected","find","uri","photo","photos","mediaType","MediaType","video","item","videoSelected","isVideoSelected","newSelected","length","selectionLimit","max","indexOf","isFull","checkSelection","push","deleteIndex","splice","onChange","prepareCallback","reset","allowVideo","loadCount","album","isLocal","params","first","undefined","sortBy","OS","after","hasNextPage","getAssetsAsync","then","processPhotos","_selectedAlbum$images","selectedAlbum","id","images","ordered","orderBy","map","image","isEmpty","data","totalCount","endCursor","uris","assets","index","itemWidth","offset","selectedIndex","createElement","selectedItemNumber","selectImage","renderSelectedComponent","style","itemStyle","height","itemHeight","isRemote","preloaderComponent","size","emptyStateComponent","componentDidMount","getPermissionsAsync","getOrientationAsync","getPhotos","componentDidUpdate","prevProps","isEqual","selectedPhotos","p","assetsInfo","Promise","all","getAssetInfoAsync","callback","renderImages","key","renderItem","renderImageTile","keyExtractor","onEndReached","onEndReachedThreshold","ListEmptyComponent","renderEmptyState","renderPreloader","initialNumToRender","getItemLayout","render","noCameraPermissionComponent","styles","container","create","flex"],"sources":["ImageBrowser.js"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, View, FlatList, Dimensions, ActivityIndicator, Platform } from 'react-native';\nimport _ from 'lodash';\nimport * as ScreenOrientation from 'expo-screen-orientation';\nimport * as MediaLibrary from 'expo-media-library';\nimport { Camera } from 'expo-camera';\nimport { isVideo } from '../../helper';\nimport ImageTile from './ImageTile';\n\nconst { width } = Dimensions.get('window');\nconst defaultSelectionLimit = 10;\nconst defaultLoadCount = 50;\n\nexport default class ImageBrowser extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n hasCameraPermission: null,\n hasCameraRollPermission: null,\n numColumns: null,\n photos: [],\n selected: [],\n isEmpty: false,\n after: null,\n hasNextPage: true,\n };\n }\n\n async componentDidMount() {\n if (this.isLocal()) await this.getPermissionsAsync();\n\n ScreenOrientation.addOrientationChangeListener(this.onOrientationChange);\n const orientation = await ScreenOrientation.getOrientationAsync();\n const numColumns = this.getNumColumns(orientation);\n this.setState({ numColumns }, () => {\n this.getPhotos();\n });\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.album !== this.props.album) this.getPhotos(true);\n if (!_.isEqual(prevProps.selected, this.props.selected)) {\n this.setState({ selected: this.props.selected });\n }\n }\n\n isLocal = () => {\n return _.isNil(this.props.remoteAlbums);\n };\n\n getPermissionsAsync = async () => {\n const { status: camera } = await Camera.requestCameraPermissionsAsync();\n const { status: cameraRoll } = await MediaLibrary.requestPermissionsAsync();\n this.setState({\n hasCameraPermission: camera === 'granted',\n hasCameraRollPermission: cameraRoll === 'granted',\n });\n };\n\n onOrientationChange = ({ orientationInfo }) => {\n ScreenOrientation.removeOrientationChangeListeners();\n ScreenOrientation.addOrientationChangeListener(this.onOrientationChange);\n const numColumns = this.getNumColumns(orientationInfo.orientation);\n this.setState({ numColumns });\n };\n\n getNumColumns = orientation =>\n orientation === ScreenOrientation.Orientation.PORTRAIT_UP || orientation === ScreenOrientation.Orientation.PORTRAIT_DOWN ? 4 : 7;\n\n isVideoSelected = () => {\n return this.state.selected.find(uri => {\n const photo = this.state.photos.find(photo => photo.uri === uri);\n return photo && photo.mediaType === MediaLibrary.MediaType.video;\n });\n };\n\n checkSelection = item => {\n let videoSelected = this.isVideoSelected();\n let newSelected = [...this.state.selected];\n\n // Check video/photo selection\n if (item.mediaType === MediaLibrary.MediaType.video) {\n if (videoSelected && videoSelected !== item.uri) {\n // If different video is already selected, reset\n videoSelected = null;\n newSelected = [];\n } else if (!videoSelected && newSelected.length > 0) {\n // If photos selected, don't allow selecting video\n videoSelected = null;\n newSelected = [];\n }\n // Toggle video selected\n videoSelected = videoSelected !== item.uri ? item.uri : null;\n } else if (videoSelected) {\n // If video selected, reset\n videoSelected = null;\n newSelected = [];\n }\n\n // Check multiple selection\n const selectionLimit = this.props.max || defaultSelectionLimit;\n if (selectionLimit && selectionLimit > 1) {\n // Limit selection\n if (newSelected.length === selectionLimit && newSelected.indexOf(item.uri) === -1) return { isFull: true };\n } else {\n // Force single selection\n if (newSelected.length > 0 && newSelected[0] !== item.uri) newSelected = [];\n }\n\n return { newSelected, videoSelected };\n };\n\n selectImage = item => {\n const { newSelected, videoSelected, isFull } = this.checkSelection(item);\n if (isFull) return;\n\n if (newSelected.indexOf(item.uri) === -1) {\n newSelected.push(item.uri);\n } else {\n const deleteIndex = newSelected.indexOf(item.uri);\n newSelected.splice(deleteIndex, 1);\n }\n if (newSelected.length > this.props.max) return;\n if (!newSelected) newSelected = [];\n this.setState({ selected: newSelected });\n this.props.onChange(newSelected, videoSelected, () => this.prepareCallback());\n };\n\n getPhotos = (reset = false) => {\n const { remoteAlbums, allowVideo, loadCount, album } = this.props;\n\n if (this.isLocal()) {\n // Retrieve local photos\n const mediaType = [MediaLibrary.MediaType.photo];\n if (allowVideo) mediaType.push(MediaLibrary.MediaType.video);\n\n const params = {\n first: loadCount || defaultLoadCount,\n mediaType,\n album: album || undefined,\n sortBy: [Platform.OS === 'android' ? 'modificationTime' : 'creationTime'],\n };\n if (reset) {\n this.setState({ photos: [], after: null, hasNextPage: true });\n } else {\n if (this.state.after) params.after = this.state.after;\n if (!this.state.hasNextPage) return;\n }\n MediaLibrary.getAssetsAsync(params).then(this.processPhotos);\n } else {\n // Use remote albums\n const selectedAlbum = remoteAlbums.find(item => item.id === album);\n if (selectedAlbum && selectedAlbum.images?.length > 0) {\n const ordered = _.orderBy(selectedAlbum.images, 'date', 'desc');\n this.setState({\n photos: ordered.map(image => {\n return {\n uri: image.uri,\n mediaType: isVideo(image.uri) ? MediaLibrary.MediaType.video : MediaLibrary.MediaType.photo,\n };\n }),\n isEmpty: false,\n });\n } else {\n this.setState({ photos: [], isEmpty: true });\n }\n }\n };\n\n processPhotos = data => {\n if (data.totalCount) {\n if (this.state.after === data.endCursor) return;\n const uris = data.assets;\n this.setState({\n photos: [...this.state.photos, ...uris],\n after: data.endCursor,\n hasNextPage: data.hasNextPage,\n });\n } else {\n this.setState({ isEmpty: true });\n }\n };\n\n getItemLayout = (data, index) => {\n const length = this.props.itemWidth || width / 4;\n return { length, offset: length * index, index };\n };\n\n prepareCallback() {\n const { selected, photos } = this.state;\n const selectedPhotos = selected.map(uri => photos.find(p => p.uri === uri));\n if (this.isLocal()) {\n const assetsInfo = Promise.all(selectedPhotos.map(p => MediaLibrary.getAssetInfoAsync(p)));\n this.props.callback(assetsInfo);\n } else {\n // No need to retrieve local assets\n this.props.callback(selectedPhotos);\n }\n }\n\n renderImageTile = ({ item, index }) => {\n if (!item) return null;\n\n const selectedIndex = this.state.selected.indexOf(item.uri);\n const selected = selectedIndex !== -1;\n\n return (\n <ImageTile\n selectedItemNumber={selectedIndex + 1}\n item={item}\n index={index}\n selected={selected}\n selectImage={this.selectImage}\n renderSelectedComponent={this.props.renderSelectedComponent}\n style={this.props.itemStyle}\n width={this.props.itemWidth}\n height={this.props.itemHeight}\n isRemote={!this.isLocal()}\n />\n );\n };\n\n renderPreloader = () => this.props.preloaderComponent || <ActivityIndicator size=\"large\" />;\n\n renderEmptyState = () => this.props.emptyStateComponent || null;\n\n renderImages() {\n if (_.isEmpty(this.state.photos) && !this.state.isEmpty) {\n return null;\n }\n return (\n <FlatList\n data={this.state.photos}\n numColumns={this.state.numColumns}\n key={this.state.numColumns}\n renderItem={this.renderImageTile}\n keyExtractor={(_, index) => index}\n onEndReached={() => {\n if (this.isLocal()) this.getPhotos();\n }}\n onEndReachedThreshold={0.5}\n ListEmptyComponent={this.state.isEmpty ? this.renderEmptyState() : this.renderPreloader()}\n initialNumToRender={24}\n getItemLayout={this.getItemLayout}\n />\n );\n }\n\n render() {\n const { hasCameraPermission } = this.state;\n\n if (this.isLocal() && !hasCameraPermission) {\n return this.props.noCameraPermissionComponent || null;\n }\n\n return <View style={[styles.container, this.props.style]}>{this.renderImages()}</View>;\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","StyleSheet","View","FlatList","Dimensions","ActivityIndicator","Platform","_","ScreenOrientation","MediaLibrary","Camera","isVideo","ImageTile","width","get","defaultSelectionLimit","defaultLoadCount","ImageBrowser","Component","constructor","props","_defineProperty","isNil","remoteAlbums","status","camera","requestCameraPermissionsAsync","cameraRoll","requestPermissionsAsync","setState","hasCameraPermission","hasCameraRollPermission","orientationInfo","removeOrientationChangeListeners","addOrientationChangeListener","onOrientationChange","numColumns","getNumColumns","orientation","Orientation","PORTRAIT_UP","PORTRAIT_DOWN","state","selected","find","uri","photo","photos","mediaType","MediaType","video","item","videoSelected","isVideoSelected","newSelected","length","selectionLimit","max","indexOf","isFull","checkSelection","push","deleteIndex","splice","onChange","prepareCallback","reset","allowVideo","loadCount","album","isLocal","params","first","undefined","sortBy","OS","after","hasNextPage","getAssetsAsync","then","processPhotos","_selectedAlbum$images","selectedAlbum","id","images","ordered","orderBy","map","image","isEmpty","data","totalCount","endCursor","uris","assets","index","itemWidth","offset","selectedIndex","createElement","selectedItemNumber","selectImage","renderSelectedComponent","style","itemStyle","height","itemHeight","isRemote","preloaderComponent","size","emptyStateComponent","componentDidMount","getPermissionsAsync","getOrientationAsync","getPhotos","componentDidUpdate","prevProps","isEqual","selectedPhotos","p","assetsInfo","Promise","all","getAssetInfoAsync","callback","renderImages","key","renderItem","renderImageTile","keyExtractor","onEndReached","onEndReachedThreshold","ListEmptyComponent","renderEmptyState","renderPreloader","initialNumToRender","getItemLayout","render","noCameraPermissionComponent","styles","container","create","flex"],"sources":["ImageBrowser.js"],"sourcesContent":["import React from \"react\";\nimport {\n\tStyleSheet,\n\tView,\n\tFlatList,\n\tDimensions,\n\tActivityIndicator,\n\tPlatform,\n} from \"react-native\";\nimport _ from \"lodash\";\nimport * as ScreenOrientation from \"expo-screen-orientation\";\nimport * as MediaLibrary from \"expo-media-library\";\nimport { Camera } from \"expo-camera\";\nimport { isVideo } from \"../../helper\";\nimport ImageTile from \"./ImageTile\";\n\nconst { width } = Dimensions.get(\"window\");\nconst defaultSelectionLimit = 10;\nconst defaultLoadCount = 50;\n\nexport default class ImageBrowser extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\thasCameraPermission: null,\n\t\t\thasCameraRollPermission: null,\n\t\t\tnumColumns: null,\n\t\t\tphotos: [],\n\t\t\tselected: [],\n\t\t\tisEmpty: false,\n\t\t\tafter: null,\n\t\t\thasNextPage: true,\n\t\t};\n\t}\n\n\tasync componentDidMount() {\n\t\tif (this.isLocal()) await this.getPermissionsAsync();\n\n\t\tScreenOrientation.addOrientationChangeListener(this.onOrientationChange);\n\t\tconst orientation = await ScreenOrientation.getOrientationAsync();\n\t\tconst numColumns = this.getNumColumns(orientation);\n\t\tthis.setState({ numColumns }, () => {\n\t\t\tthis.getPhotos();\n\t\t});\n\t}\n\n\tcomponentDidUpdate(prevProps) {\n\t\tif (prevProps.album !== this.props.album) this.getPhotos(true);\n\t\tif (!_.isEqual(prevProps.selected, this.props.selected)) {\n\t\t\tthis.setState({ selected: this.props.selected });\n\t\t}\n\t}\n\n\tisLocal = () => {\n\t\treturn _.isNil(this.props.remoteAlbums);\n\t};\n\n\tgetPermissionsAsync = async () => {\n\t\tconst { status: camera } = await Camera.requestCameraPermissionsAsync();\n\t\tconst { status: cameraRoll } = await MediaLibrary.requestPermissionsAsync();\n\t\tthis.setState({\n\t\t\thasCameraPermission: camera === \"granted\",\n\t\t\thasCameraRollPermission: cameraRoll === \"granted\",\n\t\t});\n\t};\n\n\tonOrientationChange = ({ orientationInfo }) => {\n\t\tScreenOrientation.removeOrientationChangeListeners();\n\t\tScreenOrientation.addOrientationChangeListener(this.onOrientationChange);\n\t\tconst numColumns = this.getNumColumns(orientationInfo.orientation);\n\t\tthis.setState({ numColumns });\n\t};\n\n\tgetNumColumns = (orientation) =>\n\t\torientation === ScreenOrientation.Orientation.PORTRAIT_UP ||\n\t\torientation === ScreenOrientation.Orientation.PORTRAIT_DOWN\n\t\t\t? 4\n\t\t\t: 7;\n\n\tisVideoSelected = () => {\n\t\treturn this.state.selected.find((uri) => {\n\t\t\tconst photo = this.state.photos.find((photo) => photo.uri === uri);\n\t\t\treturn photo && photo.mediaType === MediaLibrary.MediaType.video;\n\t\t});\n\t};\n\n\tcheckSelection = (item) => {\n\t\tlet videoSelected = this.isVideoSelected();\n\t\tlet newSelected = [...this.state.selected];\n\n\t\t// Check video/photo selection\n\t\tif (item.mediaType === MediaLibrary.MediaType.video) {\n\t\t\tif (videoSelected && videoSelected !== item.uri) {\n\t\t\t\t// If different video is already selected, reset\n\t\t\t\tvideoSelected = null;\n\t\t\t\tnewSelected = [];\n\t\t\t} else if (!videoSelected && newSelected.length > 0) {\n\t\t\t\t// If photos selected, don't allow selecting video\n\t\t\t\tvideoSelected = null;\n\t\t\t\tnewSelected = [];\n\t\t\t}\n\t\t\t// Toggle video selected\n\t\t\tvideoSelected = videoSelected !== item.uri ? item.uri : null;\n\t\t} else if (videoSelected) {\n\t\t\t// If video selected, reset\n\t\t\tvideoSelected = null;\n\t\t\tnewSelected = [];\n\t\t}\n\n\t\t// Check multiple selection\n\t\tconst selectionLimit = this.props.max || defaultSelectionLimit;\n\t\tif (selectionLimit && selectionLimit > 1) {\n\t\t\t// Limit selection\n\t\t\tif (\n\t\t\t\tnewSelected.length === selectionLimit &&\n\t\t\t\tnewSelected.indexOf(item.uri) === -1\n\t\t\t)\n\t\t\t\treturn { isFull: true };\n\t\t} else {\n\t\t\t// Force single selection\n\t\t\tif (newSelected.length > 0 && newSelected[0] !== item.uri)\n\t\t\t\tnewSelected = [];\n\t\t}\n\n\t\treturn { newSelected, videoSelected };\n\t};\n\n\tselectImage = (item) => {\n\t\tconst { newSelected, videoSelected, isFull } = this.checkSelection(item);\n\t\tif (isFull) return;\n\n\t\tif (newSelected.indexOf(item.uri) === -1) {\n\t\t\tnewSelected.push(item.uri);\n\t\t} else {\n\t\t\tconst deleteIndex = newSelected.indexOf(item.uri);\n\t\t\tnewSelected.splice(deleteIndex, 1);\n\t\t}\n\t\tif (newSelected.length > this.props.max) return;\n\t\tif (!newSelected) newSelected = [];\n\t\tthis.setState({ selected: newSelected });\n\t\tthis.props.onChange(newSelected, videoSelected, () =>\n\t\t\tthis.prepareCallback(),\n\t\t);\n\t};\n\n\tgetPhotos = (reset = false) => {\n\t\tconst { remoteAlbums, allowVideo, loadCount, album } = this.props;\n\n\t\tif (this.isLocal()) {\n\t\t\t// Retrieve local photos\n\t\t\tconst mediaType = [MediaLibrary.MediaType.photo];\n\t\t\tif (allowVideo) mediaType.push(MediaLibrary.MediaType.video);\n\n\t\t\tconst params = {\n\t\t\t\tfirst: loadCount || defaultLoadCount,\n\t\t\t\tmediaType,\n\t\t\t\talbum: album || undefined,\n\t\t\t\tsortBy: [\n\t\t\t\t\tPlatform.OS === \"android\" ? \"modificationTime\" : \"creationTime\",\n\t\t\t\t],\n\t\t\t};\n\t\t\tif (reset) {\n\t\t\t\tthis.setState({ photos: [], after: null, hasNextPage: true });\n\t\t\t} else {\n\t\t\t\tif (this.state.after) params.after = this.state.after;\n\t\t\t\tif (!this.state.hasNextPage) return;\n\t\t\t}\n\t\t\tMediaLibrary.getAssetsAsync(params).then(this.processPhotos);\n\t\t} else {\n\t\t\t// Use remote albums\n\t\t\tconst selectedAlbum = remoteAlbums.find((item) => item.id === album);\n\t\t\tif (selectedAlbum && selectedAlbum.images?.length > 0) {\n\t\t\t\tconst ordered = _.orderBy(selectedAlbum.images, \"date\", \"desc\");\n\t\t\t\tthis.setState({\n\t\t\t\t\tphotos: ordered.map((image) => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\turi: image.uri,\n\t\t\t\t\t\t\tmediaType: isVideo(image.uri)\n\t\t\t\t\t\t\t\t? MediaLibrary.MediaType.video\n\t\t\t\t\t\t\t\t: MediaLibrary.MediaType.photo,\n\t\t\t\t\t\t};\n\t\t\t\t\t}),\n\t\t\t\t\tisEmpty: false,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis.setState({ photos: [], isEmpty: true });\n\t\t\t}\n\t\t}\n\t};\n\n\tprocessPhotos = (data) => {\n\t\tif (data.totalCount) {\n\t\t\tif (this.state.after === data.endCursor) return;\n\t\t\tconst uris = data.assets;\n\t\t\tthis.setState({\n\t\t\t\tphotos: [...this.state.photos, ...uris],\n\t\t\t\tafter: data.endCursor,\n\t\t\t\thasNextPage: data.hasNextPage,\n\t\t\t});\n\t\t} else {\n\t\t\tthis.setState({ isEmpty: true });\n\t\t}\n\t};\n\n\tgetItemLayout = (data, index) => {\n\t\tconst length = this.props.itemWidth || width / 4;\n\t\treturn { length, offset: length * index, index };\n\t};\n\n\tprepareCallback() {\n\t\tconst { selected, photos } = this.state;\n\t\tconst selectedPhotos = selected.map((uri) =>\n\t\t\tphotos.find((p) => p.uri === uri),\n\t\t);\n\t\tif (this.isLocal()) {\n\t\t\tconst assetsInfo = Promise.all(\n\t\t\t\tselectedPhotos.map((p) => MediaLibrary.getAssetInfoAsync(p)),\n\t\t\t);\n\t\t\tthis.props.callback(assetsInfo);\n\t\t} else {\n\t\t\t// No need to retrieve local assets\n\t\t\tthis.props.callback(selectedPhotos);\n\t\t}\n\t}\n\n\trenderImageTile = ({ item, index }) => {\n\t\tif (!item) return null;\n\n\t\tconst selectedIndex = this.state.selected.indexOf(item.uri);\n\t\tconst selected = selectedIndex !== -1;\n\n\t\treturn (\n\t\t\t<ImageTile\n\t\t\t\tselectedItemNumber={selectedIndex + 1}\n\t\t\t\titem={item}\n\t\t\t\tindex={index}\n\t\t\t\tselected={selected}\n\t\t\t\tselectImage={this.selectImage}\n\t\t\t\trenderSelectedComponent={this.props.renderSelectedComponent}\n\t\t\t\tstyle={this.props.itemStyle}\n\t\t\t\twidth={this.props.itemWidth}\n\t\t\t\theight={this.props.itemHeight}\n\t\t\t\tisRemote={!this.isLocal()}\n\t\t\t/>\n\t\t);\n\t};\n\n\trenderPreloader = () =>\n\t\tthis.props.preloaderComponent || <ActivityIndicator size=\"large\" />;\n\n\trenderEmptyState = () => this.props.emptyStateComponent || null;\n\n\trenderImages() {\n\t\tif (_.isEmpty(this.state.photos) && !this.state.isEmpty) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<FlatList\n\t\t\t\tdata={this.state.photos}\n\t\t\t\tnumColumns={this.state.numColumns}\n\t\t\t\tkey={this.state.numColumns}\n\t\t\t\trenderItem={this.renderImageTile}\n\t\t\t\tkeyExtractor={(_, index) => index}\n\t\t\t\tonEndReached={() => {\n\t\t\t\t\tif (this.isLocal()) this.getPhotos();\n\t\t\t\t}}\n\t\t\t\tonEndReachedThreshold={0.5}\n\t\t\t\tListEmptyComponent={\n\t\t\t\t\tthis.state.isEmpty ? this.renderEmptyState() : this.renderPreloader()\n\t\t\t\t}\n\t\t\t\tinitialNumToRender={24}\n\t\t\t\tgetItemLayout={this.getItemLayout}\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { hasCameraPermission } = this.state;\n\n\t\tif (this.isLocal() && !hasCameraPermission) {\n\t\t\treturn this.props.noCameraPermissionComponent || null;\n\t\t}\n\n\t\treturn (\n\t\t\t<View style={[styles.container, this.props.style]}>\n\t\t\t\t{this.renderImages()}\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nconst styles = StyleSheet.create({\n\tcontainer: {\n\t\tflex: 1,\n\t},\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,20 +1,21 @@
1
- import React from 'react';
2
- import { Dimensions, ImageBackground, TouchableHighlight, View, Text, StyleSheet } from 'react-native';
3
- import * as MediaLibrary from 'expo-media-library';
4
- import { Icon } from '@rneui/themed';
5
- import moment from 'moment';
6
- import { getThumb300 } from '../../helper';
7
- const screenWidth = Dimensions.get('window').width;
1
+ import React from "react";
2
+ import { Text } from "@plusscommunities/pluss-core-app/components";
3
+ import { Dimensions, ImageBackground, TouchableHighlight, View, StyleSheet } from "react-native";
4
+ import * as MediaLibrary from "expo-media-library";
5
+ import { Icon } from "@rneui/themed";
6
+ import moment from "moment";
7
+ import { getThumb300 } from "../../helper";
8
+ const screenWidth = Dimensions.get("window").width;
8
9
  class ImageTile extends React.PureComponent {
9
10
  renderVideoOverlay() {
10
11
  const {
11
12
  item
12
13
  } = this.props;
13
14
  if (item.mediaType !== MediaLibrary.MediaType.video) return null;
14
- let durationText = '';
15
+ let durationText = "";
15
16
  if (item.duration) {
16
- const duration = moment.duration(item.duration, 'seconds').asMilliseconds();
17
- durationText = moment.utc(duration).format('HH:mm:ss');
17
+ const duration = moment.duration(item.duration, "seconds").asMilliseconds();
18
+ durationText = moment.utc(duration).format("HH:mm:ss");
18
19
  }
19
20
  return /*#__PURE__*/React.createElement(View, {
20
21
  style: styles.defaultVideoOverlay
@@ -76,25 +77,25 @@ class ImageTile extends React.PureComponent {
76
77
  const styles = StyleSheet.create({
77
78
  imageContainer: {
78
79
  flex: 1,
79
- alignItems: 'center',
80
- justifyContent: 'center'
80
+ alignItems: "center",
81
+ justifyContent: "center"
81
82
  },
82
83
  imageBackground: {
83
- width: '100%',
84
- height: '100%'
84
+ width: "100%",
85
+ height: "100%"
85
86
  },
86
87
  defaultSelectedOverlay: {
87
88
  flex: 1,
88
- backgroundColor: '#000'
89
+ backgroundColor: "#000"
89
90
  },
90
91
  defaultVideoOverlay: {
91
- position: 'absolute',
92
+ position: "absolute",
92
93
  left: 3,
93
94
  bottom: 3,
94
95
  right: 3,
95
- flexDirection: 'row',
96
- justifyContent: 'space-between',
97
- alignItems: 'center'
96
+ flexDirection: "row",
97
+ justifyContent: "space-between",
98
+ alignItems: "center"
98
99
  },
99
100
  videoIconContainer: {
100
101
  flex: 1,
@@ -103,13 +104,13 @@ const styles = StyleSheet.create({
103
104
  },
104
105
  videoIcon: {
105
106
  fontSize: 12,
106
- color: '#fff',
107
- textAlign: 'right'
107
+ color: "#fff",
108
+ textAlign: "right"
108
109
  },
109
110
  videoDurationText: {
110
- fontFamily: 'sf-semibold',
111
+ fontFamily: "sf-semibold",
111
112
  fontSize: 12,
112
- color: '#fff'
113
+ color: "#fff"
113
114
  }
114
115
  });
115
116
  export default ImageTile;
@@ -1 +1 @@
1
- {"version":3,"names":["React","Dimensions","ImageBackground","TouchableHighlight","View","Text","StyleSheet","MediaLibrary","Icon","moment","getThumb300","screenWidth","get","width","ImageTile","PureComponent","renderVideoOverlay","item","props","mediaType","MediaType","video","durationText","duration","asMilliseconds","utc","format","createElement","style","styles","defaultVideoOverlay","name","type","iconStyle","videoIcon","videoIconContainer","videoDurationText","renderSelectedOverlay","selected","selectedItemNumber","renderSelectedComponent","defaultSelectedOverlay","opacity","render","index","selectImage","height","isRemote","actualWidth","actualHeight","uri","underlayColor","onPress","imageContainer","imageBackground","source","create","flex","alignItems","justifyContent","backgroundColor","position","left","bottom","right","flexDirection","paddingRight","paddingBottom","fontSize","color","textAlign","fontFamily"],"sources":["ImageTile.js"],"sourcesContent":["import React from 'react';\nimport { Dimensions, ImageBackground, TouchableHighlight, View, Text, StyleSheet } from 'react-native';\nimport * as MediaLibrary from 'expo-media-library';\nimport { Icon } from '@rneui/themed';\nimport moment from 'moment';\nimport { getThumb300 } from '../../helper';\n\nconst screenWidth = Dimensions.get('window').width;\n\nclass ImageTile extends React.PureComponent {\n renderVideoOverlay() {\n const { item } = this.props;\n if (item.mediaType !== MediaLibrary.MediaType.video) return null;\n\n let durationText = '';\n if (item.duration) {\n const duration = moment.duration(item.duration, 'seconds').asMilliseconds();\n durationText = moment.utc(duration).format('HH:mm:ss');\n }\n return (\n <View style={styles.defaultVideoOverlay}>\n <Icon name=\"video-camera\" type=\"font-awesome\" iconStyle={styles.videoIcon} style={styles.videoIconContainer} />\n <Text style={styles.videoDurationText}>{durationText}</Text>\n </View>\n );\n }\n\n renderSelectedOverlay() {\n const { selected, selectedItemNumber, renderSelectedComponent } = this.props;\n if (!selected) return null;\n if (renderSelectedComponent) return renderSelectedComponent(selectedItemNumber);\n return <View style={[styles.defaultSelectedOverlay, { opacity: selected ? 0.5 : 1 }]} />;\n }\n\n render() {\n const { item, index, selectImage, width, height, style, isRemote } = this.props;\n if (!item) return null;\n\n const actualWidth = width || screenWidth / 4;\n const actualHeight = height || screenWidth / 4;\n const uri = isRemote ? getThumb300(item.uri) : item.uri;\n\n return (\n <TouchableHighlight underlayColor=\"transparent\" onPress={() => selectImage(item, index)}>\n <View style={[{ width: actualWidth, height: actualHeight }, style]}>\n <View style={styles.imageContainer}>\n <ImageBackground style={styles.imageBackground} source={{ uri }}>\n {this.renderVideoOverlay()}\n {this.renderSelectedOverlay()}\n </ImageBackground>\n </View>\n </View>\n </TouchableHighlight>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n imageContainer: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n },\n imageBackground: {\n width: '100%',\n height: '100%',\n },\n defaultSelectedOverlay: {\n flex: 1,\n backgroundColor: '#000',\n },\n defaultVideoOverlay: {\n position: 'absolute',\n left: 3,\n bottom: 3,\n right: 3,\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n videoIconContainer: {\n flex: 1,\n paddingRight: 8,\n paddingBottom: 1,\n },\n videoIcon: {\n fontSize: 12,\n color: '#fff',\n textAlign: 'right',\n },\n videoDurationText: {\n fontFamily: 'sf-semibold',\n fontSize: 12,\n color: '#fff',\n },\n});\n\nexport default ImageTile;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Text","Dimensions","ImageBackground","TouchableHighlight","View","StyleSheet","MediaLibrary","Icon","moment","getThumb300","screenWidth","get","width","ImageTile","PureComponent","renderVideoOverlay","item","props","mediaType","MediaType","video","durationText","duration","asMilliseconds","utc","format","createElement","style","styles","defaultVideoOverlay","name","type","iconStyle","videoIcon","videoIconContainer","videoDurationText","renderSelectedOverlay","selected","selectedItemNumber","renderSelectedComponent","defaultSelectedOverlay","opacity","render","index","selectImage","height","isRemote","actualWidth","actualHeight","uri","underlayColor","onPress","imageContainer","imageBackground","source","create","flex","alignItems","justifyContent","backgroundColor","position","left","bottom","right","flexDirection","paddingRight","paddingBottom","fontSize","color","textAlign","fontFamily"],"sources":["ImageTile.js"],"sourcesContent":["import React from \"react\";\nimport { Text } from \"@plusscommunities/pluss-core-app/components\";\nimport {\n\tDimensions,\n\tImageBackground,\n\tTouchableHighlight,\n\tView,\n\tStyleSheet,\n} from \"react-native\";\nimport * as MediaLibrary from \"expo-media-library\";\nimport { Icon } from \"@rneui/themed\";\nimport moment from \"moment\";\nimport { getThumb300 } from \"../../helper\";\n\nconst screenWidth = Dimensions.get(\"window\").width;\n\nclass ImageTile extends React.PureComponent {\n\trenderVideoOverlay() {\n\t\tconst { item } = this.props;\n\t\tif (item.mediaType !== MediaLibrary.MediaType.video) return null;\n\n\t\tlet durationText = \"\";\n\t\tif (item.duration) {\n\t\t\tconst duration = moment\n\t\t\t\t.duration(item.duration, \"seconds\")\n\t\t\t\t.asMilliseconds();\n\t\t\tdurationText = moment.utc(duration).format(\"HH:mm:ss\");\n\t\t}\n\t\treturn (\n\t\t\t<View style={styles.defaultVideoOverlay}>\n\t\t\t\t<Icon\n\t\t\t\t\tname=\"video-camera\"\n\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\ticonStyle={styles.videoIcon}\n\t\t\t\t\tstyle={styles.videoIconContainer}\n\t\t\t\t/>\n\t\t\t\t<Text style={styles.videoDurationText}>{durationText}</Text>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderSelectedOverlay() {\n\t\tconst { selected, selectedItemNumber, renderSelectedComponent } =\n\t\t\tthis.props;\n\t\tif (!selected) return null;\n\t\tif (renderSelectedComponent)\n\t\t\treturn renderSelectedComponent(selectedItemNumber);\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={[styles.defaultSelectedOverlay, { opacity: selected ? 0.5 : 1 }]}\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { item, index, selectImage, width, height, style, isRemote } =\n\t\t\tthis.props;\n\t\tif (!item) return null;\n\n\t\tconst actualWidth = width || screenWidth / 4;\n\t\tconst actualHeight = height || screenWidth / 4;\n\t\tconst uri = isRemote ? getThumb300(item.uri) : item.uri;\n\n\t\treturn (\n\t\t\t<TouchableHighlight\n\t\t\t\tunderlayColor=\"transparent\"\n\t\t\t\tonPress={() => selectImage(item, index)}\n\t\t\t>\n\t\t\t\t<View style={[{ width: actualWidth, height: actualHeight }, style]}>\n\t\t\t\t\t<View style={styles.imageContainer}>\n\t\t\t\t\t\t<ImageBackground style={styles.imageBackground} source={{ uri }}>\n\t\t\t\t\t\t\t{this.renderVideoOverlay()}\n\t\t\t\t\t\t\t{this.renderSelectedOverlay()}\n\t\t\t\t\t\t</ImageBackground>\n\t\t\t\t\t</View>\n\t\t\t\t</View>\n\t\t\t</TouchableHighlight>\n\t\t);\n\t}\n}\n\nconst styles = StyleSheet.create({\n\timageContainer: {\n\t\tflex: 1,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\timageBackground: {\n\t\twidth: \"100%\",\n\t\theight: \"100%\",\n\t},\n\tdefaultSelectedOverlay: {\n\t\tflex: 1,\n\t\tbackgroundColor: \"#000\",\n\t},\n\tdefaultVideoOverlay: {\n\t\tposition: \"absolute\",\n\t\tleft: 3,\n\t\tbottom: 3,\n\t\tright: 3,\n\t\tflexDirection: \"row\",\n\t\tjustifyContent: \"space-between\",\n\t\talignItems: \"center\",\n\t},\n\tvideoIconContainer: {\n\t\tflex: 1,\n\t\tpaddingRight: 8,\n\t\tpaddingBottom: 1,\n\t},\n\tvideoIcon: {\n\t\tfontSize: 12,\n\t\tcolor: \"#fff\",\n\t\ttextAlign: \"right\",\n\t},\n\tvideoDurationText: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 12,\n\t\tcolor: \"#fff\",\n\t},\n});\n\nexport default ImageTile;\n"],"mappings":"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","ignoreList":[]}
@@ -1,59 +1,60 @@
1
- export * from './InlineButton';
2
- export * from './AddToCalendarButton';
3
- export * from './Forbidden';
4
- export * from './FormCard';
5
- export * from './FormCardSection';
6
- export * from './FormCardSectionOptionLauncher';
7
- export * from './ProfilePic';
8
- export * from './Spinner';
9
- export * from './LoadingCircles';
10
- export * from './Popup';
11
- export * from './ImagePopup';
12
- export * from './VideoPopup';
13
- export * from './SharingTools';
14
- export * from './MiddlePopup';
15
- export * from './ConfirmPopup';
16
- export * from './ConfirmationPopup';
17
- export * from './CommentSection';
18
- export * from './CommentReply';
19
- export * from './PopupMenu';
20
- export * from './AddButton';
21
- export * from './Attachment';
22
- export * from './GenericInputSection';
23
- export * from './GenericInput';
24
- export * from './RadioButton';
25
- export * from './PDFPopup';
26
- export * from './TextStyle';
27
- export * from './TickIcon';
28
- export * from './Toggle';
29
- export * from './Input';
30
- export * from './StickyFooter';
31
- export * from './CategoryTabs';
32
- export * from './DropDownMenu';
33
- export * from './DropDownItem';
34
- export * from './BackButton';
35
- export * from './Reaction';
36
- export * from './TouchableSearchBar';
37
- export * from './WarningPopup';
38
- export * from './FontScalePopup';
39
- export * from './FontScaleButton';
40
- export * from './UserListPopup';
41
- export * from './Reactions';
42
- export * from './AudienceSelectorLauncher';
43
- export * from './CalendarPopup';
44
- export { default as EmptyStateWidget } from './EmptyStateWidget';
45
- export { default as EmptyStateMain } from './EmptyStateMain';
46
- export { default as LoadingStateWidget } from './LoadingStateWidget';
47
- export { default as Header } from './Header';
48
- export { default as LoadingIndicator } from './LoadingIndicator';
49
- export { default as ImageUploader } from './ImageUploader';
50
- // export { default as DocumentUploader } from './DocumentUploader';
51
- export { default as ImageUploadProgress } from './ImageUploadProgress';
52
- export { default as UserListing } from './UserListing';
53
- export { default as PlussChat } from './PlussChat';
54
- export { default as PositionedImage } from './PositionedImage';
55
- export * from './AutoOffsetImage';
56
- export { default as FormattedText } from './FormattedText';
57
- export { default as MediaPlayer } from './MediaPlayer';
58
- export { default as AudienceSelectorPage } from './AudienceSelectorPage';
1
+ export * from "./InlineButton";
2
+ export * from "./AddToCalendarButton";
3
+ export * from "./Forbidden";
4
+ export * from "./FormCard";
5
+ export * from "./FormCardSection";
6
+ export * from "./FormCardSectionOptionLauncher";
7
+ export * from "./ProfilePic";
8
+ export * from "./Spinner";
9
+ export * from "./LoadingCircles";
10
+ export * from "./Popup";
11
+ export * from "./ImagePopup";
12
+ export * from "./VideoPopup";
13
+ export * from "./SharingTools";
14
+ export * from "./MiddlePopup";
15
+ export * from "./ConfirmPopup";
16
+ export * from "./ConfirmationPopup";
17
+ export * from "./CommentSection";
18
+ export * from "./CommentReply";
19
+ export * from "./PopupMenu";
20
+ export * from "./AddButton";
21
+ export * from "./Attachment";
22
+ export * from "./GenericInputSection";
23
+ export * from "./GenericInput";
24
+ export * from "./RadioButton";
25
+ export * from "./PDFPopup";
26
+ export * from "./Text";
27
+ export * from "./Icon";
28
+ export * from "./TickIcon";
29
+ export * from "./Toggle";
30
+ export * from "./Input";
31
+ export * from "./StickyFooter";
32
+ export * from "./CategoryTabs";
33
+ export * from "./DropDownMenu";
34
+ export * from "./DropDownItem";
35
+ export * from "./BackButton";
36
+ export * from "./Reaction";
37
+ export * from "./TouchableSearchBar";
38
+ export * from "./WarningPopup";
39
+ export * from "./FontScalePopup";
40
+ export * from "./FontScaleButton";
41
+ export * from "./UserListPopup";
42
+ export * from "./Reactions";
43
+ export * from "./AudienceSelectorLauncher";
44
+ export * from "./CalendarPopup";
45
+ export { default as EmptyStateWidget } from "./EmptyStateWidget";
46
+ export { default as EmptyStateMain } from "./EmptyStateMain";
47
+ export { default as LoadingStateWidget } from "./LoadingStateWidget";
48
+ export { default as Header } from "./Header";
49
+ export { default as LoadingIndicator } from "./LoadingIndicator";
50
+ export { default as ImageUploader } from "./ImageUploader";
51
+ export { default as DocumentUploader } from "./DocumentUploader";
52
+ export { default as ImageUploadProgress } from "./ImageUploadProgress";
53
+ export { default as UserListing } from "./UserListing";
54
+ export { default as PlussChat } from "./PlussChat";
55
+ export { default as PositionedImage } from "./PositionedImage";
56
+ export * from "./AutoOffsetImage";
57
+ export { default as FormattedText } from "./FormattedText";
58
+ export { default as MediaPlayer } from "./MediaPlayer";
59
+ export { default as AudienceSelectorPage } from "./AudienceSelectorPage";
59
60
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["default","EmptyStateWidget","EmptyStateMain","LoadingStateWidget","Header","LoadingIndicator","ImageUploader","ImageUploadProgress","UserListing","PlussChat","PositionedImage","FormattedText","MediaPlayer","AudienceSelectorPage"],"sources":["index.js"],"sourcesContent":["export * from './InlineButton';\nexport * from './AddToCalendarButton';\nexport * from './Forbidden';\nexport * from './FormCard';\nexport * from './FormCardSection';\nexport * from './FormCardSectionOptionLauncher';\nexport * from './ProfilePic';\nexport * from './Spinner';\nexport * from './LoadingCircles';\nexport * from './Popup';\nexport * from './ImagePopup';\nexport * from './VideoPopup';\nexport * from './SharingTools';\nexport * from './MiddlePopup';\nexport * from './ConfirmPopup';\nexport * from './ConfirmationPopup';\nexport * from './CommentSection';\nexport * from './CommentReply';\nexport * from './PopupMenu';\nexport * from './AddButton';\nexport * from './Attachment';\nexport * from './GenericInputSection';\nexport * from './GenericInput';\nexport * from './RadioButton';\nexport * from './PDFPopup';\nexport * from './TextStyle';\nexport * from './TickIcon';\nexport * from './Toggle';\nexport * from './Input';\nexport * from './StickyFooter';\nexport * from './CategoryTabs';\nexport * from './DropDownMenu';\nexport * from './DropDownItem';\nexport * from './BackButton';\nexport * from './Reaction';\nexport * from './TouchableSearchBar';\nexport * from './WarningPopup';\nexport * from './FontScalePopup';\nexport * from './FontScaleButton';\nexport * from './UserListPopup';\nexport * from './Reactions';\nexport * from './AudienceSelectorLauncher';\nexport * from './CalendarPopup';\nexport { default as EmptyStateWidget } from './EmptyStateWidget';\nexport { default as EmptyStateMain } from './EmptyStateMain';\nexport { default as LoadingStateWidget } from './LoadingStateWidget';\nexport { default as Header } from './Header';\nexport { default as LoadingIndicator } from './LoadingIndicator';\nexport { default as ImageUploader } from './ImageUploader';\n// export { default as DocumentUploader } from './DocumentUploader';\nexport { default as ImageUploadProgress } from './ImageUploadProgress';\nexport { default as UserListing } from './UserListing';\nexport { default as PlussChat } from './PlussChat';\nexport { default as PositionedImage } from './PositionedImage';\nexport * from './AutoOffsetImage';\nexport { default as FormattedText } from './FormattedText';\nexport { default as MediaPlayer } from './MediaPlayer';\nexport { default as AudienceSelectorPage } from './AudienceSelectorPage';\n"],"mappings":"AAAA,cAAc,gBAAgB;AAC9B,cAAc,uBAAuB;AACrC,cAAc,aAAa;AAC3B,cAAc,YAAY;AAC1B,cAAc,mBAAmB;AACjC,cAAc,iCAAiC;AAC/C,cAAc,cAAc;AAC5B,cAAc,WAAW;AACzB,cAAc,kBAAkB;AAChC,cAAc,SAAS;AACvB,cAAc,cAAc;AAC5B,cAAc,cAAc;AAC5B,cAAc,gBAAgB;AAC9B,cAAc,eAAe;AAC7B,cAAc,gBAAgB;AAC9B,cAAc,qBAAqB;AACnC,cAAc,kBAAkB;AAChC,cAAc,gBAAgB;AAC9B,cAAc,aAAa;AAC3B,cAAc,aAAa;AAC3B,cAAc,cAAc;AAC5B,cAAc,uBAAuB;AACrC,cAAc,gBAAgB;AAC9B,cAAc,eAAe;AAC7B,cAAc,YAAY;AAC1B,cAAc,aAAa;AAC3B,cAAc,YAAY;AAC1B,cAAc,UAAU;AACxB,cAAc,SAAS;AACvB,cAAc,gBAAgB;AAC9B,cAAc,gBAAgB;AAC9B,cAAc,gBAAgB;AAC9B,cAAc,gBAAgB;AAC9B,cAAc,cAAc;AAC5B,cAAc,YAAY;AAC1B,cAAc,sBAAsB;AACpC,cAAc,gBAAgB;AAC9B,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,iBAAiB;AAC/B,cAAc,aAAa;AAC3B,cAAc,4BAA4B;AAC1C,cAAc,iBAAiB;AAC/B,SAASA,OAAO,IAAIC,gBAAgB,QAAQ,oBAAoB;AAChE,SAASD,OAAO,IAAIE,cAAc,QAAQ,kBAAkB;AAC5D,SAASF,OAAO,IAAIG,kBAAkB,QAAQ,sBAAsB;AACpE,SAASH,OAAO,IAAII,MAAM,QAAQ,UAAU;AAC5C,SAASJ,OAAO,IAAIK,gBAAgB,QAAQ,oBAAoB;AAChE,SAASL,OAAO,IAAIM,aAAa,QAAQ,iBAAiB;AAC1D;AACA,SAASN,OAAO,IAAIO,mBAAmB,QAAQ,uBAAuB;AACtE,SAASP,OAAO,IAAIQ,WAAW,QAAQ,eAAe;AACtD,SAASR,OAAO,IAAIS,SAAS,QAAQ,aAAa;AAClD,SAAST,OAAO,IAAIU,eAAe,QAAQ,mBAAmB;AAC9D,cAAc,mBAAmB;AACjC,SAASV,OAAO,IAAIW,aAAa,QAAQ,iBAAiB;AAC1D,SAASX,OAAO,IAAIY,WAAW,QAAQ,eAAe;AACtD,SAASZ,OAAO,IAAIa,oBAAoB,QAAQ,wBAAwB","ignoreList":[]}
1
+ {"version":3,"names":["default","EmptyStateWidget","EmptyStateMain","LoadingStateWidget","Header","LoadingIndicator","ImageUploader","DocumentUploader","ImageUploadProgress","UserListing","PlussChat","PositionedImage","FormattedText","MediaPlayer","AudienceSelectorPage"],"sources":["index.js"],"sourcesContent":["export * from \"./InlineButton\";\nexport * from \"./AddToCalendarButton\";\nexport * from \"./Forbidden\";\nexport * from \"./FormCard\";\nexport * from \"./FormCardSection\";\nexport * from \"./FormCardSectionOptionLauncher\";\nexport * from \"./ProfilePic\";\nexport * from \"./Spinner\";\nexport * from \"./LoadingCircles\";\nexport * from \"./Popup\";\nexport * from \"./ImagePopup\";\nexport * from \"./VideoPopup\";\nexport * from \"./SharingTools\";\nexport * from \"./MiddlePopup\";\nexport * from \"./ConfirmPopup\";\nexport * from \"./ConfirmationPopup\";\nexport * from \"./CommentSection\";\nexport * from \"./CommentReply\";\nexport * from \"./PopupMenu\";\nexport * from \"./AddButton\";\nexport * from \"./Attachment\";\nexport * from \"./GenericInputSection\";\nexport * from \"./GenericInput\";\nexport * from \"./RadioButton\";\nexport * from \"./PDFPopup\";\nexport * from \"./Text\";\nexport * from \"./Icon\";\nexport * from \"./TickIcon\";\nexport * from \"./Toggle\";\nexport * from \"./Input\";\nexport * from \"./StickyFooter\";\nexport * from \"./CategoryTabs\";\nexport * from \"./DropDownMenu\";\nexport * from \"./DropDownItem\";\nexport * from \"./BackButton\";\nexport * from \"./Reaction\";\nexport * from \"./TouchableSearchBar\";\nexport * from \"./WarningPopup\";\nexport * from \"./FontScalePopup\";\nexport * from \"./FontScaleButton\";\nexport * from \"./UserListPopup\";\nexport * from \"./Reactions\";\nexport * from \"./AudienceSelectorLauncher\";\nexport * from \"./CalendarPopup\";\nexport { default as EmptyStateWidget } from \"./EmptyStateWidget\";\nexport { default as EmptyStateMain } from \"./EmptyStateMain\";\nexport { default as LoadingStateWidget } from \"./LoadingStateWidget\";\nexport { default as Header } from \"./Header\";\nexport { default as LoadingIndicator } from \"./LoadingIndicator\";\nexport { default as ImageUploader } from \"./ImageUploader\";\nexport { default as DocumentUploader } from \"./DocumentUploader\";\nexport { default as ImageUploadProgress } from \"./ImageUploadProgress\";\nexport { default as UserListing } from \"./UserListing\";\nexport { default as PlussChat } from \"./PlussChat\";\nexport { default as PositionedImage } from \"./PositionedImage\";\nexport * from \"./AutoOffsetImage\";\nexport { default as FormattedText } from \"./FormattedText\";\nexport { default as MediaPlayer } from \"./MediaPlayer\";\nexport { default as AudienceSelectorPage } from \"./AudienceSelectorPage\";\n"],"mappings":"AAAA,cAAc,gBAAgB;AAC9B,cAAc,uBAAuB;AACrC,cAAc,aAAa;AAC3B,cAAc,YAAY;AAC1B,cAAc,mBAAmB;AACjC,cAAc,iCAAiC;AAC/C,cAAc,cAAc;AAC5B,cAAc,WAAW;AACzB,cAAc,kBAAkB;AAChC,cAAc,SAAS;AACvB,cAAc,cAAc;AAC5B,cAAc,cAAc;AAC5B,cAAc,gBAAgB;AAC9B,cAAc,eAAe;AAC7B,cAAc,gBAAgB;AAC9B,cAAc,qBAAqB;AACnC,cAAc,kBAAkB;AAChC,cAAc,gBAAgB;AAC9B,cAAc,aAAa;AAC3B,cAAc,aAAa;AAC3B,cAAc,cAAc;AAC5B,cAAc,uBAAuB;AACrC,cAAc,gBAAgB;AAC9B,cAAc,eAAe;AAC7B,cAAc,YAAY;AAC1B,cAAc,QAAQ;AACtB,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,UAAU;AACxB,cAAc,SAAS;AACvB,cAAc,gBAAgB;AAC9B,cAAc,gBAAgB;AAC9B,cAAc,gBAAgB;AAC9B,cAAc,gBAAgB;AAC9B,cAAc,cAAc;AAC5B,cAAc,YAAY;AAC1B,cAAc,sBAAsB;AACpC,cAAc,gBAAgB;AAC9B,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,iBAAiB;AAC/B,cAAc,aAAa;AAC3B,cAAc,4BAA4B;AAC1C,cAAc,iBAAiB;AAC/B,SAASA,OAAO,IAAIC,gBAAgB,QAAQ,oBAAoB;AAChE,SAASD,OAAO,IAAIE,cAAc,QAAQ,kBAAkB;AAC5D,SAASF,OAAO,IAAIG,kBAAkB,QAAQ,sBAAsB;AACpE,SAASH,OAAO,IAAII,MAAM,QAAQ,UAAU;AAC5C,SAASJ,OAAO,IAAIK,gBAAgB,QAAQ,oBAAoB;AAChE,SAASL,OAAO,IAAIM,aAAa,QAAQ,iBAAiB;AAC1D,SAASN,OAAO,IAAIO,gBAAgB,QAAQ,oBAAoB;AAChE,SAASP,OAAO,IAAIQ,mBAAmB,QAAQ,uBAAuB;AACtE,SAASR,OAAO,IAAIS,WAAW,QAAQ,eAAe;AACtD,SAAST,OAAO,IAAIU,SAAS,QAAQ,aAAa;AAClD,SAASV,OAAO,IAAIW,eAAe,QAAQ,mBAAmB;AAC9D,cAAc,mBAAmB;AACjC,SAASX,OAAO,IAAIY,aAAa,QAAQ,iBAAiB;AAC1D,SAASZ,OAAO,IAAIa,WAAW,QAAQ,eAAe;AACtD,SAASb,OAAO,IAAIc,oBAAoB,QAAQ,wBAAwB","ignoreList":[]}