@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,16 +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, { Component } from 'react';
5
- import { View, TouchableOpacity, Text, StyleSheet, ActivityIndicator } from 'react-native';
6
- import { Icon } from '@rneui/themed';
7
- // import * as DocumentPicker from 'expo-document-picker';
8
- import { connect } from 'react-redux';
9
- import Config from '../config';
10
- import { fileActions } from '../apis';
11
- import { getValueOrDefault } from '../helper';
12
- import { TEXT_DARK, getMainBrandingColourFromState } from '../colours';
13
- const DEFAULT_DOCUMENT_NAME = 'document';
4
+ import React, { Component } from "react";
5
+ import { Text } from "@plusscommunities/pluss-core-app/components";
6
+ import { View, TouchableOpacity, StyleSheet, ActivityIndicator } from "react-native";
7
+ import { Icon } from "@rneui/themed";
8
+ import * as DocumentPicker from "expo-document-picker";
9
+ import { connect } from "react-redux";
10
+ import Config from "../config";
11
+ import { fileActions } from "../apis";
12
+ import { getValueOrDefault } from "../helper";
13
+ import { TEXT_DARK, getMainBrandingColourFromState } from "../colours";
14
+ const DEFAULT_DOCUMENT_NAME = "document";
14
15
  class DocumentUploader extends Component {
15
16
  constructor(...args) {
16
17
  super(...args);
@@ -23,22 +24,21 @@ class DocumentUploader extends Component {
23
24
  allowedTypes,
24
25
  multiple
25
26
  } = this.props;
27
+ try {
28
+ const result = await DocumentPicker.getDocumentAsync({
29
+ type: allowedTypes,
30
+ copyToCacheDirectory: true,
31
+ multiple: multiple || false
32
+ });
33
+ // console.log('pickDocument', JSON.stringify(result, null, 2));
26
34
 
27
- // try {
28
- // const result = await DocumentPicker.getDocumentAsync({
29
- // type: allowedTypes,
30
- // copyToCacheDirectory: true,
31
- // multiple: multiple || false,
32
- // });
33
- // // console.log('pickDocument', JSON.stringify(result, null, 2));
34
-
35
- // if (!result.canceled) {
36
- // await this.handleDocumentPicked(result);
37
- // }
38
- // } catch (error) {
39
- // console.log('Document picker error:', error);
40
- // this.props.onUploadFailed(null, error.message);
41
- // }
35
+ if (!result.canceled) {
36
+ await this.handleDocumentPicked(result);
37
+ }
38
+ } catch (error) {
39
+ console.log("Document picker error:", error);
40
+ this.props.onUploadFailed(null, error.message);
41
+ }
42
42
  });
