@plusscommunities/pluss-core-app 8.0.1-beta.0 → 8.0.2-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 +122 -97
  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 +152 -46
  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 +113 -76
  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 +81 -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 +973 -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 +307 -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 +447 -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,35 +1,37 @@
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, { Component } from 'react';
5
- import { View, ScrollView, TouchableOpacity, Text, Platform, Linking, Modal, Dimensions, StyleSheet, ImageBackground } from 'react-native';
6
- import { connect } from 'react-redux';
7
- import { Icon } from '@rneui/themed';
8
- import _ from 'lodash';
9
- import { Camera } from 'expo-camera';
10
- import * as MediaLibrary from 'expo-media-library';
11
- import * as ImageManipulator from 'expo-image-manipulator';
12
- import * as ImagePicker from 'expo-image-picker';
13
- import ImageBrowser from './expo-image-picker-multiple/ImageBrowser';
14
- import ExpoImageManipulator from './react-native-expo-image-cropper/ExpoImageManipulator';
15
- import Header from './Header';
16
- import { Popup } from './Popup';
17
- import { PopupMenu } from './PopupMenu';
18
- import { InlineButton } from './InlineButton';
19
- import { getValueOrDefault, getThumb300, isVideo } from '../helper';
20
- import { getMainBrandingColourFromState, BOXGREY, INACTIVE_BUTTON, TEXT_BLUEGREY, TEXT_DARK, LINEGREY } from '../colours';
21
- import Config from '../config';
22
- import { fileActions } from '../apis';
23
- import { stockImagesLoaded, imageLibraryLoaded } from '../actions';
24
- const SCREEN_WIDTH = Dimensions.get('window').width;
25
- const SCREEN_HEIGHT = Dimensions.get('window').height;
4
+ import React, { Component } from "react";
5
+ import { Text } from "@plusscommunities/pluss-core-app/components";
6
+ import { View, ScrollView, TouchableOpacity, Platform, Linking, Modal, Dimensions, StyleSheet, ImageBackground } from "react-native";
7
+ import { connect } from "react-redux";
8
+ import { withSafeAreaInsets } from "react-native-safe-area-context";
9
+ import { Icon } from "@rneui/themed";
10
+ import _ from "lodash";
11
+ import { Camera } from "expo-camera";
12
+ import * as MediaLibrary from "expo-media-library";
13
+ import * as ImageManipulator from "expo-image-manipulator";
14
+ import * as ImagePicker from "expo-image-picker";
15
+ import ImageBrowser from "./expo-image-picker-multiple/ImageBrowser";
16
+ import ExpoImageManipulator from "./react-native-expo-image-cropper/ExpoImageManipulator";
17
+ import Header from "./Header";
18
+ import { Popup } from "./Popup";
19
+ import { PopupMenu } from "./PopupMenu";
20
+ import { InlineButton } from "./InlineButton";
21
+ import { getValueOrDefault, getThumb300, isVideo } from "../helper";
22
+ import { getMainBrandingColourFromState, BOXGREY, INACTIVE_BUTTON, TEXT_BLUEGREY, TEXT_DARK, LINEGREY } from "../colours";
23
+ import Config from "../config";
24
+ import { fileActions } from "../apis";
25
+ import { stockImagesLoaded, imageLibraryLoaded } from "../actions";
26
+ const SCREEN_WIDTH = Dimensions.get("window").width;
27
+ const SCREEN_HEIGHT = Dimensions.get("window").height;
26
28
  const DEFAULT_ASPECT = [1, 1];
27
29
  const DEFAULT_ALLOWS_EDITING = true;
28
30
  const DEFAULT_ALLOWS_IOS_CAMERA_EDITING = false;
29
31
  const DEFAULT_EXIF = true;
30
- const DEFULAT_IMAGE_TYPE = 'jpeg';
31
- const DEFAULT_IMAGE_NAME = 'image';
32
- const DEFAULT_VIDEO_NAME = 'video';
32
+ const DEFULAT_IMAGE_TYPE = "jpeg";
33
+ const DEFAULT_IMAGE_NAME = "image";
34
+ const DEFAULT_VIDEO_NAME = "video";
33
35
  const DEFAULT_SIZE = {
34
36
  width: 1400
35
37
  };
