Commit Graph

4199 Commits

Author SHA1 Message Date
Angie Ta
68d50468de Merge remote-tracking branch 'origin/main' into obs-detail 2023-05-25 19:17:06 -07:00
Amanda Bullington
de233d32d2 Add autofocus prop to TextInputSheet (#646) 2023-05-25 17:47:40 -07:00
Amanda Bullington
cc78f06b04 Add activity indicator to fetch location (#639)
* Add activity indicator to fetch location

* Add e2e location mock (#643)

Adds a mock for fetchUserLocation intended to be used with e2e tests. `MOCK_MODE=e2e` must be in the ENV for this to work.

---------

Co-authored-by: Ken-ichi Ueda <kenichi.ueda@gmail.com>

---------

Co-authored-by: Johannes Klein <johannes.t.klein@gmail.com>
Co-authored-by: Ken-ichi Ueda <kenichi.ueda@gmail.com>
2023-05-25 17:13:31 -07:00
Amanda Bullington
5d1644bde3 Simply code to have a single way of updating observation properties; closes #640 (#645) 2023-05-25 17:13:06 -07:00
Amanda Bullington
bf4303b98d Show loading button & disabled state after save/upload buttons are pressed; closes #627 (#644) 2023-05-25 15:08:19 -07:00
Chris
c951e95363 587 add offline upload alert (#635)
* Add alert message if offline upload is attempted
* Use isInternetReachable over isConnected

Closes #587
2023-05-25 15:02:52 -07:00
Angie
64808d7191 543 upload status UI is not updating while uploading (#573)
Replaced old rotate animation code to use Reanimated2 library, added cancel animation call
2023-05-25 14:13:05 -07:00
Amanda Bullington
5d9f9e89c3 Show correct group photos state (#642)
* Make sure GroupPhotos resets state of what is displayed; closes #636

* Allow user to return to GroupPhotos from ObsEdit; save grouped state in ObsEditProvider for easy cleanup
2023-05-25 10:48:03 -07:00
Amanda Bullington
d563b5c8b4 Make toolbar text tappable; use WarningSheet for Login bottom sheet; closes #623 and #585 (#638) 2023-05-23 16:13:34 -07:00
Amanda Bullington
1849e59aa3 Only use date/location from exif when importing photo (#637)
* Only use exif date/location from imported photos; don't display date/location if no exif data

* Fetch location for new ObsEdit screen
2023-05-23 14:40:34 -07:00
Amanda Bullington
541b153d2a Create signup, license photos, and signup confirm screens (#633) 2023-05-23 10:05:41 -07:00
Ken-ichi Ueda
772c99a33e Added active opacity to Button; use solid colors for disabled buttons 2023-05-22 16:15:13 -07:00
Ken-ichi Ueda
c5ea889fab Use absolute paths in the Fastfile 2023-05-19 16:30:33 -07:00
Ken-ichi Ueda
c07b7ec2f3 v0.4.0+44 v0.4.0+44 2023-05-19 16:10:09 -07:00
Ken-ichi Ueda
f2aa4fe52b Switch to manually specifying provisioning profiles
I'd rather not do this but I wasn't able to figure out how get Fastlane to
automatically detect both of the provisioning profiles we need, because with
the multiple targets we need to support sharing we now need two provisioning
profiles.
2023-05-19 16:08:31 -07:00
Ken-ichi Ueda
1d55ddd664 v0.4.0+43 v0.4.0+43 2023-05-19 14:07:55 -07:00
Ken-ichi Ueda
5be3dfa422 Reset build number to 42 2023-05-19 14:07:24 -07:00
Ken-ichi Ueda
445f5d0f95 v0.4.0+2 v0.4.0+2 2023-05-19 13:49:45 -07:00
Ken-ichi Ueda
3ca1714220 0.4.0 2023-05-19 13:49:05 -07:00
Ken-ichi
00ae38ddda Standard camera photo delete (#615)
* Ensure layout of the PhotoCarousel photos doesn't change in delete mode
* Stop conflating screen-size layout differences with tablet layout differences
* Bugfix: deleting one photo in the StandardCamera removed all photos
* Animated rotation of rotatable elements on StandardCamera
* Ensure loading status shows while first photo is being taken
* Tried to remove some open handles and shore up some unhappy tests
2023-05-19 13:16:32 -07:00
Amanda Bullington
245f9f1cee Forgot password UI (#614)
* Update UI for forgot password screen

* Update formData; add comment about 404 error from reset password

* Change API_HOST back to using staging / env config

* Hide sheet when nav back to login

* Restore prev version of react-native-mail
2023-05-19 10:54:22 -07:00
Ken-ichi
d336c0e1fe Fix Android camera rotation (#613)
Fixes problem in which the StandardCamera did not render previews in the correct orientation in Android.

* useDeviceOrientation hook in StandardCamera
* Bugfix: useDeviceOrientation was not setting the initial device orientation
  correctly
* Bugfix: deal with idiosyncracies in iOS vs Android orientation values when
  making our own copies of photos
* Convenience scripts for running OS-specific e2e build and test
2023-05-18 15:58:06 -07:00
Angie Ta
57e342bb39 qualityMetrics import 2023-05-18 11:00:24 -07:00
Angie Ta
0126210489 DQA Styling, inital voting/checks functionality 2023-05-18 10:54:30 -07:00
Ken-ichi Ueda
562dec68ba Bugfix: Android MAIN intent filter got conflated with the SEND intent filter 2023-05-17 17:11:56 -07:00
Ken-ichi Ueda
8d2a61d234 Removed extraneous stuff from react-native-share-menu patch 2023-05-17 16:59:08 -07:00
Ken-ichi Ueda
ee38d76801 New eslint rules 2023-05-17 15:21:35 -07:00
Ken-ichi Ueda
21efb5526d Make sure text on Logout shows up over dark bg 2023-05-17 15:21:10 -07:00
Ken-ichi Ueda
588f2df380 Supress warnings from react-native-share-menu, remove debug logging 2023-05-17 14:10:35 -07:00
Amanda Bullington
e82948fc18 Login UI (#611)
* Update login UI to be closer to Figma

* Update login UI with images from Figma

* Only show login form when either input field is tapped on Login screen
2023-05-17 14:01:59 -07:00
Chris
70219cb906 606 - Fix render blocking state change (#609)
Prevents state changes in useLocalObservations from triggering re-renders in blurred consumer components that in turn block renders in focused components. Also memoizes UserText component to prevent unnecessary re-renders.

Closes #606
2023-05-17 13:27:11 -07:00
budowski
58de692298 364 sharing photos to inat (#568)
Allows user to share photos from gallery apps to our app as new observations via react-native-share-menu. Also added patch-package and patched react-native-share-menu for Android prod builds. Patch addresses https://github.com/meedan/react-native-share-menu/issues/216

Closes #364

---------

Co-authored-by: Ken-ichi Ueda <kenichi.ueda@gmail.com>
2023-05-17 13:24:38 -07:00
Ken-ichi Ueda
b51d4c9c08 Updated breakpoint helper and used in MediaViewer 2023-05-16 12:00:01 -07:00
Amanda Bullington
7349916ba1 Remove write permissions > android 10; update read permissions > android 13 (#610) 2023-05-15 15:31:35 -07:00
Amanda Bullington
81be995ad4 Media Viewer with landscape UI (#608)
* Make MediaViewer a navigation screen; support changing landscape/portrait orientations

* Move device orientation into hook

* Minor fixes to styling

* Styling updates based on breakpoints
2023-05-15 13:04:40 -07:00
Ken-ichi Ueda
e025a76817 v0.3.0+42 v0.3.0+42 2023-05-12 09:40:11 -07:00
Ken-ichi Ueda
5274770f9f Bugfix: can't increment_version_number without specifying the xcodeproj 2023-05-12 09:38:39 -07:00
Ken-ichi Ueda
adefb860ed Version bump in package-lock.json 2023-05-12 09:36:41 -07:00
Ken-ichi Ueda
14474f0f71 Version 0.3.0 2023-05-11 18:26:40 -07:00
Ken-ichi Ueda
255a66499f Fixed TabBar top padding 2023-05-11 17:56:07 -07:00
Angie
b7553e852a Obs detail: Details Tab and Activity Tab styling (#605)
* PhotoScroll styling and header styling
* Data Tab renamed to Details Tab, styling to match designs, changed text strings,
* Fixed failing tests for ObservationLocation, dividers added for activity item
* Moved geoprivacy to ObservationLocation, removed console logs
* Moved suggest id and add comment buttons out of activity tab, added stickybar, PhotoScroll buttons, back button
* Show headerbackbutton when no image
* Bugfix: coordinates didn't have enough fractional digits

---------

Co-authored-by: Ken-ichi Ueda <kenichi.ueda@gmail.com>
2023-05-11 16:35:49 -07:00
Ken-ichi Ueda
05aa832171 Bugfix: edit button on ObsDetails wasn't working
For the record, I don't think we should abandon the react-navigation header
here. There's definitely a way to specify a transparent header, we just need
to figure out how to style it correctly.
2023-05-11 11:45:09 -07:00
Ken-ichi Ueda
d3071f59e6 Bugfix: coordinates didn't have enough fractional digits
Specifies the number of digits in the translation text and not in code. ALso
fixed a few minor problems with FTL comments and allowed UserText to format
children as text, not just with a prop.
2023-05-11 11:06:43 -07:00
Johannes Klein
e1a7a4383d 549 filled activity icons (#574)
* Refactor ObsStatus, add filled property

* Remove viewed prop from observation

* Update properties for ObsDetail mark viewed

* Use separate fields for comments and ids for ObsStatus

* Add hook for fetching updates

* Unit tests for the updates hook

* Unit tests for different paths for updating the realm observation when using the hook

* Update MyObservations.test.js

* Add integration test if updates has been called in my observations

* Update Podfile.lock

* Update observation to not viewed if the keys have not been initialized

* Add test case if observation fields are not initialized

* Add test case

* Refetch stale data on coming back from the background

* Subscribe to observation updates also in ObsDetail screen

This also invalidates and refetches the data after a successful mutation of the id or comment being viewed.

* Refetch observation updates data on sync button press

* Throw error in updates query

* Return refetch function from hook

* Add mock to ObsDetails

* Remove unused var

* Update useObservationsUpdates.test.js

* Reset realm viewed state to true ...

for all observations on app mount and coming to the foreground.

* Reorder function calls

* Change hook to use boolean as enabled param

* Create ObsDetails.test.js

* Update date handle tests to make sure Remote data classes have parseable date

* Add test case for comment and identification

* Update ObsDetails.test.js

* Also check for user in ObsDetails

* Refactored into separate hook for App.js

* Unit and integration test for new hook

* Rename const

* Rename field

* Rename field

* Export query key from hook

* Refactor true check

* Additional methods for obs being viewed or not

* Changed test description

* Add per_page to observations updated
2023-05-11 16:33:37 +02:00
Angie Ta
29f3ee2934 Attribution changes 2023-05-10 17:14:27 -07:00
Angie Ta
1d9aa46f4e Changes requested. Mainly i18n related. 2023-05-10 14:00:46 -07:00
Johannes Klein
1450377add Upgrade react-native patch version 2023-05-10 21:10:36 +02:00
Johannes Klein
aea6480816 Upgraded some minor testing related libraries 2023-05-10 19:50:38 +02:00
Johannes Klein
9b064f6e36 Upgraded some minor dependencies 2023-05-10 19:20:59 +02:00
Johannes Klein
11fb7c32d8 Use native zoom drivers for vision-camera (#604)
* Remove zoom related handling by reanimated and gesture handler

* Enable zoom directly from vision camera

* Do not allow pointer events on the animated shutter effect over the camera

* Update package-lock.json

* Update package.json

* Reduce size of StandardCamera button bar on tablets to maximize area that receives pointer events

---------

Co-authored-by: Ken-ichi Ueda <kenichi.ueda@gmail.com>
2023-05-10 10:52:41 +02:00