43
43
  _defineProperty(this, "handleDocumentPicked", async documentResult => {
44
44
  const {
@@ -61,19 +61,19 @@ class DocumentUploader extends Component {
61
61
  mimeType
62
62
  } = asset;
63
63
  let file, fileExt;
64
- if (name && name.includes('.')) {
65
- const lastDotIndex = name.lastIndexOf('.');
64
+ if (name && name.includes(".")) {
65
+ const lastDotIndex = name.lastIndexOf(".");
66
66
  file = name.substring(0, lastDotIndex);
67
67
  fileExt = name.substring(lastDotIndex + 1);
68
68
  } else {
69
69
  // Fallback: extract extension from mimeType
70
- file = name || 'document';
70
+ file = name || "document";
71
71
  if (mimeType) {
72
- const mimeTypeParts = mimeType.split('/');
72
+ const mimeTypeParts = mimeType.split("/");
73
73
  // Handle specific MIME type mappings
74
- if (mimeType === 'application/pdf') fileExt = 'pdf';else if (mimeType.startsWith('image/')) fileExt = mimeTypeParts[1];else if (mimeType.startsWith('text/')) fileExt = 'txt';else fileExt = mimeTypeParts[1] || 'pdf';
74
+ if (mimeType === "application/pdf") fileExt = "pdf";else if (mimeType.startsWith("image/")) fileExt = mimeTypeParts[1];else if (mimeType.startsWith("text/")) fileExt = "txt";else fileExt = mimeTypeParts[1] || "pdf";
75
75
  } else {
76
- fileExt = 'pdf';
76
+ fileExt = "pdf";
77
77
  }
78
78
  }
79
79
 
@@ -90,7 +90,7 @@ class DocumentUploader extends Component {
90
90
  });
91
91
  const fileUrl = Config.env.baseUploadsUrl + res.key;
92
92
  this.props.onUploadSuccess(fileUrl, uploadUri);
93
- console.log('Upload success', fileUrl);
93
+ console.log("Upload success", fileUrl);
94
94
  return {
95
95
  success: true,
96
96
  url: fileUrl,
@@ -111,7 +111,7 @@ class DocumentUploader extends Component {
111
111
  const results = await Promise.all(uploadPromises);
112
112
  return results;
113
113
  } catch (error) {
114
- console.error('Document upload error:', error);
114
+ console.error("Document upload error:", error);
115
115
  return [];
116
116
  } finally {
117
117
  this.setState({
@@ -179,8 +179,8 @@ class DocumentUploader extends Component {
179
179
  }
180
180
  }
181
181
  _defineProperty(DocumentUploader, "defaultProps", {
182
- allowedTypes: ['application/pdf'],
183
- buttonTitle: 'Upload Document',
182
+ allowedTypes: ["application/pdf"],
183
+ buttonTitle: "Upload Document",
184
184
  buttonStyle: {},
185
185
  buttonTextStyle: {},
186
186
  onUploadStarted: () => {},
@@ -196,24 +196,24 @@ const styles = StyleSheet.create({
196
196
  marginVertical: 10
197
197
  },
198
198
  uploadButton: {
199
- flexDirection: 'row',
200
- alignItems: 'center',
201
- justifyContent: 'center',
199
+ flexDirection: "row",
200
+ alignItems: "center",
201
+ justifyContent: "center",
202
202
  paddingVertical: 8,
203
203
  paddingHorizontal: 16,
204
204
  borderRadius: 6,
205
- backgroundColor: '#fff',
205
+ backgroundColor: "#fff",
206
206
  borderWidth: 1,
207
- borderColor: '#007AFF'
207
+ borderColor: "#007AFF"
208
208
  },
209
209
  buttonContent: {
210
- flexDirection: 'row',
211
- alignItems: 'center'
210
+ flexDirection: "row",
211
+ alignItems: "center"
212
212
  },
213
213
  buttonText: {
214
- color: '#fff',
214
+ color: "#fff",
215
215
  fontSize: 16,
216
- fontWeight: '500',
216
+ fontWeight: "500",
217
217
  marginLeft: 8
218
218
  },
219
219
  icon: {
@@ -221,18 +221,18 @@ const styles = StyleSheet.create({
221
221
  },
222
222
  progressContainer: {
223
223
  marginTop: 8,
224
- alignItems: 'center'
224
+ alignItems: "center"
225
225
  },
226
226
  progressBar: {
227
227
  height: 4,
228
- width: '100%',
229
- backgroundColor: '#E0E0E0',
228
+ width: "100%",
229
+ backgroundColor: "#E0E0E0",
230
230
  borderRadius: 2,
231
- overflow: 'hidden'
231
+ overflow: "hidden"
232
232
  },
233
233
  progressFill: {
234
- height: '100%',
235
- backgroundColor: '#4CAF50'
234
+ height: "100%",
235
+ backgroundColor: "#4CAF50"
236
236
  },
237
237
  progressText: {
238
238
  marginTop: 4,
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","View","TouchableOpacity","Text","StyleSheet","ActivityIndicator","Icon","connect","Config","fileActions","getValueOrDefault","TEXT_DARK","getMainBrandingColourFromState","DEFAULT_DOCUMENT_NAME","DocumentUploader","constructor","args","_defineProperty","isUploading","uploadProgress","allowedTypes","multiple","props","documentResult","assets","userId","setState","uploadPromises","map","asset","name","uri","mimeType","file","fileExt","includes","lastDotIndex","lastIndexOf","substring","mimeTypeParts","split","startsWith","fileName","uploadUri","getUploadUrl","onUploadStarted","toUpperCase","res","uploadUserMediaWithProgress","progress","onUploadProgress","fileUrl","env","baseUploadsUrl","key","onUploadSuccess","console","log","success","url","error","onUploadFailed","message","results","Promise","all","buttonTitle","buttonStyle","buttonTextStyle","disabled","state","mainColor","createElement","style","styles","uploadButton","borderColor","onPress","pickDocument","activeOpacity","buttonContent","color","type","size","icon","buttonText","progressContainer","progressBar","progressFill","width","progressText","Math","round","render","container","renderUploadButton","renderProgress","create","marginVertical","flexDirection","alignItems","justifyContent","paddingVertical","paddingHorizontal","borderRadius","backgroundColor","borderWidth","fontSize","fontWeight","marginLeft","marginRight","marginTop","height","overflow","mapStateToProps","user","colourBrandingMain"],"sources":["DocumentUploader.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { View, TouchableOpacity, Text, StyleSheet, ActivityIndicator } from 'react-native';\nimport { Icon } from '@rneui/themed';\n// import * as DocumentPicker from 'expo-document-picker';\nimport { connect } from 'react-redux';\nimport Config from '../config';\nimport { fileActions } from '../apis';\nimport { getValueOrDefault } from '../helper';\nimport { TEXT_DARK, getMainBrandingColourFromState } from '../colours';\n\nconst DEFAULT_DOCUMENT_NAME = 'document';\n\nclass DocumentUploader extends Component {\n static defaultProps = {\n allowedTypes: ['application/pdf'],\n buttonTitle: 'Upload Document',\n buttonStyle: {},\n buttonTextStyle: {},\n onUploadStarted: () => {},\n onUploadSuccess: () => {},\n onUploadFailed: () => {},\n onUploadProgress: null,\n userId: null,\n fileName: null,\n disabled: false,\n };\n\n state = {\n isUploading: false,\n uploadProgress: 0,\n };\n\n pickDocument = async () => {\n const { allowedTypes, multiple } = this.props;\n\n // try {\n // const result = await DocumentPicker.getDocumentAsync({\n // type: allowedTypes,\n // copyToCacheDirectory: true,\n // multiple: multiple || false,\n // });\n // // console.log('pickDocument', JSON.stringify(result, null, 2));\n\n // if (!result.canceled) {\n // await this.handleDocumentPicked(result);\n // }\n // } catch (error) {\n // console.log('Document picker error:', error);\n // this.props.onUploadFailed(null, error.message);\n // }\n };\n\n handleDocumentPicked = async documentResult => {\n const { assets } = documentResult;\n const { userId } = this.props;\n\n try {\n this.setState({ isUploading: true, uploadProgress: 0 });\n\n // Process each asset in parallel\n const uploadPromises = assets.map(async asset => {\n const { name, uri, mimeType } = asset;\n\n let file, fileExt;\n if (name && name.includes('.')) {\n const lastDotIndex = name.lastIndexOf('.');\n file = name.substring(0, lastDotIndex);\n fileExt = name.substring(lastDotIndex + 1);\n } else {\n // Fallback: extract extension from mimeType\n file = name || 'document';\n if (mimeType) {\n const mimeTypeParts = mimeType.split('/');\n // Handle specific MIME type mappings\n if (mimeType === 'application/pdf') fileExt = 'pdf';\n else if (mimeType.startsWith('image/')) fileExt = mimeTypeParts[1];\n else if (mimeType.startsWith('text/')) fileExt = 'txt';\n else fileExt = mimeTypeParts[1] || 'pdf';\n } else {\n fileExt = 'pdf';\n }\n }\n\n // Generate a unique filename if not provided\n const fileName = `${getValueOrDefault(this.props.fileName, DEFAULT_DOCUMENT_NAME)}.${fileExt}`;\n const uploadUri = fileActions.getUploadUrl(userId, fileName);\n // console.log('handleDocumentPicked', JSON.stringify({ uploadUri, uri, name, fileName, mimeType, file, fileExt }, null, 2));\n\n try {\n // Notify parent component that upload has started for this file\n this.props.onUploadStarted(uploadUri, uri, file, fileExt.toUpperCase());\n\n const res = await fileActions.uploadUserMediaWithProgress(uri, uploadUri, progress => {\n if (this.props.onUploadProgress) this.props.onUploadProgress(progress);\n });\n\n const fileUrl = Config.env.baseUploadsUrl + res.key;\n this.props.onUploadSuccess(fileUrl, uploadUri);\n console.log('Upload success', fileUrl);\n return { success: true, url: fileUrl, uploadUri };\n } catch (error) {\n console.error(`Upload failed for ${name}:`, error);\n this.props.onUploadFailed(uploadUri, error.message);\n return { success: false, error, uploadUri };\n }\n });\n\n // Wait for all uploads to complete\n const results = await Promise.all(uploadPromises);\n return results;\n } catch (error) {\n console.error('Document upload error:', error);\n return [];\n } finally {\n this.setState({ isUploading: false, uploadProgress: 0 });\n }\n };\n\n renderUploadButton = () => {\n const { buttonTitle, buttonStyle, buttonTextStyle, disabled } = this.props;\n const { isUploading } = this.state;\n const mainColor = getMainBrandingColourFromState(this.props);\n\n return (\n <TouchableOpacity\n style={[styles.uploadButton, { borderColor: mainColor }, buttonStyle]}\n onPress={this.pickDocument}\n disabled={isUploading || disabled}\n activeOpacity={0.7}\n >\n <View style={styles.buttonContent}>\n {isUploading ? (\n <ActivityIndicator color={mainColor} />\n ) : (\n <Icon name=\"attachment\" type=\"entypo\" color={mainColor} size={18} style={styles.icon} />\n )}\n <Text style={[styles.buttonText, { color: mainColor }, buttonTextStyle]}>{buttonTitle}</Text>\n </View>\n </TouchableOpacity>\n );\n };\n\n renderProgress = () => {\n const { uploadProgress } = this.state;\n if (uploadProgress <= 0 || uploadProgress >= 1) return null;\n\n return (\n <View style={styles.progressContainer}>\n <View style={styles.progressBar}>\n <View style={[styles.progressFill, { width: `${uploadProgress * 100}%` }]} />\n </View>\n <Text style={styles.progressText}>{Math.round(uploadProgress * 100)}%</Text>\n </View>\n );\n };\n\n render() {\n return (\n <View style={styles.container}>\n {this.renderUploadButton()}\n {this.renderProgress()}\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n marginVertical: 10,\n },\n uploadButton: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n paddingVertical: 8,\n paddingHorizontal: 16,\n borderRadius: 6,\n backgroundColor: '#fff',\n borderWidth: 1,\n borderColor: '#007AFF',\n },\n buttonContent: {\n flexDirection: 'row',\n alignItems: 'center',\n },\n buttonText: {\n color: '#fff',\n fontSize: 16,\n fontWeight: '500',\n marginLeft: 8,\n },\n icon: {\n marginRight: 8,\n },\n progressContainer: {\n marginTop: 8,\n alignItems: 'center',\n },\n progressBar: {\n height: 4,\n width: '100%',\n backgroundColor: '#E0E0E0',\n borderRadius: 2,\n overflow: 'hidden',\n },\n progressFill: {\n height: '100%',\n backgroundColor: '#4CAF50',\n },\n progressText: {\n marginTop: 4,\n fontSize: 12,\n color: TEXT_DARK,\n },\n});\n\nconst mapStateToProps = state => {\n const { user } = state;\n return {\n user,\n colourBrandingMain: getMainBrandingColourFromState(state),\n };\n};\n\nexport default connect(mapStateToProps)(DocumentUploader);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","Text","View","TouchableOpacity","StyleSheet","ActivityIndicator","Icon","DocumentPicker","connect","Config","fileActions","getValueOrDefault","TEXT_DARK","getMainBrandingColourFromState","DEFAULT_DOCUMENT_NAME","DocumentUploader","constructor","args","_defineProperty","isUploading","uploadProgress","allowedTypes","multiple","props","result","getDocumentAsync","type","copyToCacheDirectory","canceled","handleDocumentPicked","error","console","log","onUploadFailed","message","documentResult","assets","userId","setState","uploadPromises","map","asset","name","uri","mimeType","file","fileExt","includes","lastDotIndex","lastIndexOf","substring","mimeTypeParts","split","startsWith","fileName","uploadUri","getUploadUrl","onUploadStarted","toUpperCase","res","uploadUserMediaWithProgress","progress","onUploadProgress","fileUrl","env","baseUploadsUrl","key","onUploadSuccess","success","url","results","Promise","all","buttonTitle","buttonStyle","buttonTextStyle","disabled","state","mainColor","createElement","style","styles","uploadButton","borderColor","onPress","pickDocument","activeOpacity","buttonContent","color","size","icon","buttonText","progressContainer","progressBar","progressFill","width","progressText","Math","round","render","container","renderUploadButton","renderProgress","create","marginVertical","flexDirection","alignItems","justifyContent","paddingVertical","paddingHorizontal","borderRadius","backgroundColor","borderWidth","fontSize","fontWeight","marginLeft","marginRight","marginTop","height","overflow","mapStateToProps","user","colourBrandingMain"],"sources":["DocumentUploader.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { Text } from \"@plusscommunities/pluss-core-app/components\";\nimport {\n\tView,\n\tTouchableOpacity,\n\tStyleSheet,\n\tActivityIndicator,\n} from \"react-native\";\nimport { Icon } from \"@rneui/themed\";\nimport * as DocumentPicker from \"expo-document-picker\";\nimport { connect } from \"react-redux\";\nimport Config from \"../config\";\nimport { fileActions } from \"../apis\";\nimport { getValueOrDefault } from \"../helper\";\nimport { TEXT_DARK, getMainBrandingColourFromState } from \"../colours\";\n\nconst DEFAULT_DOCUMENT_NAME = \"document\";\n\nclass DocumentUploader extends Component {\n\tstatic defaultProps = {\n\t\tallowedTypes: [\"application/pdf\"],\n\t\tbuttonTitle: \"Upload Document\",\n\t\tbuttonStyle: {},\n\t\tbuttonTextStyle: {},\n\t\tonUploadStarted: () => {},\n\t\tonUploadSuccess: () => {},\n\t\tonUploadFailed: () => {},\n\t\tonUploadProgress: null,\n\t\tuserId: null,\n\t\tfileName: null,\n\t\tdisabled: false,\n\t};\n\n\tstate = {\n\t\tisUploading: false,\n\t\tuploadProgress: 0,\n\t};\n\n\tpickDocument = async () => {\n\t\tconst { allowedTypes, multiple } = this.props;\n\n\t\ttry {\n\t\t\tconst result = await DocumentPicker.getDocumentAsync({\n\t\t\t\ttype: allowedTypes,\n\t\t\t\tcopyToCacheDirectory: true,\n\t\t\t\tmultiple: multiple || false,\n\t\t\t});\n\t\t\t// console.log('pickDocument', JSON.stringify(result, null, 2));\n\n\t\t\tif (!result.canceled) {\n\t\t\t\tawait this.handleDocumentPicked(result);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.log(\"Document picker error:\", error);\n\t\t\tthis.props.onUploadFailed(null, error.message);\n\t\t}\n\t};\n\n\thandleDocumentPicked = async (documentResult) => {\n\t\tconst { assets } = documentResult;\n\t\tconst { userId } = this.props;\n\n\t\ttry {\n\t\t\tthis.setState({ isUploading: true, uploadProgress: 0 });\n\n\t\t\t// Process each asset in parallel\n\t\t\tconst uploadPromises = assets.map(async (asset) => {\n\t\t\t\tconst { name, uri, mimeType } = asset;\n\n\t\t\t\tlet file, fileExt;\n\t\t\t\tif (name && name.includes(\".\")) {\n\t\t\t\t\tconst lastDotIndex = name.lastIndexOf(\".\");\n\t\t\t\t\tfile = name.substring(0, lastDotIndex);\n\t\t\t\t\tfileExt = name.substring(lastDotIndex + 1);\n\t\t\t\t} else {\n\t\t\t\t\t// Fallback: extract extension from mimeType\n\t\t\t\t\tfile = name || \"document\";\n\t\t\t\t\tif (mimeType) {\n\t\t\t\t\t\tconst mimeTypeParts = mimeType.split(\"/\");\n\t\t\t\t\t\t// Handle specific MIME type mappings\n\t\t\t\t\t\tif (mimeType === \"application/pdf\") fileExt = \"pdf\";\n\t\t\t\t\t\telse if (mimeType.startsWith(\"image/\")) fileExt = mimeTypeParts[1];\n\t\t\t\t\t\telse if (mimeType.startsWith(\"text/\")) fileExt = \"txt\";\n\t\t\t\t\t\telse fileExt = mimeTypeParts[1] || \"pdf\";\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfileExt = \"pdf\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Generate a unique filename if not provided\n\t\t\t\tconst fileName = `${getValueOrDefault(this.props.fileName, DEFAULT_DOCUMENT_NAME)}.${fileExt}`;\n\t\t\t\tconst uploadUri = fileActions.getUploadUrl(userId, fileName);\n\t\t\t\t// console.log('handleDocumentPicked', JSON.stringify({ uploadUri, uri, name, fileName, mimeType, file, fileExt }, null, 2));\n\n\t\t\t\ttry {\n\t\t\t\t\t// Notify parent component that upload has started for this file\n\t\t\t\t\tthis.props.onUploadStarted(\n\t\t\t\t\t\tuploadUri,\n\t\t\t\t\t\turi,\n\t\t\t\t\t\tfile,\n\t\t\t\t\t\tfileExt.toUpperCase(),\n\t\t\t\t\t);\n\n\t\t\t\t\tconst res = await fileActions.uploadUserMediaWithProgress(\n\t\t\t\t\t\turi,\n\t\t\t\t\t\tuploadUri,\n\t\t\t\t\t\t(progress) => {\n\t\t\t\t\t\t\tif (this.props.onUploadProgress)\n\t\t\t\t\t\t\t\tthis.props.onUploadProgress(progress);\n\t\t\t\t\t\t},\n\t\t\t\t\t);\n\n\t\t\t\t\tconst fileUrl = Config.env.baseUploadsUrl + res.key;\n\t\t\t\t\tthis.props.onUploadSuccess(fileUrl, uploadUri);\n\t\t\t\t\tconsole.log(\"Upload success\", fileUrl);\n\t\t\t\t\treturn { success: true, url: fileUrl, uploadUri };\n\t\t\t\t} catch (error) {\n\t\t\t\t\tconsole.error(`Upload failed for ${name}:`, error);\n\t\t\t\t\tthis.props.onUploadFailed(uploadUri, error.message);\n\t\t\t\t\treturn { success: false, error, uploadUri };\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t// Wait for all uploads to complete\n\t\t\tconst results = await Promise.all(uploadPromises);\n\t\t\treturn results;\n\t\t} catch (error) {\n\t\t\tconsole.error(\"Document upload error:\", error);\n\t\t\treturn [];\n\t\t} finally {\n\t\t\tthis.setState({ isUploading: false, uploadProgress: 0 });\n\t\t}\n\t};\n\n\trenderUploadButton = () => {\n\t\tconst { buttonTitle, buttonStyle, buttonTextStyle, disabled } = this.props;\n\t\tconst { isUploading } = this.state;\n\t\tconst mainColor = getMainBrandingColourFromState(this.props);\n\n\t\treturn (\n\t\t\t<TouchableOpacity\n\t\t\t\tstyle={[styles.uploadButton, { borderColor: mainColor }, buttonStyle]}\n\t\t\t\tonPress={this.pickDocument}\n\t\t\t\tdisabled={isUploading || disabled}\n\t\t\t\tactiveOpacity={0.7}\n\t\t\t>\n\t\t\t\t<View style={styles.buttonContent}>\n\t\t\t\t\t{isUploading ? (\n\t\t\t\t\t\t<ActivityIndicator color={mainColor} />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tname=\"attachment\"\n\t\t\t\t\t\t\ttype=\"entypo\"\n\t\t\t\t\t\t\tcolor={mainColor}\n\t\t\t\t\t\t\tsize={18}\n\t\t\t\t\t\t\tstyle={styles.icon}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t\t<Text\n\t\t\t\t\t\tstyle={[styles.buttonText, { color: mainColor }, buttonTextStyle]}\n\t\t\t\t\t>\n\t\t\t\t\t\t{buttonTitle}\n\t\t\t\t\t</Text>\n\t\t\t\t</View>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t};\n\n\trenderProgress = () => {\n\t\tconst { uploadProgress } = this.state;\n\t\tif (uploadProgress <= 0 || uploadProgress >= 1) return null;\n\n\t\treturn (\n\t\t\t<View style={styles.progressContainer}>\n\t\t\t\t<View style={styles.progressBar}>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={[styles.progressFill, { width: `${uploadProgress * 100}%` }]}\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t\t<Text style={styles.progressText}>\n\t\t\t\t\t{Math.round(uploadProgress * 100)}%\n\t\t\t\t</Text>\n\t\t\t</View>\n\t\t);\n\t};\n\n\trender() {\n\t\treturn (\n\t\t\t<View style={styles.container}>\n\t\t\t\t{this.renderUploadButton()}\n\t\t\t\t{this.renderProgress()}\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nconst styles = StyleSheet.create({\n\tcontainer: {\n\t\tmarginVertical: 10,\n\t},\n\tuploadButton: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\tpaddingVertical: 8,\n\t\tpaddingHorizontal: 16,\n\t\tborderRadius: 6,\n\t\tbackgroundColor: \"#fff\",\n\t\tborderWidth: 1,\n\t\tborderColor: \"#007AFF\",\n\t},\n\tbuttonContent: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tbuttonText: {\n\t\tcolor: \"#fff\",\n\t\tfontSize: 16,\n\t\tfontWeight: \"500\",\n\t\tmarginLeft: 8,\n\t},\n\ticon: {\n\t\tmarginRight: 8,\n\t},\n\tprogressContainer: {\n\t\tmarginTop: 8,\n\t\talignItems: \"center\",\n\t},\n\tprogressBar: {\n\t\theight: 4,\n\t\twidth: \"100%\",\n\t\tbackgroundColor: \"#E0E0E0\",\n\t\tborderRadius: 2,\n\t\toverflow: \"hidden\",\n\t},\n\tprogressFill: {\n\t\theight: \"100%\",\n\t\tbackgroundColor: \"#4CAF50\",\n\t},\n\tprogressText: {\n\t\tmarginTop: 4,\n\t\tfontSize: 12,\n\t\tcolor: TEXT_DARK,\n\t},\n});\n\nconst mapStateToProps = (state) => {\n\tconst { user } = state;\n\treturn {\n\t\tuser,\n\t\tcolourBrandingMain: getMainBrandingColourFromState(state),\n\t};\n};\n\nexport default connect(mapStateToProps)(DocumentUploader);\n"],"mappings":"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","ignoreList":[]}
@@ -1,12 +1,13 @@
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 _ from 'lodash';
6
- import { Text, TouchableOpacity } from 'react-native';
7
- import { Icon } from '@rneui/themed';
8
- import { connect } from 'react-redux';
9
- import { TEXT_DARK, getMainBrandingColourFromState } from '../colours';
4
+ import React, { Component } from "react";
5
+ import _ from "lodash";
6
+ import { TouchableOpacity } from "react-native";
7
+ import { Text } from "./Text";
8
+ import { Icon } from "@rneui/themed";
9
+ import { connect } from "react-redux";
10
+ import { TEXT_DARK, getMainBrandingColourFromState } from "../colours";
10
11
  class DropDownItem extends Component {
11
12
  constructor(...args) {
12
13
  super(...args);
@@ -40,28 +41,28 @@ class DropDownItem extends Component {
40
41
  }
41
42
  const styles = {
42
43
  container: {
43
- flexDirection: 'row',
44
+ flexDirection: "row",
44
45
  marginBottom: 12,
45
46
  minHeight: 18,
46
- width: '100%',
47
- position: 'relative'
47
+ width: "100%",
48
+ position: "relative"
48
49
  },
49
50
  text: {
50
- fontFamily: 'sf-medium',
51
+ fontFamily: "sf-medium",
51
52
  fontSize: 16,
52
53
  lineHeight: 18,
53
54
  color: TEXT_DARK,
54
- backgroundColor: 'transparent'
55
+ backgroundColor: "transparent"
55
56
  },
56
57
  dropDownItem_Icon: {
57
58
  marginRight: 8,
58
59
  width: 18,
59
- alignSelf: 'center'
60
+ alignSelf: "center"
60
61
  },
61
62
  dropDownItem_IconStyle: {
62
63
  fontSize: 16,
63
64
  lineHeight: 18,
64
- textAlign: 'center'
65
+ textAlign: "center"
65
66
  }
66
67
  };
67
68
  const mapStateToProps = state => {
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","_","Text","TouchableOpacity","Icon","connect","TEXT_DARK","getMainBrandingColourFromState","DropDownItem","constructor","args","_defineProperty","renderIcon","isUndefined","props","icon","createElement","name","type","style","styles","dropDownItem_Icon","iconStyle","dropDownItem_IconStyle","fontSize","color","colourBrandingMain","render","container","last","marginBottom","onPress","activeOpacity","text","textStyle","flexDirection","minHeight","width","position","fontFamily","lineHeight","backgroundColor","marginRight","alignSelf","textAlign","mapStateToProps","state","dropDownItem"],"sources":["DropDownItem.js"],"sourcesContent":["import React, { Component } from 'react';\nimport _ from 'lodash';\nimport { Text, TouchableOpacity } from 'react-native';\nimport { Icon } from '@rneui/themed';\nimport { connect } from 'react-redux';\nimport { TEXT_DARK, getMainBrandingColourFromState } from '../colours';\n\nclass DropDownItem extends Component {\n state = {};\n\n renderIcon() {\n if (!_.isUndefined(this.props.icon)) {\n return (\n <Icon\n name={this.props.icon}\n type=\"font-awesome\"\n style={styles.dropDownItem_Icon}\n iconStyle={[styles.dropDownItem_IconStyle, { fontSize: 16, color: this.props.colourBrandingMain }]}\n />\n );\n }\n return null;\n }\n\n render() {\n return (\n <TouchableOpacity\n style={[styles.container, this.props.last && { marginBottom: 0 }, this.props.style]}\n onPress={this.props.onPress}\n activeOpacity={0.6}\n >\n {this.renderIcon()}\n <Text style={[styles.text, this.props.textStyle]}>{this.props.text}</Text>\n </TouchableOpacity>\n );\n }\n}\n\nconst styles = {\n container: {\n flexDirection: 'row',\n marginBottom: 12,\n minHeight: 18,\n width: '100%',\n position: 'relative',\n },\n text: {\n fontFamily: 'sf-medium',\n fontSize: 16,\n lineHeight: 18,\n color: TEXT_DARK,\n backgroundColor: 'transparent',\n },\n dropDownItem_Icon: {\n marginRight: 8,\n width: 18,\n alignSelf: 'center',\n },\n dropDownItem_IconStyle: {\n fontSize: 16,\n lineHeight: 18,\n textAlign: 'center',\n },\n};\n\nconst mapStateToProps = state => {\n return {\n colourBrandingMain: getMainBrandingColourFromState(state),\n };\n};\n\nconst dropDownItem = connect(mapStateToProps, {})(DropDownItem);\nexport { dropDownItem as DropDownItem };\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,OAAOC,CAAC,MAAM,QAAQ;AACtB,SAASC,IAAI,EAAEC,gBAAgB,QAAQ,cAAc;AACrD,SAASC,IAAI,QAAQ,eAAe;AACpC,SAASC,OAAO,QAAQ,aAAa;AACrC,SAASC,SAAS,EAAEC,8BAA8B,QAAQ,YAAY;AAEtE,MAAMC,YAAY,SAASR,SAAS,CAAC;EAAAS,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,gBAC3B,CAAC,CAAC;EAAA;EAEVC,UAAUA,CAAA,EAAG;IACX,IAAI,CAACX,CAAC,CAACY,WAAW,CAAC,IAAI,CAACC,KAAK,CAACC,IAAI,CAAC,EAAE;MACnC,oBACEhB,KAAA,CAAAiB,aAAA,CAACZ,IAAI;QACHa,IAAI,EAAE,IAAI,CAACH,KAAK,CAACC,IAAK;QACtBG,IAAI,EAAC,cAAc;QACnBC,KAAK,EAAEC,MAAM,CAACC,iBAAkB;QAChCC,SAAS,EAAE,CAACF,MAAM,CAACG,sBAAsB,EAAE;UAAEC,QAAQ,EAAE,EAAE;UAAEC,KAAK,EAAE,IAAI,CAACX,KAAK,CAACY;QAAmB,CAAC;MAAE,CACpG,CAAC;IAEN;IACA,OAAO,IAAI;EACb;EAEAC,MAAMA,CAAA,EAAG;IACP,oBACE5B,KAAA,CAAAiB,aAAA,CAACb,gBAAgB;MACfgB,KAAK,EAAE,CAACC,MAAM,CAACQ,SAAS,EAAE,IAAI,CAACd,KAAK,CAACe,IAAI,IAAI;QAAEC,YAAY,EAAE;MAAE,CAAC,EAAE,IAAI,CAAChB,KAAK,CAACK,KAAK,CAAE;MACpFY,OAAO,EAAE,IAAI,CAACjB,KAAK,CAACiB,OAAQ;MAC5BC,aAAa,EAAE;IAAI,GAElB,IAAI,CAACpB,UAAU,CAAC,CAAC,eAClBb,KAAA,CAAAiB,aAAA,CAACd,IAAI;MAACiB,KAAK,EAAE,CAACC,MAAM,CAACa,IAAI,EAAE,IAAI,CAACnB,KAAK,CAACoB,SAAS;IAAE,GAAE,IAAI,CAACpB,KAAK,CAACmB,IAAW,CACzD,CAAC;EAEvB;AACF;AAEA,MAAMb,MAAM,GAAG;EACbQ,SAAS,EAAE;IACTO,aAAa,EAAE,KAAK;IACpBL,YAAY,EAAE,EAAE;IAChBM,SAAS,EAAE,EAAE;IACbC,KAAK,EAAE,MAAM;IACbC,QAAQ,EAAE;EACZ,CAAC;EACDL,IAAI,EAAE;IACJM,UAAU,EAAE,WAAW;IACvBf,QAAQ,EAAE,EAAE;IACZgB,UAAU,EAAE,EAAE;IACdf,KAAK,EAAEnB,SAAS;IAChBmC,eAAe,EAAE;EACnB,CAAC;EACDpB,iBAAiB,EAAE;IACjBqB,WAAW,EAAE,CAAC;IACdL,KAAK,EAAE,EAAE;IACTM,SAAS,EAAE;EACb,CAAC;EACDpB,sBAAsB,EAAE;IACtBC,QAAQ,EAAE,EAAE;IACZgB,UAAU,EAAE,EAAE;IACdI,SAAS,EAAE;EACb;AACF,CAAC;AAED,MAAMC,eAAe,GAAGC,KAAK,IAAI;EAC/B,OAAO;IACLpB,kBAAkB,EAAEnB,8BAA8B,CAACuC,KAAK;EAC1D,CAAC;AACH,CAAC;AAED,MAAMC,YAAY,GAAG1C,OAAO,CAACwC,eAAe,EAAE,CAAC,CAAC,CAAC,CAACrC,YAAY,CAAC;AAC/D,SAASuC,YAAY,IAAIvC,YAAY","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","_","TouchableOpacity","Text","Icon","connect","TEXT_DARK","getMainBrandingColourFromState","DropDownItem","constructor","args","_defineProperty","renderIcon","isUndefined","props","icon","createElement","name","type","style","styles","dropDownItem_Icon","iconStyle","dropDownItem_IconStyle","fontSize","color","colourBrandingMain","render","container","last","marginBottom","onPress","activeOpacity","text","textStyle","flexDirection","minHeight","width","position","fontFamily","lineHeight","backgroundColor","marginRight","alignSelf","textAlign","mapStateToProps","state","dropDownItem"],"sources":["DropDownItem.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport _ from \"lodash\";\nimport { TouchableOpacity } from \"react-native\";\nimport { Text } from \"./Text\";\nimport { Icon } from \"@rneui/themed\";\nimport { connect } from \"react-redux\";\nimport { TEXT_DARK, getMainBrandingColourFromState } from \"../colours\";\n\nclass DropDownItem extends Component {\n\tstate = {};\n\n\trenderIcon() {\n\t\tif (!_.isUndefined(this.props.icon)) {\n\t\t\treturn (\n\t\t\t\t<Icon\n\t\t\t\t\tname={this.props.icon}\n\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\tstyle={styles.dropDownItem_Icon}\n\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\tstyles.dropDownItem_IconStyle,\n\t\t\t\t\t\t{ fontSize: 16, color: this.props.colourBrandingMain },\n\t\t\t\t\t]}\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<TouchableOpacity\n\t\t\t\tstyle={[\n\t\t\t\t\tstyles.container,\n\t\t\t\t\tthis.props.last && { marginBottom: 0 },\n\t\t\t\t\tthis.props.style,\n\t\t\t\t]}\n\t\t\t\tonPress={this.props.onPress}\n\t\t\t\tactiveOpacity={0.6}\n\t\t\t>\n\t\t\t\t{this.renderIcon()}\n\t\t\t\t<Text style={[styles.text, this.props.textStyle]}>\n\t\t\t\t\t{this.props.text}\n\t\t\t\t</Text>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tcontainer: {\n\t\tflexDirection: \"row\",\n\t\tmarginBottom: 12,\n\t\tminHeight: 18,\n\t\twidth: \"100%\",\n\t\tposition: \"relative\",\n\t},\n\ttext: {\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 16,\n\t\tlineHeight: 18,\n\t\tcolor: TEXT_DARK,\n\t\tbackgroundColor: \"transparent\",\n\t},\n\tdropDownItem_Icon: {\n\t\tmarginRight: 8,\n\t\twidth: 18,\n\t\talignSelf: \"center\",\n\t},\n\tdropDownItem_IconStyle: {\n\t\tfontSize: 16,\n\t\tlineHeight: 18,\n\t\ttextAlign: \"center\",\n\t},\n};\n\nconst mapStateToProps = (state) => {\n\treturn {\n\t\tcolourBrandingMain: getMainBrandingColourFromState(state),\n\t};\n};\n\nconst dropDownItem = connect(mapStateToProps, {})(DropDownItem);\nexport { dropDownItem as DropDownItem };\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,OAAOC,CAAC,MAAM,QAAQ;AACtB,SAASC,gBAAgB,QAAQ,cAAc;AAC/C,SAASC,IAAI,QAAQ,QAAQ;AAC7B,SAASC,IAAI,QAAQ,eAAe;AACpC,SAASC,OAAO,QAAQ,aAAa;AACrC,SAASC,SAAS,EAAEC,8BAA8B,QAAQ,YAAY;AAEtE,MAAMC,YAAY,SAASR,SAAS,CAAC;EAAAS,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,gBAC5B,CAAC,CAAC;EAAA;EAEVC,UAAUA,CAAA,EAAG;IACZ,IAAI,CAACX,CAAC,CAACY,WAAW,CAAC,IAAI,CAACC,KAAK,CAACC,IAAI,CAAC,EAAE;MACpC,oBACChB,KAAA,CAAAiB,aAAA,CAACZ,IAAI;QACJa,IAAI,EAAE,IAAI,CAACH,KAAK,CAACC,IAAK;QACtBG,IAAI,EAAC,cAAc;QACnBC,KAAK,EAAEC,MAAM,CAACC,iBAAkB;QAChCC,SAAS,EAAE,CACVF,MAAM,CAACG,sBAAsB,EAC7B;UAAEC,QAAQ,EAAE,EAAE;UAAEC,KAAK,EAAE,IAAI,CAACX,KAAK,CAACY;QAAmB,CAAC;MACrD,CACF,CAAC;IAEJ;IACA,OAAO,IAAI;EACZ;EAEAC,MAAMA,CAAA,EAAG;IACR,oBACC5B,KAAA,CAAAiB,aAAA,CAACd,gBAAgB;MAChBiB,KAAK,EAAE,CACNC,MAAM,CAACQ,SAAS,EAChB,IAAI,CAACd,KAAK,CAACe,IAAI,IAAI;QAAEC,YAAY,EAAE;MAAE,CAAC,EACtC,IAAI,CAAChB,KAAK,CAACK,KAAK,CACf;MACFY,OAAO,EAAE,IAAI,CAACjB,KAAK,CAACiB,OAAQ;MAC5BC,aAAa,EAAE;IAAI,GAElB,IAAI,CAACpB,UAAU,CAAC,CAAC,eAClBb,KAAA,CAAAiB,aAAA,CAACb,IAAI;MAACgB,KAAK,EAAE,CAACC,MAAM,CAACa,IAAI,EAAE,IAAI,CAACnB,KAAK,CAACoB,SAAS;IAAE,GAC/C,IAAI,CAACpB,KAAK,CAACmB,IACP,CACW,CAAC;EAErB;AACD;AAEA,MAAMb,MAAM,GAAG;EACdQ,SAAS,EAAE;IACVO,aAAa,EAAE,KAAK;IACpBL,YAAY,EAAE,EAAE;IAChBM,SAAS,EAAE,EAAE;IACbC,KAAK,EAAE,MAAM;IACbC,QAAQ,EAAE;EACX,CAAC;EACDL,IAAI,EAAE;IACLM,UAAU,EAAE,WAAW;IACvBf,QAAQ,EAAE,EAAE;IACZgB,UAAU,EAAE,EAAE;IACdf,KAAK,EAAEnB,SAAS;IAChBmC,eAAe,EAAE;EAClB,CAAC;EACDpB,iBAAiB,EAAE;IAClBqB,WAAW,EAAE,CAAC;IACdL,KAAK,EAAE,EAAE;IACTM,SAAS,EAAE;EACZ,CAAC;EACDpB,sBAAsB,EAAE;IACvBC,QAAQ,EAAE,EAAE;IACZgB,UAAU,EAAE,EAAE;IACdI,SAAS,EAAE;EACZ;AACD,CAAC;AAED,MAAMC,eAAe,GAAIC,KAAK,IAAK;EAClC,OAAO;IACNpB,kBAAkB,EAAEnB,8BAA8B,CAACuC,KAAK;EACzD,CAAC;AACF,CAAC;AAED,MAAMC,YAAY,GAAG1C,OAAO,CAACwC,eAAe,EAAE,CAAC,CAAC,CAAC,CAACrC,YAAY,CAAC;AAC/D,SAASuC,YAAY,IAAIvC,YAAY","ignoreList":[]}
@@ -1,8 +1,8 @@
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 } from 'react-native';
4
+ import React, { Component } from "react";
5
+ import { View } from "react-native";
6
6
  class DropDownMenu extends Component {
7
7
  constructor(...args) {
8
8
  super(...args);
@@ -20,7 +20,7 @@ class DropDownMenu extends Component {
20
20
  const styles = {
21
21
  container: {
22
22
  borderRadius: 2,
23
- shadowColor: '#000',
23
+ shadowColor: "#000",
24
24
  shadowOffset: {
25
25
  width: 0,
26
26
  height: 2
@@ -29,10 +29,10 @@ const styles = {
29
29
  shadowRadius: 4,
30
30
  elevation: 4,
31
31
  zIndex: 10,
32
- backgroundColor: '#fff',
32
+ backgroundColor: "#fff",
33
33
  padding: 16,
34
34
  paddingVertical: 14,
35
- position: 'absolute',
35
+ position: "absolute",
36
36
  right: 0,
37
37
  top: 0
38
38
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","View","DropDownMenu","constructor","args","_defineProperty","render","props","visible","createElement","style","styles","container","children","borderRadius","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","zIndex","backgroundColor","padding","paddingVertical","position","right","top"],"sources":["DropDownMenu.js"],"sourcesContent":["import React, { Component } from 'react';\nimport { View } from 'react-native';\n\nclass DropDownMenu extends Component {\n state = {};\n\n render() {\n if (!this.props.visible) {\n return null;\n }\n return <View style={[styles.container, this.props.style]}>{this.props.children}</View>;\n }\n}\n\nconst styles = {\n container: {\n borderRadius: 2,\n shadowColor: '#000',\n shadowOffset: {\n width: 0,\n height: 2,\n },\n shadowOpacity: 0.2,\n shadowRadius: 4,\n elevation: 4,\n zIndex: 10,\n backgroundColor: '#fff',\n padding: 16,\n paddingVertical: 14,\n\n position: 'absolute',\n right: 0,\n top: 0,\n },\n};\n\nexport { DropDownMenu };\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,SAASC,IAAI,QAAQ,cAAc;AAEnC,MAAMC,YAAY,SAASF,SAAS,CAAC;EAAAG,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,gBAC3B,CAAC,CAAC;EAAA;EAEVC,MAAMA,CAAA,EAAG;IACP,IAAI,CAAC,IAAI,CAACC,KAAK,CAACC,OAAO,EAAE;MACvB,OAAO,IAAI;IACb;IACA,oBAAOT,KAAA,CAAAU,aAAA,CAACR,IAAI;MAACS,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAE,IAAI,CAACL,KAAK,CAACG,KAAK;IAAE,GAAE,IAAI,CAACH,KAAK,CAACM,QAAe,CAAC;EACxF;AACF;AAEA,MAAMF,MAAM,GAAG;EACbC,SAAS,EAAE;IACTE,YAAY,EAAE,CAAC;IACfC,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MACZC,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE;IACV,CAAC;IACDC,aAAa,EAAE,GAAG;IAClBC,YAAY,EAAE,CAAC;IACfC,SAAS,EAAE,CAAC;IACZC,MAAM,EAAE,EAAE;IACVC,eAAe,EAAE,MAAM;IACvBC,OAAO,EAAE,EAAE;IACXC,eAAe,EAAE,EAAE;IAEnBC,QAAQ,EAAE,UAAU;IACpBC,KAAK,EAAE,CAAC;IACRC,GAAG,EAAE;EACP;AACF,CAAC;AAED,SAAS1B,YAAY","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","View","DropDownMenu","constructor","args","_defineProperty","render","props","visible","createElement","style","styles","container","children","borderRadius","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","zIndex","backgroundColor","padding","paddingVertical","position","right","top"],"sources":["DropDownMenu.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { View } from \"react-native\";\n\nclass DropDownMenu extends Component {\n\tstate = {};\n\n\trender() {\n\t\tif (!this.props.visible) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<View style={[styles.container, this.props.style]}>\n\t\t\t\t{this.props.children}\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tcontainer: {\n\t\tborderRadius: 2,\n\t\tshadowColor: \"#000\",\n\t\tshadowOffset: {\n\t\t\twidth: 0,\n\t\t\theight: 2,\n\t\t},\n\t\tshadowOpacity: 0.2,\n\t\tshadowRadius: 4,\n\t\televation: 4,\n\t\tzIndex: 10,\n\t\tbackgroundColor: \"#fff\",\n\t\tpadding: 16,\n\t\tpaddingVertical: 14,\n\n\t\tposition: \"absolute\",\n\t\tright: 0,\n\t\ttop: 0,\n\t},\n};\n\nexport { DropDownMenu };\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,SAASC,IAAI,QAAQ,cAAc;AAEnC,MAAMC,YAAY,SAASF,SAAS,CAAC;EAAAG,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,gBAC5B,CAAC,CAAC;EAAA;EAEVC,MAAMA,CAAA,EAAG;IACR,IAAI,CAAC,IAAI,CAACC,KAAK,CAACC,OAAO,EAAE;MACxB,OAAO,IAAI;IACZ;IACA,oBACCT,KAAA,CAAAU,aAAA,CAACR,IAAI;MAACS,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAE,IAAI,CAACL,KAAK,CAACG,KAAK;IAAE,GAChD,IAAI,CAACH,KAAK,CAACM,QACP,CAAC;EAET;AACD;AAEA,MAAMF,MAAM,GAAG;EACdC,SAAS,EAAE;IACVE,YAAY,EAAE,CAAC;IACfC,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MACbC,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE;IACT,CAAC;IACDC,aAAa,EAAE,GAAG;IAClBC,YAAY,EAAE,CAAC;IACfC,SAAS,EAAE,CAAC;IACZC,MAAM,EAAE,EAAE;IACVC,eAAe,EAAE,MAAM;IACvBC,OAAO,EAAE,EAAE;IACXC,eAAe,EAAE,EAAE;IAEnBC,QAAQ,EAAE,UAAU;IACpBC,KAAK,EAAE,CAAC;IACRC,GAAG,EAAE;EACN;AACD,CAAC;AAED,SAAS1B,YAAY","ignoreList":[]}
@@ -1,7 +1,8 @@
1
- import React, { PureComponent } from 'react';
2
- import { Text, View, ScrollView, StyleSheet } from 'react-native';
3
- import _ from 'lodash';
4
- import { TEXT_BLUEGREY } from '../colours';
1
+ import React, { PureComponent } from "react";
2
+ import { View, ScrollView, StyleSheet } from "react-native";
3
+ import { Text } from "./Text";
4
+ import _ from "lodash";
5
+ import { TEXT_BLUEGREY } from "../colours";
5
6
  class EmptyStateMain extends PureComponent {
6
7
  renderPlaceHolder(index, opacity = 1) {
7
8
  const barCount = _.isUndefined(this.props.barCount) ? 3 : this.props.barCount;
@@ -19,7 +20,7 @@ class EmptyStateMain extends PureComponent {
19
20
  style: [styles.container, this.props.style]
20
21
  }, !this.props.hideTitle && /*#__PURE__*/React.createElement(Text, {
21
22
  style: styles.titleText
22
- }, this.props.title || 'Nothing to see here'), this.props.content, /*#__PURE__*/React.createElement(ScrollView, {
23
+ }, this.props.title || "Nothing to see here"), this.props.content, /*#__PURE__*/React.createElement(ScrollView, {
23
24
  style: styles.itemContainer
24
25
  }, this.renderPlaceHolder(0, 0.8), this.renderPlaceHolder(1, 0.6), this.renderPlaceHolder(2, 0.4)));
25
26
  }
@@ -30,19 +31,19 @@ const styles = StyleSheet.create({
30
31
  paddingVertical: 5
31
32
  },
32
33
  titleText: {
33
- fontFamily: 'qs-bold',
34
+ fontFamily: "qs-bold",
34
35
  fontSize: 16,
35
36
  color: TEXT_BLUEGREY
36
37
  },
37
38
  itemContainer: {
38
39
  marginTop: 20,
39
- flexDirection: 'column'
40
+ flexDirection: "column"
40
41
  },
41
42
  item: {
42
43
  borderRadius: 4,
43
- width: '100%',
44
+ width: "100%",
44
45
  height: 32,
45
- backgroundColor: '#e6ebef',
46
+ backgroundColor: "#e6ebef",
46
47
  marginBottom: 17
47
48
  }
48
49
  });
@@ -1 +1 @@
1
- {"version":3,"names":["React","PureComponent","Text","View","ScrollView","StyleSheet","_","TEXT_BLUEGREY","EmptyStateMain","renderPlaceHolder","index","opacity","barCount","isUndefined","props","createElement","style","styles","item","render","container","hideTitle","titleText","title","content","itemContainer","create","borderRadius","paddingVertical","fontFamily","fontSize","color","marginTop","flexDirection","width","height","backgroundColor","marginBottom"],"sources":["EmptyStateMain.js"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport { Text, View, ScrollView, StyleSheet } from 'react-native';\nimport _ from 'lodash';\nimport { TEXT_BLUEGREY } from '../colours';\n\nclass EmptyStateMain extends PureComponent {\n renderPlaceHolder(index, opacity = 1) {\n const barCount = _.isUndefined(this.props.barCount) ? 3 : this.props.barCount;\n if (barCount <= index) {\n return null;\n }\n return <View style={[styles.item, { opacity }]} />;\n }\n\n render() {\n return (\n <View style={[styles.container, this.props.style]}>\n {!this.props.hideTitle && <Text style={styles.titleText}>{this.props.title || 'Nothing to see here'}</Text>}\n {this.props.content}\n <ScrollView style={styles.itemContainer}>\n {this.renderPlaceHolder(0, 0.8)}\n {this.renderPlaceHolder(1, 0.6)}\n {this.renderPlaceHolder(2, 0.4)}\n </ScrollView>\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 5,\n paddingVertical: 5,\n },\n titleText: {\n fontFamily: 'qs-bold',\n fontSize: 16,\n color: TEXT_BLUEGREY,\n },\n itemContainer: {\n marginTop: 20,\n flexDirection: 'column',\n },\n item: {\n borderRadius: 4,\n width: '100%',\n height: 32,\n backgroundColor: '#e6ebef',\n marginBottom: 17,\n },\n});\n\nexport default EmptyStateMain;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,IAAI,EAAEC,IAAI,EAAEC,UAAU,EAAEC,UAAU,QAAQ,cAAc;AACjE,OAAOC,CAAC,MAAM,QAAQ;AACtB,SAASC,aAAa,QAAQ,YAAY;AAE1C,MAAMC,cAAc,SAASP,aAAa,CAAC;EACzCQ,iBAAiBA,CAACC,KAAK,EAAEC,OAAO,GAAG,CAAC,EAAE;IACpC,MAAMC,QAAQ,GAAGN,CAAC,CAACO,WAAW,CAAC,IAAI,CAACC,KAAK,CAACF,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAACE,KAAK,CAACF,QAAQ;IAC7E,IAAIA,QAAQ,IAAIF,KAAK,EAAE;MACrB,OAAO,IAAI;IACb;IACA,oBAAOV,KAAA,CAAAe,aAAA,CAACZ,IAAI;MAACa,KAAK,EAAE,CAACC,MAAM,CAACC,IAAI,EAAE;QAAEP;MAAQ,CAAC;IAAE,CAAE,CAAC;EACpD;EAEAQ,MAAMA,CAAA,EAAG;IACP,oBACEnB,KAAA,CAAAe,aAAA,CAACZ,IAAI;MAACa,KAAK,EAAE,CAACC,MAAM,CAACG,SAAS,EAAE,IAAI,CAACN,KAAK,CAACE,KAAK;IAAE,GAC/C,CAAC,IAAI,CAACF,KAAK,CAACO,SAAS,iBAAIrB,KAAA,CAAAe,aAAA,CAACb,IAAI;MAACc,KAAK,EAAEC,MAAM,CAACK;IAAU,GAAE,IAAI,CAACR,KAAK,CAACS,KAAK,IAAI,qBAA4B,CAAC,EAC1G,IAAI,CAACT,KAAK,CAACU,OAAO,eACnBxB,KAAA,CAAAe,aAAA,CAACX,UAAU;MAACY,KAAK,EAAEC,MAAM,CAACQ;IAAc,GACrC,IAAI,CAAChB,iBAAiB,CAAC,CAAC,EAAE,GAAG,CAAC,EAC9B,IAAI,CAACA,iBAAiB,CAAC,CAAC,EAAE,GAAG,CAAC,EAC9B,IAAI,CAACA,iBAAiB,CAAC,CAAC,EAAE,GAAG,CACpB,CACR,CAAC;EAEX;AACF;AAEA,MAAMQ,MAAM,GAAGZ,UAAU,CAACqB,MAAM,CAAC;EAC/BN,SAAS,EAAE;IACTO,YAAY,EAAE,CAAC;IACfC,eAAe,EAAE;EACnB,CAAC;EACDN,SAAS,EAAE;IACTO,UAAU,EAAE,SAAS;IACrBC,QAAQ,EAAE,EAAE;IACZC,KAAK,EAAExB;EACT,CAAC;EACDkB,aAAa,EAAE;IACbO,SAAS,EAAE,EAAE;IACbC,aAAa,EAAE;EACjB,CAAC;EACDf,IAAI,EAAE;IACJS,YAAY,EAAE,CAAC;IACfO,KAAK,EAAE,MAAM;IACbC,MAAM,EAAE,EAAE;IACVC,eAAe,EAAE,SAAS;IAC1BC,YAAY,EAAE;EAChB;AACF,CAAC,CAAC;AAEF,eAAe7B,cAAc","ignoreList":[]}
1
+ {"version":3,"names":["React","PureComponent","View","ScrollView","StyleSheet","Text","_","TEXT_BLUEGREY","EmptyStateMain","renderPlaceHolder","index","opacity","barCount","isUndefined","props","createElement","style","styles","item","render","container","hideTitle","titleText","title","content","itemContainer","create","borderRadius","paddingVertical","fontFamily","fontSize","color","marginTop","flexDirection","width","height","backgroundColor","marginBottom"],"sources":["EmptyStateMain.js"],"sourcesContent":["import React, { PureComponent } from \"react\";\nimport { View, ScrollView, StyleSheet } from \"react-native\";\nimport { Text } from \"./Text\";\nimport _ from \"lodash\";\nimport { TEXT_BLUEGREY } from \"../colours\";\n\nclass EmptyStateMain extends PureComponent {\n\trenderPlaceHolder(index, opacity = 1) {\n\t\tconst barCount = _.isUndefined(this.props.barCount)\n\t\t\t? 3\n\t\t\t: this.props.barCount;\n\t\tif (barCount <= index) {\n\t\t\treturn null;\n\t\t}\n\t\treturn <View style={[styles.item, { opacity }]} />;\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<View style={[styles.container, this.props.style]}>\n\t\t\t\t{!this.props.hideTitle && (\n\t\t\t\t\t<Text style={styles.titleText}>\n\t\t\t\t\t\t{this.props.title || \"Nothing to see here\"}\n\t\t\t\t\t</Text>\n\t\t\t\t)}\n\t\t\t\t{this.props.content}\n\t\t\t\t<ScrollView style={styles.itemContainer}>\n\t\t\t\t\t{this.renderPlaceHolder(0, 0.8)}\n\t\t\t\t\t{this.renderPlaceHolder(1, 0.6)}\n\t\t\t\t\t{this.renderPlaceHolder(2, 0.4)}\n\t\t\t\t</ScrollView>\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nconst styles = StyleSheet.create({\n\tcontainer: {\n\t\tborderRadius: 5,\n\t\tpaddingVertical: 5,\n\t},\n\ttitleText: {\n\t\tfontFamily: \"qs-bold\",\n\t\tfontSize: 16,\n\t\tcolor: TEXT_BLUEGREY,\n\t},\n\titemContainer: {\n\t\tmarginTop: 20,\n\t\tflexDirection: \"column\",\n\t},\n\titem: {\n\t\tborderRadius: 4,\n\t\twidth: \"100%\",\n\t\theight: 32,\n\t\tbackgroundColor: \"#e6ebef\",\n\t\tmarginBottom: 17,\n\t},\n});\n\nexport default EmptyStateMain;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,IAAI,EAAEC,UAAU,EAAEC,UAAU,QAAQ,cAAc;AAC3D,SAASC,IAAI,QAAQ,QAAQ;AAC7B,OAAOC,CAAC,MAAM,QAAQ;AACtB,SAASC,aAAa,QAAQ,YAAY;AAE1C,MAAMC,cAAc,SAASP,aAAa,CAAC;EAC1CQ,iBAAiBA,CAACC,KAAK,EAAEC,OAAO,GAAG,CAAC,EAAE;IACrC,MAAMC,QAAQ,GAAGN,CAAC,CAACO,WAAW,CAAC,IAAI,CAACC,KAAK,CAACF,QAAQ,CAAC,GAChD,CAAC,GACD,IAAI,CAACE,KAAK,CAACF,QAAQ;IACtB,IAAIA,QAAQ,IAAIF,KAAK,EAAE;MACtB,OAAO,IAAI;IACZ;IACA,oBAAOV,KAAA,CAAAe,aAAA,CAACb,IAAI;MAACc,KAAK,EAAE,CAACC,MAAM,CAACC,IAAI,EAAE;QAAEP;MAAQ,CAAC;IAAE,CAAE,CAAC;EACnD;EAEAQ,MAAMA,CAAA,EAAG;IACR,oBACCnB,KAAA,CAAAe,aAAA,CAACb,IAAI;MAACc,KAAK,EAAE,CAACC,MAAM,CAACG,SAAS,EAAE,IAAI,CAACN,KAAK,CAACE,KAAK;IAAE,GAChD,CAAC,IAAI,CAACF,KAAK,CAACO,SAAS,iBACrBrB,KAAA,CAAAe,aAAA,CAACV,IAAI;MAACW,KAAK,EAAEC,MAAM,CAACK;IAAU,GAC5B,IAAI,CAACR,KAAK,CAACS,KAAK,IAAI,qBAChB,CACN,EACA,IAAI,CAACT,KAAK,CAACU,OAAO,eACnBxB,KAAA,CAAAe,aAAA,CAACZ,UAAU;MAACa,KAAK,EAAEC,MAAM,CAACQ;IAAc,GACtC,IAAI,CAAChB,iBAAiB,CAAC,CAAC,EAAE,GAAG,CAAC,EAC9B,IAAI,CAACA,iBAAiB,CAAC,CAAC,EAAE,GAAG,CAAC,EAC9B,IAAI,CAACA,iBAAiB,CAAC,CAAC,EAAE,GAAG,CACnB,CACP,CAAC;EAET;AACD;AAEA,MAAMQ,MAAM,GAAGb,UAAU,CAACsB,MAAM,CAAC;EAChCN,SAAS,EAAE;IACVO,YAAY,EAAE,CAAC;IACfC,eAAe,EAAE;EAClB,CAAC;EACDN,SAAS,EAAE;IACVO,UAAU,EAAE,SAAS;IACrBC,QAAQ,EAAE,EAAE;IACZC,KAAK,EAAExB;EACR,CAAC;EACDkB,aAAa,EAAE;IACdO,SAAS,EAAE,EAAE;IACbC,aAAa,EAAE;EAChB,CAAC;EACDf,IAAI,EAAE;IACLS,YAAY,EAAE,CAAC;IACfO,KAAK,EAAE,MAAM;IACbC,MAAM,EAAE,EAAE;IACVC,eAAe,EAAE,SAAS;IAC1BC,YAAY,EAAE;EACf;AACD,CAAC,CAAC;AAEF,eAAe7B,cAAc","ignoreList":[]}
@@ -1,6 +1,7 @@
1
- import React, { PureComponent } from 'react';
2
- import { Text, View, ScrollView, StyleSheet } from 'react-native';
3
- import { TEXT_BLUEGREY } from '../colours';
1
+ import React, { PureComponent } from "react";
2
+ import { View, ScrollView, StyleSheet } from "react-native";
3
+ import { Text } from "./Text";
4
+ import { TEXT_BLUEGREY } from "../colours";
4
5
  class EmptyStateWidget extends PureComponent {
5
6
  renderPlaceHolder(opacity = 1) {
6
7
  return /*#__PURE__*/React.createElement(View, {
@@ -16,7 +17,7 @@ class EmptyStateWidget extends PureComponent {
16
17
  }, this.props.style]
17
18
  }, /*#__PURE__*/React.createElement(Text, {
18
19
  style: styles.titleText
19
- }, this.props.title || 'Nothing to see here'), /*#__PURE__*/React.createElement(ScrollView, {
20
+ }, this.props.title || "Nothing to see here"), /*#__PURE__*/React.createElement(ScrollView, {
20
21
  horizontal: true,
21
22
  style: styles.itemContainer
22
23
  }, this.renderPlaceHolder(0.8), this.renderPlaceHolder(0.6), this.renderPlaceHolder(0.4), this.renderPlaceHolder(0.2)));
@@ -28,7 +29,7 @@ const styles = StyleSheet.create({
28
29
  paddingVertical: 5
29
30
  },
30
31
  titleText: {
31
- fontFamily: 'qs-bold',
32
+ fontFamily: "qs-bold",
32
33
  fontSize: 16,
33
34
  color: TEXT_BLUEGREY
34
35
  },
@@ -39,7 +40,7 @@ const styles = StyleSheet.create({
39
40
  borderRadius: 4,
40
41
  width: 97,
41
42
  height: 98,
42
- backgroundColor: '#e6ebef',
43
+ backgroundColor: "#e6ebef",
43
44
  marginRight: 17
44
45
  }
45
46
  });
@@ -1 +1 @@
1
- {"version":3,"names":["React","PureComponent","Text","View","ScrollView","StyleSheet","TEXT_BLUEGREY","EmptyStateWidget","renderPlaceHolder","opacity","createElement","style","styles","item","render","container","props","height","titleText","title","horizontal","itemContainer","create","borderRadius","paddingVertical","fontFamily","fontSize","color","marginTop","width","backgroundColor","marginRight"],"sources":["EmptyStateWidget.js"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport { Text, View, ScrollView, StyleSheet } from 'react-native';\nimport { TEXT_BLUEGREY } from '../colours';\n\nclass EmptyStateWidget extends PureComponent {\n renderPlaceHolder(opacity = 1) {\n return <View style={[styles.item, { opacity }]} />;\n }\n\n render() {\n return (\n <View style={[styles.container, this.props.height && { height: this.props.height }, this.props.style]}>\n <Text style={styles.titleText}>{this.props.title || 'Nothing to see here'}</Text>\n <ScrollView horizontal style={styles.itemContainer}>\n {this.renderPlaceHolder(0.8)}\n {this.renderPlaceHolder(0.6)}\n {this.renderPlaceHolder(0.4)}\n {this.renderPlaceHolder(0.2)}\n </ScrollView>\n </View>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 5,\n paddingVertical: 5,\n },\n titleText: {\n fontFamily: 'qs-bold',\n fontSize: 16,\n color: TEXT_BLUEGREY,\n },\n itemContainer: {\n marginTop: 20,\n },\n item: {\n borderRadius: 4,\n width: 97,\n height: 98,\n backgroundColor: '#e6ebef',\n marginRight: 17,\n },\n});\n\nexport default EmptyStateWidget;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,IAAI,EAAEC,IAAI,EAAEC,UAAU,EAAEC,UAAU,QAAQ,cAAc;AACjE,SAASC,aAAa,QAAQ,YAAY;AAE1C,MAAMC,gBAAgB,SAASN,aAAa,CAAC;EAC3CO,iBAAiBA,CAACC,OAAO,GAAG,CAAC,EAAE;IAC7B,oBAAOT,KAAA,CAAAU,aAAA,CAACP,IAAI;MAACQ,KAAK,EAAE,CAACC,MAAM,CAACC,IAAI,EAAE;QAAEJ;MAAQ,CAAC;IAAE,CAAE,CAAC;EACpD;EAEAK,MAAMA,CAAA,EAAG;IACP,oBACEd,KAAA,CAAAU,aAAA,CAACP,IAAI;MAACQ,KAAK,EAAE,CAACC,MAAM,CAACG,SAAS,EAAE,IAAI,CAACC,KAAK,CAACC,MAAM,IAAI;QAAEA,MAAM,EAAE,IAAI,CAACD,KAAK,CAACC;MAAO,CAAC,EAAE,IAAI,CAACD,KAAK,CAACL,KAAK;IAAE,gBACpGX,KAAA,CAAAU,aAAA,CAACR,IAAI;MAACS,KAAK,EAAEC,MAAM,CAACM;IAAU,GAAE,IAAI,CAACF,KAAK,CAACG,KAAK,IAAI,qBAA4B,CAAC,eACjFnB,KAAA,CAAAU,aAAA,CAACN,UAAU;MAACgB,UAAU;MAACT,KAAK,EAAEC,MAAM,CAACS;IAAc,GAChD,IAAI,CAACb,iBAAiB,CAAC,GAAG,CAAC,EAC3B,IAAI,CAACA,iBAAiB,CAAC,GAAG,CAAC,EAC3B,IAAI,CAACA,iBAAiB,CAAC,GAAG,CAAC,EAC3B,IAAI,CAACA,iBAAiB,CAAC,GAAG,CACjB,CACR,CAAC;EAEX;AACF;AAEA,MAAMI,MAAM,GAAGP,UAAU,CAACiB,MAAM,CAAC;EAC/BP,SAAS,EAAE;IACTQ,YAAY,EAAE,CAAC;IACfC,eAAe,EAAE;EACnB,CAAC;EACDN,SAAS,EAAE;IACTO,UAAU,EAAE,SAAS;IACrBC,QAAQ,EAAE,EAAE;IACZC,KAAK,EAAErB;EACT,CAAC;EACDe,aAAa,EAAE;IACbO,SAAS,EAAE;EACb,CAAC;EACDf,IAAI,EAAE;IACJU,YAAY,EAAE,CAAC;IACfM,KAAK,EAAE,EAAE;IACTZ,MAAM,EAAE,EAAE;IACVa,eAAe,EAAE,SAAS;IAC1BC,WAAW,EAAE;EACf;AACF,CAAC,CAAC;AAEF,eAAexB,gBAAgB","ignoreList":[]}
1
+ {"version":3,"names":["React","PureComponent","View","ScrollView","StyleSheet","Text","TEXT_BLUEGREY","EmptyStateWidget","renderPlaceHolder","opacity","createElement","style","styles","item","render","container","props","height","titleText","title","horizontal","itemContainer","create","borderRadius","paddingVertical","fontFamily","fontSize","color","marginTop","width","backgroundColor","marginRight"],"sources":["EmptyStateWidget.js"],"sourcesContent":["import React, { PureComponent } from \"react\";\nimport { View, ScrollView, StyleSheet } from \"react-native\";\nimport { Text } from \"./Text\";\nimport { TEXT_BLUEGREY } from \"../colours\";\n\nclass EmptyStateWidget extends PureComponent {\n\trenderPlaceHolder(opacity = 1) {\n\t\treturn <View style={[styles.item, { opacity }]} />;\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={[\n\t\t\t\t\tstyles.container,\n\t\t\t\t\tthis.props.height && { height: this.props.height },\n\t\t\t\t\tthis.props.style,\n\t\t\t\t]}\n\t\t\t>\n\t\t\t\t<Text style={styles.titleText}>\n\t\t\t\t\t{this.props.title || \"Nothing to see here\"}\n\t\t\t\t</Text>\n\t\t\t\t<ScrollView horizontal style={styles.itemContainer}>\n\t\t\t\t\t{this.renderPlaceHolder(0.8)}\n\t\t\t\t\t{this.renderPlaceHolder(0.6)}\n\t\t\t\t\t{this.renderPlaceHolder(0.4)}\n\t\t\t\t\t{this.renderPlaceHolder(0.2)}\n\t\t\t\t</ScrollView>\n\t\t\t</View>\n\t\t);\n\t}\n}\n\nconst styles = StyleSheet.create({\n\tcontainer: {\n\t\tborderRadius: 5,\n\t\tpaddingVertical: 5,\n\t},\n\ttitleText: {\n\t\tfontFamily: \"qs-bold\",\n\t\tfontSize: 16,\n\t\tcolor: TEXT_BLUEGREY,\n\t},\n\titemContainer: {\n\t\tmarginTop: 20,\n\t},\n\titem: {\n\t\tborderRadius: 4,\n\t\twidth: 97,\n\t\theight: 98,\n\t\tbackgroundColor: \"#e6ebef\",\n\t\tmarginRight: 17,\n\t},\n});\n\nexport default EmptyStateWidget;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,IAAI,EAAEC,UAAU,EAAEC,UAAU,QAAQ,cAAc;AAC3D,SAASC,IAAI,QAAQ,QAAQ;AAC7B,SAASC,aAAa,QAAQ,YAAY;AAE1C,MAAMC,gBAAgB,SAASN,aAAa,CAAC;EAC5CO,iBAAiBA,CAACC,OAAO,GAAG,CAAC,EAAE;IAC9B,oBAAOT,KAAA,CAAAU,aAAA,CAACR,IAAI;MAACS,KAAK,EAAE,CAACC,MAAM,CAACC,IAAI,EAAE;QAAEJ;MAAQ,CAAC;IAAE,CAAE,CAAC;EACnD;EAEAK,MAAMA,CAAA,EAAG;IACR,oBACCd,KAAA,CAAAU,aAAA,CAACR,IAAI;MACJS,KAAK,EAAE,CACNC,MAAM,CAACG,SAAS,EAChB,IAAI,CAACC,KAAK,CAACC,MAAM,IAAI;QAAEA,MAAM,EAAE,IAAI,CAACD,KAAK,CAACC;MAAO,CAAC,EAClD,IAAI,CAACD,KAAK,CAACL,KAAK;IACf,gBAEFX,KAAA,CAAAU,aAAA,CAACL,IAAI;MAACM,KAAK,EAAEC,MAAM,CAACM;IAAU,GAC5B,IAAI,CAACF,KAAK,CAACG,KAAK,IAAI,qBAChB,CAAC,eACPnB,KAAA,CAAAU,aAAA,CAACP,UAAU;MAACiB,UAAU;MAACT,KAAK,EAAEC,MAAM,CAACS;IAAc,GACjD,IAAI,CAACb,iBAAiB,CAAC,GAAG,CAAC,EAC3B,IAAI,CAACA,iBAAiB,CAAC,GAAG,CAAC,EAC3B,IAAI,CAACA,iBAAiB,CAAC,GAAG,CAAC,EAC3B,IAAI,CAACA,iBAAiB,CAAC,GAAG,CAChB,CACP,CAAC;EAET;AACD;AAEA,MAAMI,MAAM,GAAGR,UAAU,CAACkB,MAAM,CAAC;EAChCP,SAAS,EAAE;IACVQ,YAAY,EAAE,CAAC;IACfC,eAAe,EAAE;EAClB,CAAC;EACDN,SAAS,EAAE;IACVO,UAAU,EAAE,SAAS;IACrBC,QAAQ,EAAE,EAAE;IACZC,KAAK,EAAErB;EACR,CAAC;EACDe,aAAa,EAAE;IACdO,SAAS,EAAE;EACZ,CAAC;EACDf,IAAI,EAAE;IACLU,YAAY,EAAE,CAAC;IACfM,KAAK,EAAE,EAAE;IACTZ,MAAM,EAAE,EAAE;IACVa,eAAe,EAAE,SAAS;IAC1BC,WAAW,EAAE;EACd;AACD,CAAC,CAAC;AAEF,eAAexB,gBAAgB","ignoreList":[]}
@@ -1,6 +1,7 @@
1
- import React, { PureComponent } from 'react';
2
- import { TouchableOpacity, Text } from 'react-native';
3
- import { TEXT_DARK } from '../colours';
1
+ import React, { PureComponent } from "react";
2
+ import { TouchableOpacity } from "react-native";
3
+ import { Text } from "./Text";
4
+ import { TEXT_DARK } from "../colours";
4
5
 
5
6
  /*
6
7
  Props-
@@ -24,7 +25,7 @@ const styles = {
24
25
  padding: 15
25
26
  },
26
27
  text: {
27
- fontFamily: 'sf-medium',
28
+ fontFamily: "sf-medium",
28
29
  color: TEXT_DARK,
29
30
  fontSize: 14
30
31
  },
@@ -1 +1 @@
1
- {"version":3,"names":["React","PureComponent","TouchableOpacity","Text","TEXT_DARK","FontScaleButton","render","createElement","style","styles","container","props","onPress","text","largeText","padding","fontFamily","color","fontSize"],"sources":["FontScaleButton.js"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport { TouchableOpacity, Text } from 'react-native';\nimport { TEXT_DARK } from '../colours';\n\n/* \nProps- \n style - custom style for container\n*/\n\nclass FontScaleButton extends PureComponent {\n render() {\n return (\n <TouchableOpacity style={[styles.container, this.props.style]} onPress={this.props.onPress}>\n <Text style={styles.text}>\n <Text>A</Text>\n <Text>{` `}</Text>\n <Text style={styles.largeText}>A</Text>\n </Text>\n </TouchableOpacity>\n );\n }\n}\n\nconst styles = {\n container: {\n padding: 15,\n },\n text: {\n fontFamily: 'sf-medium',\n color: TEXT_DARK,\n fontSize: 14,\n },\n largeText: {\n fontSize: 24,\n },\n};\n\nexport { FontScaleButton };\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,gBAAgB,EAAEC,IAAI,QAAQ,cAAc;AACrD,SAASC,SAAS,QAAQ,YAAY;;AAEtC;AACA;AACA;AACA;;AAEA,MAAMC,eAAe,SAASJ,aAAa,CAAC;EAC1CK,MAAMA,CAAA,EAAG;IACP,oBACEN,KAAA,CAAAO,aAAA,CAACL,gBAAgB;MAACM,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAE,IAAI,CAACC,KAAK,CAACH,KAAK,CAAE;MAACI,OAAO,EAAE,IAAI,CAACD,KAAK,CAACC;IAAQ,gBACzFZ,KAAA,CAAAO,aAAA,CAACJ,IAAI;MAACK,KAAK,EAAEC,MAAM,CAACI;IAAK,gBACvBb,KAAA,CAAAO,aAAA,CAACJ,IAAI,QAAC,GAAO,CAAC,eACdH,KAAA,CAAAO,aAAA,CAACJ,IAAI,QAAE,GAAU,CAAC,eAClBH,KAAA,CAAAO,aAAA,CAACJ,IAAI;MAACK,KAAK,EAAEC,MAAM,CAACK;IAAU,GAAC,GAAO,CAClC,CACU,CAAC;EAEvB;AACF;AAEA,MAAML,MAAM,GAAG;EACbC,SAAS,EAAE;IACTK,OAAO,EAAE;EACX,CAAC;EACDF,IAAI,EAAE;IACJG,UAAU,EAAE,WAAW;IACvBC,KAAK,EAAEb,SAAS;IAChBc,QAAQ,EAAE;EACZ,CAAC;EACDJ,SAAS,EAAE;IACTI,QAAQ,EAAE;EACZ;AACF,CAAC;AAED,SAASb,eAAe","ignoreList":[]}
1
+ {"version":3,"names":["React","PureComponent","TouchableOpacity","Text","TEXT_DARK","FontScaleButton","render","createElement","style","styles","container","props","onPress","text","largeText","padding","fontFamily","color","fontSize"],"sources":["FontScaleButton.js"],"sourcesContent":["import React, { PureComponent } from \"react\";\nimport { TouchableOpacity } from \"react-native\";\nimport { Text } from \"./Text\";\nimport { TEXT_DARK } from \"../colours\";\n\n/* \nProps- \n style - custom style for container\n*/\n\nclass FontScaleButton extends PureComponent {\n\trender() {\n\t\treturn (\n\t\t\t<TouchableOpacity\n\t\t\t\tstyle={[styles.container, this.props.style]}\n\t\t\t\tonPress={this.props.onPress}\n\t\t\t>\n\t\t\t\t<Text style={styles.text}>\n\t\t\t\t\t<Text>A</Text>\n\t\t\t\t\t<Text>{` `}</Text>\n\t\t\t\t\t<Text style={styles.largeText}>A</Text>\n\t\t\t\t</Text>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tcontainer: {\n\t\tpadding: 15,\n\t},\n\ttext: {\n\t\tfontFamily: \"sf-medium\",\n\t\tcolor: TEXT_DARK,\n\t\tfontSize: 14,\n\t},\n\tlargeText: {\n\t\tfontSize: 24,\n\t},\n};\n\nexport { FontScaleButton };\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SAASC,gBAAgB,QAAQ,cAAc;AAC/C,SAASC,IAAI,QAAQ,QAAQ;AAC7B,SAASC,SAAS,QAAQ,YAAY;;AAEtC;AACA;AACA;AACA;;AAEA,MAAMC,eAAe,SAASJ,aAAa,CAAC;EAC3CK,MAAMA,CAAA,EAAG;IACR,oBACCN,KAAA,CAAAO,aAAA,CAACL,gBAAgB;MAChBM,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAE,IAAI,CAACC,KAAK,CAACH,KAAK,CAAE;MAC5CI,OAAO,EAAE,IAAI,CAACD,KAAK,CAACC;IAAQ,gBAE5BZ,KAAA,CAAAO,aAAA,CAACJ,IAAI;MAACK,KAAK,EAAEC,MAAM,CAACI;IAAK,gBACxBb,KAAA,CAAAO,aAAA,CAACJ,IAAI,QAAC,GAAO,CAAC,eACdH,KAAA,CAAAO,aAAA,CAACJ,IAAI,QAAE,GAAU,CAAC,eAClBH,KAAA,CAAAO,aAAA,CAACJ,IAAI;MAACK,KAAK,EAAEC,MAAM,CAACK;IAAU,GAAC,GAAO,CACjC,CACW,CAAC;EAErB;AACD;AAEA,MAAML,MAAM,GAAG;EACdC,SAAS,EAAE;IACVK,OAAO,EAAE;EACV,CAAC;EACDF,IAAI,EAAE;IACLG,UAAU,EAAE,WAAW;IACvBC,KAAK,EAAEb,SAAS;IAChBc,QAAQ,EAAE;EACX,CAAC;EACDJ,SAAS,EAAE;IACVI,QAAQ,EAAE;EACX;AACD,CAAC;AAED,SAASb,eAAe","ignoreList":[]}
@@ -1,6 +1,7 @@
1
- import React, { PureComponent } from 'react';
2
- import { TouchableOpacity, Text, View } from 'react-native';
3
- import { TEXT_DARK, LINEGREY } from '../colours';
1
+ import React, { PureComponent } from "react";
2
+ import { TouchableOpacity, View } from "react-native";
3
+ import { Text } from "./Text";
4
+ import { TEXT_DARK, LINEGREY } from "../colours";
4
5
 
5
6
  /*
6
7
  Props-
@@ -33,9 +34,9 @@ class FontScalePopup extends PureComponent {
33
34
  }
34
35
  const styles = {
35
36
  container: {
36
- flexDirection: 'row',
37
+ flexDirection: "row",
37
38
  borderRadius: 2,
38
- shadowColor: '#000',
39
+ shadowColor: "#000",
39
40
  shadowOffset: {
40
41
  width: 0,
41
42
  height: 2
@@ -44,15 +45,15 @@ const styles = {
44
45
  shadowRadius: 4,
45
46
  elevation: 4,
46
47
  zIndex: 10,
47
- backgroundColor: '#fff',
48
+ backgroundColor: "#fff",
48
49
  padding: 2
49
50
  },
50
51
  button: {
51
52
  height: 50,
52
53
  width: 64,
53
54
  borderColor: LINEGREY,
54
- alignItems: 'center',
55
- justifyContent: 'center'
55
+ alignItems: "center",
56
+ justifyContent: "center"
56
57
  },
57
58
  buttonLeft: {
58
59
  borderRightWidth: 1
@@ -61,12 +62,12 @@ const styles = {
61
62
  borderLeftWidth: 1
62
63
  },
63
64
  smallText: {
64
- fontFamily: 'sf-medium',
65
+ fontFamily: "sf-medium",
65
66
  color: TEXT_DARK,
66
67
  fontSize: 16
67
68
  },
68
69
  largeText: {
69
- fontFamily: 'sf-medium',
70
+ fontFamily: "sf-medium",
70
71
  color: TEXT_DARK,
71
72
  fontSize: 24
72
73
  }