@@ -50,12 +52,12 @@ class ImageUploader extends Component {
50
52
  this.setState({
51
53
  loadingLocalFolders: false,
52
54
  localAlbums: [{
53
- title: 'All Photos',
54
- id: ''
55
+ title: "All Photos",
56
+ id: ""
55
57
  }, ...localAlbums]
56
58
  });
57
59
  } catch (error) {
58
- console.log('loadLocalAlbums - error', error);
60
+ console.log("loadLocalAlbums - error", error);
59
61
  this.setState({
60
62
  loadingLocalFolders: false
61
63
  });
@@ -72,7 +74,7 @@ class ImageUploader extends Component {
72
74
  const libraryRes = await fileActions.getMediaFolders(this.props.user.site);
73
75
  this.props.imageLibraryLoaded(libraryRes.data);
74
76
  } catch (error) {
75
- console.log('loadRemoteAlbums - error', error);
77
+ console.log("loadRemoteAlbums - error", error);
76
78
  } finally {
77
79
  this.setState({
78
80
  loadingRemoteFolders: false
@@ -87,9 +89,9 @@ class ImageUploader extends Component {
87
89
  if (this.props.onUploadProgress) this.props.onUploadProgress(progress);
88
90
  });
89
91
  this.props.onUploadSuccess(Config.env.baseUploadsUrl + res.key, uploadUri);
90
- console.log('upload(retry) success', Config.env.baseUploadsUrl + res.key);
92
+ console.log("upload(retry) success", Config.env.baseUploadsUrl + res.key);
91
93
  } catch (e) {
92
- console.log('retryUpload error', e);
94
+ console.log("retryUpload error", e);
93
95
  this.props.onUploadFailed(uploadUri);
94
96
  }
95
97
  });
@@ -120,9 +122,9 @@ class ImageUploader extends Component {
120
122
  if (this.props.onUploadProgress) this.props.onUploadProgress(progress);
121
123
  });
122
124
  this.props.onUploadSuccess(Config.env.baseUploadsUrl + res.key, uploadUri);
123
- console.log('upload success', Config.env.baseUploadsUrl + res.key);
125
+ console.log("upload success", Config.env.baseUploadsUrl + res.key);
124
126
  } catch (e) {
125
- console.log('handleImagePicked error', e);
127
+ console.log("handleImagePicked error", e);
126
128
  this.props.onUploadFailed(uploadUri);
127
129
  }
128
130
  });
@@ -158,9 +160,9 @@ class ImageUploader extends Component {
158
160
  if (this.props.onUploadProgress) this.props.onUploadProgress(progress);
159
161
  });
160
162
  this.props.onUploadSuccess(Config.env.baseUploadsUrl + res.key, uploadUri);
161
- console.log('upload success', Config.env.baseUploadsUrl + res.key);
163
+ console.log("upload success", Config.env.baseUploadsUrl + res.key);
162
164
  } catch (e) {
163
- console.log('handleMultiImagePicked error', e);
165
+ console.log("handleMultiImagePicked error", e);
164
166
  this.props.onUploadFailed(uploadUri);
165
167
  }
166
168
  }
@@ -168,7 +170,7 @@ class ImageUploader extends Component {
168
170
  _defineProperty(this, "handleVideoPicked", async uri => {
169
171
  let uploadUri;
170
172
  try {
171
- const fileType = uri.substring(uri.lastIndexOf('.') + 1);
173
+ const fileType = uri.substring(uri.lastIndexOf(".") + 1);
172
174
  const fileName = `${getValueOrDefault(this.props.fileName, DEFAULT_VIDEO_NAME)}.${fileType}`;
173
175
  uploadUri = fileActions.getUploadUrl(this.props.userId, fileName);
174
176
  this.props.onUploadStarted(uploadUri, uri);
@@ -177,9 +179,9 @@ class ImageUploader extends Component {
177
179
  if (this.props.onUploadProgress) this.props.onUploadProgress(progress);
178
180
  });
179
181
  this.props.onUploadSuccess(Config.env.baseUploadsUrl + res.key, uploadUri);
180
- console.log('upload success', Config.env.baseUploadsUrl + res.key);
182
+ console.log("upload success", Config.env.baseUploadsUrl + res.key);
181
183
  } catch (e) {
182
- console.log('handleVideoPicked error', e);
184
+ console.log("handleVideoPicked error", e);
183
185
  this.props.onUploadFailed(uploadUri);
184
186
  }
185
187
  });
@@ -187,8 +189,8 @@ class ImageUploader extends Component {
187
189
  var _this$state$localAlbu;
188
190
  const cameraPermission = await Camera.requestCameraPermissionsAsync();
189
191
  const rollPermission = await MediaLibrary.requestPermissionsAsync();
190
- if (cameraPermission.status !== 'granted' || Platform.OS === 'ios' && rollPermission.status !== 'granted') {
191
- this.showWarningPopup(cameraPermission.status !== 'granted', rollPermission.status !== 'granted');
192
+ if (cameraPermission.status !== "granted" || Platform.OS === "ios" && rollPermission.status !== "granted") {
193
+ this.showWarningPopup(cameraPermission.status !== "granted", rollPermission.status !== "granted");
192
194
  return false;
193
195
  }
194
196
  if (((_this$state$localAlbu = this.state.localAlbums) === null || _this$state$localAlbu === void 0 ? void 0 : _this$state$localAlbu.length) <= 0) this.loadLocalAlbums();
@@ -200,7 +202,7 @@ class ImageUploader extends Component {
200
202
  _defineProperty(this, "openCamera", async () => {
201
203
  if (!(await this.askPermissionsAsync())) return;
202
204
  let editingAllowed = this.isEditingEnabled();
203
- if (Platform.OS === 'ios') {
205
+ if (Platform.OS === "ios") {
204
206
  editingAllowed = getValueOrDefault(this.props.allowsEditingIOSCamera, getValueOrDefault(this.props.allowsEditing, DEFAULT_ALLOWS_IOS_CAMERA_EDITING));
205
207
  }
206
208
  const result = await ImagePicker.launchCameraAsync({
@@ -231,21 +233,26 @@ class ImageUploader extends Component {
231
233
  showPhotos: true,
232
234
  selected: [],
233
235
  showRemote: true,
234
- selectedAlbumId: ''
236
+ selectedAlbumId: ""
235
237
  });
236
238
  }, 1000);
237
239
  });
238
240
  });
239
241
  _defineProperty(this, "openPhotos", async () => {
240
- if (Platform.OS === 'android') {
242
+ if (Platform.OS === "android") {
243
+ const multiple = !!this.props.multiple;
241
244
  const result = await ImagePicker.launchImageLibraryAsync({
242
245
  allowsEditing: this.isEditingEnabled(),
246
+ allowsMultipleSelection: multiple,
247
+ ...(multiple && {
248
+ selectionLimit: getValueOrDefault(this.props.imagesLimit, 10)
249
+ }),
243
250
  aspect: getValueOrDefault(this.props.aspect, DEFAULT_ASPECT),
244
251
  exif: getValueOrDefault(this.props.exif, DEFAULT_EXIF),
245
252
  mediaTypes: this.props.allowVideo ? ImagePicker.MediaTypeOptions.All : ImagePicker.MediaTypeOptions.Images
246
253
  });
247
- if (!result.cancelled) {
248
- if (result.assets.length === 1 && result.assets[0].type === 'video') {
254
+ if (!(result.canceled || result.cancelled) && !_.isEmpty(result.assets)) {
255
+ if (result.assets.length === 1 && result.assets[0].type === "video") {
249
256
  this.handleVideoPicked(result.assets[0].uri);
250
257
  } else {
251
258
  this.handleMultiImagePicked(result.assets);
@@ -264,7 +271,7 @@ class ImageUploader extends Component {
264
271
  showPhotos: true,
265
272
  selected: [],
266
273
  showRemote: false,
267
- selectedAlbumId: ''
274
+ selectedAlbumId: ""
268
275
  });
269
276
  }, 1000);
270
277
  });
@@ -310,7 +317,7 @@ class ImageUploader extends Component {
310
317
  _defineProperty(this, "onSelectionChange", (selected, videoSelected, onAttach) => {
311
318
  this.setState({
312
319
  selected,
313
- selectedType: videoSelected ? 'video' : 'image',
320
+ selectedType: videoSelected ? "video" : "image",
314
321
  onAttach
315
322
  });
316
323
  });
@@ -347,19 +354,19 @@ class ImageUploader extends Component {
347
354
  });
348
355
  _defineProperty(this, "buildOptions", () => {
349
356
  const options = [{
350
- text: 'Take photo',
357
+ text: "Take photo",
351
358
  onPress: this.openCamera
352
359
  }];
353
360
  if (this.props.allowVideo) options.push({
354
- text: 'Record video',
361
+ text: "Record video",
355
362
  onPress: this.openVideoCamera
356
363
  });
357
364
  options.push({
358
- text: 'Camera Roll',
365
+ text: "Camera Roll",
359
366
  onPress: this.openPhotos
360
367
  });
361
368
  if (!this.props.hideLibrary) options.push({
362
- text: 'Image Library',
369
+ text: "Image Library",
363
370
  onPress: this.openLibrary
364
371
  });
365
372
  return options;
@@ -385,9 +392,9 @@ class ImageUploader extends Component {
385
392
  showPhotos: false,
386
393
  showRemote: false,
387
394
  selected: [],
388
- selectedType: '',
395
+ selectedType: "",
389
396
  onAttach: null,
390
- selectedAlbumId: '',
397
+ selectedAlbumId: "",
391
398
  showSelectAlbum: false,
392
399
  showCropper: false,
393
400
  localAlbums: [],
@@ -410,16 +417,16 @@ class ImageUploader extends Component {
410
417
  });
411
418
  }
412
419
  showWarningPopup(camera, roll) {
413
- if (Platform.OS !== 'ios') {
420
+ if (Platform.OS !== "ios") {
414
421
  return;
415
422
  }
416
- let innerWarning = '';
423
+ let innerWarning = "";
417
424
  if (camera && roll) {
418
- innerWarning = 'both your camera and photo library';
425
+ innerWarning = "both your camera and photo library";
419
426
  } else if (camera) {
420
- innerWarning = 'your camera';
427
+ innerWarning = "your camera";
421
428
  } else if (roll) {
422
- innerWarning = 'your photo library';
429
+ innerWarning = "your photo library";
423
430
  } else {
424
431
  // nothing to warn about
425
432
  return;
@@ -434,7 +441,7 @@ class ImageUploader extends Component {
434
441
  });
435
442
  }
436
443
  goToPermissionSettings() {
437
- Linking.openURL('app-settings:');
444
+ Linking.openURL("app-settings:");
438
445
  this.setState({
439
446
  warning: null
440
447
  });
@@ -479,7 +486,7 @@ class ImageUploader extends Component {
479
486
  showRemote
480
487
  } = this.state;
481
488
  const selectedAlbum = (showRemote ? this.props.imageLibrary : localAlbums).find(album => album.id === selectedAlbumId);
482
- const selectedAlbumText = selectedAlbum ? selectedAlbum.title : '';
489
+ const selectedAlbumText = selectedAlbum ? selectedAlbum.title : "";
483
490
  return /*#__PURE__*/React.createElement(TouchableOpacity, {
484
491
  onPress: this.onSelectAlbum
485
492
  }, /*#__PURE__*/React.createElement(View, {
@@ -522,13 +529,19 @@ class ImageUploader extends Component {
522
529
  });
523
530
  }
524
531
  renderAttachButton() {
532
+ var _this$props$insets;
525
533
  const {
526
534
  selected,
527
535
  selectedType
528
536
  } = this.state;
529
537
  const canAttach = selected.length > 0 && !_.isEmpty(selectedType);
530
- const attachText = `Attach ${canAttach ? selected.length : ''} ${canAttach ? selectedType : ''}${selected.length > 1 ? 's' : ''}`;
538
+ const attachText = `Attach ${canAttach ? selected.length : ""} ${canAttach ? selectedType : ""}${selected.length > 1 ? "s" : ""}`;
539
+ const bottom = Platform.OS === "android" ? ((_this$props$insets = this.props.insets) === null || _this$props$insets === void 0 ? void 0 : _this$props$insets.bottom) ?? 0 : 0;
531
540
  return /*#__PURE__*/React.createElement(View, {
541
+ style: {
542
+ backgroundColor: "#fff"
543
+ }
544
+ }, /*#__PURE__*/React.createElement(View, {
532
545
  style: styles.buttonContainer
533
546
  }, /*#__PURE__*/React.createElement(InlineButton, {
534
547
  color: canAttach ? this.props.colourBrandingMain : INACTIVE_BUTTON,
@@ -536,9 +549,14 @@ class ImageUploader extends Component {
536
549
  fillTouchable: true,
537
550
  large: true,
538
551
  disabled: !canAttach
539
- }, attachText));
552
+ }, attachText)), bottom > 0 && /*#__PURE__*/React.createElement(View, {
553
+ style: {
554
+ height: bottom
555
+ }
556
+ }));
540
557
  }
541
558
  renderSelectAlbumPopup() {
559
+ var _this$props$insets2;
542
560
  const {
543
561
  showSelectAlbum,
544
562
  localAlbums,
@@ -574,6 +592,8 @@ class ImageUploader extends Component {
574
592
  }, /*#__PURE__*/React.createElement(View, {
575
593
  style: [styles.albumOptionContainer, {
576
594
  marginHorizontal: 0
595
+ }, Platform.OS === "android" && {
596
+ paddingBottom: 16 + (((_this$props$insets2 = this.props.insets) === null || _this$props$insets2 === void 0 ? void 0 : _this$props$insets2.bottom) ?? 0)
577
597
  }]
578
598
  }, /*#__PURE__*/React.createElement(Text, {
579
599
  style: [styles.albumOptionText, {
@@ -587,13 +607,15 @@ class ImageUploader extends Component {
587
607
  transparent: true,
588
608
  animationType: "slide",
589
609
  onRequestClose: this.hidePhotos
610
+ }, /*#__PURE__*/React.createElement(View, {
611
+ style: styles.modalContainer
590
612
  }, /*#__PURE__*/React.createElement(Header, {
591
613
  leftIcon: "angle-left",
592
614
  onPressLeft: this.hidePhotos,
593
- text: this.props.popupTitle || 'Attach image'
615
+ text: this.props.popupTitle || "Attach image"
594
616
  }), /*#__PURE__*/React.createElement(View, {
595
617
  style: styles.contentContainer
596
- }, this.renderSelectionPreview(), this.renderSelectedAlbum(), this.renderBrowser()), this.renderAttachButton(), this.renderSelectAlbumPopup());
618
+ }, this.renderSelectionPreview(), this.renderSelectedAlbum(), this.renderBrowser()), this.renderAttachButton()), this.renderSelectAlbumPopup());
597
619
  }
598
620
  render() {
599
621
  const {
@@ -608,11 +630,11 @@ class ImageUploader extends Component {
608
630
  title: "Permissions missing",
609
631
  text: warning,
610
632
  options: [{
611
- text: 'Go to settings',
633
+ text: "Go to settings",
612
634
  action: this.goToPermissionSettings.bind(this),
613
635
  bold: true
614
636
  }, {
615
- text: 'Ignore',
637
+ text: "Ignore",
616
638
  action: this.closeWarningPopup.bind(this)
617
639
  }]
618
640
  });
@@ -643,6 +665,9 @@ class ImageUploader extends Component {
643
665
  }
644
666
  }
645
667
  const styles = StyleSheet.create({
668
+ modalContainer: {
669
+ flex: 1
670
+ },
646
671
  contentContainer: {
647
672
  flex: 1,
648
673
  backgroundColor: BOXGREY
@@ -655,44 +680,44 @@ const styles = StyleSheet.create({
655
680
  },
656
681
  selectedItemContainer: {
657
682
  flex: 1,
658
- backgroundColor: '#0008'
683
+ backgroundColor: "#0008"
659
684
  },
660
685
  selectedMarkerContainer: {
661
- position: 'absolute',
686
+ position: "absolute",
662
687
  top: 6,
663
688
  right: 6,
664
689
  width: 20,
665
690
  height: 20,
666
691
  borderRadius: 10,
667
- alignItems: 'center',
668
- justifyContent: 'center'
692
+ alignItems: "center",
693
+ justifyContent: "center"
669
694
  },
670
695
  selectedItemText: {
671
- fontFamily: 'sf-semibold',
696
+ fontFamily: "sf-semibold",
672
697
  fontSize: 12,
673
- color: '#fff',
698
+ color: "#fff",
674
699
  marginBottom: 1
675
700
  },
676
701
  selectedItemIcon: {
677
702
  fontSize: 12,
678
- color: '#fff',
703
+ color: "#fff",
679
704
  marginBottom: 1
680
705
  },
681
706
  buttonContainer: {
682
- alignItems: 'center',
683
- justifyContent: 'center',
707
+ alignItems: "center",
708
+ justifyContent: "center",
684
709
  height: 60,
685
710
  paddingHorizontal: 14,
686
- backgroundColor: '#fff'
711
+ backgroundColor: "#fff"
687
712
  },
688
713
  selectAlbumButton: {
689
714
  paddingTop: 13,
690
715
  paddingHorizontal: 14,
691
- flexDirection: 'row',
692
- alignItems: 'center'
716
+ flexDirection: "row",
717
+ alignItems: "center"
693
718
  },
694
719
  selectAlbumButtonText: {
695
- fontFamily: 'sf-medium',
720
+ fontFamily: "sf-medium",
696
721
  fontSize: 14,
697
722
  color: TEXT_BLUEGREY,
698
723
  marginRight: 6
@@ -702,20 +727,20 @@ const styles = StyleSheet.create({
702
727
  color: TEXT_BLUEGREY
703
728
  },
704
729
  selectAlbumModal: {
705
- position: 'absolute',
730
+ position: "absolute",
706
731
  bottom: 0,
707
732
  left: 0,
708
733
  right: 0,
709
734
  top: 0,
710
- backgroundColor: 'rgba(0,0,0,0.5)',
735
+ backgroundColor: "rgba(0,0,0,0.5)",
711
736
  zIndex: 1000
712
737
  },
713
738
  selectAlbumContainer: {
714
- position: 'absolute',
739
+ position: "absolute",
715
740
  bottom: 0,
716
741
  left: 0,
717
742
  right: 0,
718
- backgroundColor: '#fff',
743
+ backgroundColor: "#fff",
719
744
  borderTopLeftRadius: 12,
720
745
  borderTopRightRadius: 12,
721
746
  maxHeight: SCREEN_HEIGHT / 2
@@ -726,9 +751,9 @@ const styles = StyleSheet.create({
726
751
  borderBottomWidth: 1
727
752
  },
728
753
  selectAlbumTitle: {
729
- fontFamily: 'sf-semibold',
754
+ fontFamily: "sf-semibold",
730
755
  fontSize: 16,
731
- textAlign: 'center',
756
+ textAlign: "center",
732
757
  color: TEXT_DARK
733
758
  },
734
759
  albumOptionContainer: {
@@ -738,9 +763,9 @@ const styles = StyleSheet.create({
738
763
  borderTopWidth: 1
739
764
  },
740
765
  albumOptionText: {
741
- fontFamily: 'sf-regular',
766
+ fontFamily: "sf-regular",
742
767
  fontSize: 16,
743
- textAlign: 'center',
768
+ textAlign: "center",
744
769
  color: TEXT_DARK
745
770
  },
746
771
  selectionPreviewContainer: {
@@ -754,28 +779,28 @@ const styles = StyleSheet.create({
754
779
  previewItemImage: {
755
780
  width: 50,
756
781
  height: 50,
757
- alignItems: 'center',
758
- justifyContent: 'center',
782
+ alignItems: "center",
783
+ justifyContent: "center",
759
784
  borderRadius: 4,
760
- overflow: 'hidden'
785
+ overflow: "hidden"
761
786
  },
762
787
  previewItemRemoveButton: {
763
- position: 'absolute',
788
+ position: "absolute",
764
789
  top: -8,
765
790
  right: -8
766
791
  },
767
792
  previewItemRemoveContainer: {
768
- justifyContent: 'center',
769
- alignItems: 'center',
793
+ justifyContent: "center",
794
+ alignItems: "center",
770
795
  borderRadius: 10,
771
796
  width: 20,
772
797
  height: 20,
773
798
  borderWidth: 2,
774
- borderColor: '#fff'
799
+ borderColor: "#fff"
775
800
  },
776
801
  previewItemRemoveIcon: {
777
802
  fontSize: 10,
778
- color: '#fff',
803
+ color: "#fff",
779
804
  marginBottom: 1
780
805
  }
781
806
  });
@@ -787,7 +812,7 @@ const mapStateToProps = state => {
787
812
  const imageLibrary = media.imageLibrary.filter(folder => !folder.Public).map(album => {
788
813
  return {
789
814
  title: album.Name,
790
- id: album.RowId || '',
815
+ id: album.RowId || "",
791
816
  images: album.RowId ? album.Images : media.stockImages
792
817
  };
793
818
  });
@@ -802,5 +827,5 @@ export default connect(mapStateToProps, {
802
827
  imageLibraryLoaded
803
828
  }, null, {
804
829
  forwardRef: true
805
- })(ImageUploader);
830
+ })(withSafeAreaInsets(ImageUploader));
806
831
  //# sourceMappingURL=ImageUploader.js.map