Commit Graph

4199 Commits

Author SHA1 Message Date
Ken-ichi
69959869ca feat: offline taxon search (#2469)
Searches the local database for taxa if there are no online results.

Also

* typescript conversions
* refactor and consolidate view logic around taxon search

Closes #2348
2024-11-21 14:44:48 -08:00
Ken-ichi
6bc0d0098c fix: update user language on server after changing in app (#2467)
Main fix was updating inaturalistjs to get a recent bug fix. Also submits a
JSON body instead of a pseudo-formdata-style body.

Also:

* Only try to process queued items that have not failed in the last minute
* Delete queued items after failing 3 times
* Fix index.js error handler bug that was squelching errors that weren't
  getting caught by the ErrorBoundary
2024-11-21 13:21:29 -08:00
Amanda Bullington
836876f90d Start uploads directly from multi-observation ObsEdit; show upload progress bar and status text (#2471)
* Build out UI for multiple obs upload status and progress bar

* Show expected number of uploads/uploading in ObsEdit and MyObs progress bars

* Add test for upload progress

* Add tests

* Fix test

* Mock useUploadObservations to fix test

* Maybe fix tests in the cloud

* Reset unsynced number only if realm is still open
2024-11-21 13:14:40 -08:00
Ken-ichi
dbee50c6d6 New Crowdin translations by GitHub Action (#2460)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-11-21 22:06:26 +01:00
Johannes Klein
290b2d9185 Update cv plugin (#2472)
Technically this means we could now support geomodel on iOS. We need additional work though to add the model to the app and connect to the frame processor.
2024-11-21 22:03:37 +01:00
Angie
2545c97383 2413 reduce duration of fade to 250ms (#2470)
* Reduce fade duration to 250ms

* Reduce fade duration of add obs button
2024-11-20 21:08:32 -08:00
Amanda Bullington
51a88a5bf6 Ensure location is saved to photos when adding evidence (#2466) 2024-11-20 12:15:23 -08:00
Johannes Klein
d0b188f108 Use stable computer vision plugin (#2464)
* Use stable plugin branch

* Update Podfile.lock

* Revert "Update Podfile.lock"

This reverts commit 192c09c06d.
2024-11-20 20:15:18 +01:00
Johannes Klein
f8e37409c3 Make projects visible in drawer, observation details and on user profiles (#2463)
* Show projects in drawer

* Show projects section on UserProfile

* Show ObsDetail project section

* Update tests
2024-11-20 20:15:01 +01:00
Johannes Klein
71d1cd3f3b Exchange help link (#2462) 2024-11-20 20:14:37 +01:00
budowski
79345c821f Show location picker with expected zoom for imported photos 2024-11-20 10:31:49 -08:00
Johannes Klein
1823ae0d2f Some smaller layout changes on ObsEdit; plus fix for evidence list not scrolling to side of screens (#2452)
* Change text to size 2

* Change text size for date to Body2

* Change text size for other data to Body2

* Adjust tappable height for other data

* Adjust tappable height for date picker

* DatePicker TS

* Change padding of location section

* Push pixels to center icons with first line of text

* Fix a UI issue with evidence list not scrolling to the sides of the screen

* Align all icons at same vertical axis

* Apply margin to evidence list and iconic taxon list
2024-11-20 08:28:00 +01:00
Amanda Bullington
970c686933 Camera refactor to potentially address lagginess (#2457)
* Add usePerformance load time to cameras and suggestions

* Declare when to hide delete photo mode without a useEffect

* Use StatusBar hidden component in CameraContainer, instead of useEffects

* Directly handle discards from bottom sheet instead of using useEffect

* Rewrite a whole bunch of camera code to be more declarative and less imperative

* Make sure permissions gate works as expected

* Code cleanup

* Consolidate focus/blur listeners in AICamera

* Fix timing issues in Suggestions tests

* Fix tests

* Ensure photos are still saving to gallery when write permission given & update saving photo state
2024-11-19 18:14:44 -08:00
Ken-ichi Ueda
251082084a fix: prevent full path in loadTranslations from failing eslint 2024-11-19 17:44:06 -08:00
Ken-ichi
8ec32ae116 fix: skip container to allow Ruby setup in crowdin-pull action (#2461)
Container was needed to prevent permissions errors after Crowdin action adds
files as root, but that interfered with Ruby setup. This just uses chown to
do the same thing.
2024-11-19 17:43:53 -08:00
joergmlpts
22534acd69 fix: stop infinite re-rendering in Explore map view on Android (#2438)
Closes #2432
2024-11-19 17:21:29 -08:00
israr002
c11681f6e0 fix: limit text scaling in PhotoCount (#2235)
Limit text scaling in PhotoCount so it doesn't overflow at large font sizes.

Closes #2131
2024-11-19 16:54:43 -08:00
Ken-ichi Ueda
d259fc238e refactor: fixed minor Fastfile bugs; added Slack notice for prod lane 2024-11-18 21:27:37 -08:00
Ken-ichi
e1bc1626d9 chore: lint Ruby files with Rubocop (#2435)
* fix: set up Ruby before linting in Github Actions
* chore: separate linting from fixing

Before we commit we want to fix as much as possible, but when we're checking a
pull request we're not going to commit anything so we want to know about all
the problems, including the fixable ones.
2024-11-18 21:27:20 -08:00
Ken-ichi Ueda
e461cce32b v0.54.1+126 v0.54.1+126 2024-11-18 20:12:45 -08:00
Ken-ichi Ueda
e69a6d380a v0.54.1 2024-11-18 20:11:21 -08:00
Ken-ichi Ueda
650ec55beb fix: enable location search and nearby button from filters modal 2024-11-18 16:49:09 -08:00
Johannes Klein
9aef4db8bb Internationalize app store metadata (#2341)
* Add Fastlate app store metadata files as Crowdin translation sources
* Update i18ncli.js to move and rename translations so Fastlane can use them
* Update `fastlane prod` so it prompts for public release notes and cues a new
  release in the App Store that still requires the manual attachment of a
  build
* Add `fastlane android upload_metadata` to upload metadata to Play Store

Closes #2248

---------

Co-authored-by: Ken-ichi <kenichi.ueda@gmail.com>
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-11-18 16:02:53 -08:00
Ken-ichi
660d164c05 New Crowdin translations by GitHub Action (#2437)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-11-18 13:52:19 +01:00
Ken-ichi Ueda
b260d263c8 v0.54.0+125 v0.54.0+125 2024-11-15 16:06:49 -08:00
Ken-ichi Ueda
be9c25163b v0.54.0 2024-11-15 16:02:13 -08:00
Ken-ichi Ueda
0c664edab9 fix: show TaxonDetail w/o crash for offline vision suggestion w/ no local taxon 2024-11-15 15:52:27 -08:00
Ken-ichi Ueda
6305ca9023 refactor: improve debug suggestion score visibility 2024-11-15 13:15:59 -08:00
Ken-ichi Ueda
a095ac7c40 chore: build 124
I manually made a build which uploaded a build 124 to the Testflight, so this
gets the repo in sync with that.
2024-11-15 10:55:15 -08:00
israr002
a246fd3fb1 feat: change color of Explore view switcher (#2421)
closes #2154
2024-11-15 10:23:56 -08:00
Angie
04271bef07 Prevent activityheader text and withdraw button from being cut off in smaller screens (#2431)
Also includes adjustments to explore at large font sizes. Closes #2315.
2024-11-15 10:09:37 -08:00
Angie
79d5a3427d Keep saved but not uploaded audio recordings when clearing cache (#2424)
* Keep saved but not uploaded audio recordings when clearing cache

* Change interface property name
2024-11-14 15:48:02 -08:00
Ken-ichi
81a29facdd New Crowdin translations by GitHub Action (#2400)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-11-13 18:28:45 -08:00
Amanda Bullington
4b7c89db18 Prevent flatlist scroll from reset (#2425)
ting on selection with useMemo
2024-11-13 17:54:13 -08:00
Amanda Bullington
c6a09a2a8c Refactor to begin simplifying device orientation/rotation code (#2422)
* Refactor useDeviceOrientation to remove extra useEffects

* Rotation code cleanup

* Update mock with useDeviceOrientationChange
2024-11-13 16:24:08 -08:00
Ken-ichi Ueda
f55f7795a0 refactor: notify Slack when Crowdin pull action fails 2024-11-13 16:00:24 -08:00
Tobias Schönberg
dc703638c0 Validate date formats in FTL files (#2419)
Closes #2394
2024-11-13 15:49:59 -08:00
Ken-ichi
4283785c91 fix: explore nearby after permission granted in Settings (#2423)
* fix: filter by nearby when NEARBY button pressed again after granting
  permission in Settings
* fix: recheck permissions when PermissionGate foregrounded

Previously we were only doing the foreground check for Android (#1206), but
iOS had the same problem when the user needed to leave the app to change
permissions in Settings.

Closes #2318
2024-11-13 15:44:23 -08:00
Ken-ichi
44f90e205c fix: edit location without location permission (#2418)
* fix: show LocationPicker on location tap when permission denied
* fix: zoom LocationPicker out all the way if no pre-existing coordinates
* fix: stop showing sound recorder when microphone permission denied
* fix: ask for permission on clicking the current location button on LocationPicker

Closes #2319
2024-11-13 09:53:52 -08:00
Tobias Schönberg
5aea4d90a9 feat: link to profile from MyObs header (#2389)
Closes #2342
2024-11-13 09:45:02 -08:00
Amanda Bullington
69b1921119 Fetch observation after upload with authentication to show correct localization (#2420)
* Make sure API calls have options to fetch correct lexicons; separate capitalization logic for each lexicon

* Fix Explore nav test

* Use auth token to fetch observation after upload; simplify upserting in obs infinite scroll

* Fix useSyncObservations test
2024-11-12 19:46:14 -08:00
Amanda Bullington
39fa3a9edb Handle capitalization for multiple lexicons (#2416)
* Make sure API calls have options to fetch correct lexicons; separate capitalization logic for each lexicon

* Fix Explore nav test
2024-11-12 18:18:14 -08:00
Ken-ichi Ueda
459bb644ce fix: remove brand-related iOS Info.plist values from translation with shouldTranslate 2024-11-12 12:05:48 -08:00
Ken-ichi
a02c7eb411 Clean out unused logging (#2417)
Closes #2155
2024-11-11 16:09:17 -08:00
Ken-ichi
b5ed9d0475 feat: show obs on TaxonDetails map (#2399)
* reduce prop surface area for map-related components
* map just receives an observation, not a bunch of its properties
* adjust a lot of logic based on observation.obscured to more specific logic
  based on whether the current user can view the coordinates
* hide the map on ObsDetails if there are no coordinates
* show the spec'd explanation for why coordinates are obscured
* remove a prop that just hides a component if true; that should really be up
  to the outer context
* fixed a bug on ObsDetail where the remote obs wasn't getting mapped to
  Realm-ish attributes
* prevent button mashing from opening multiple TaxonDetails
* clean out the state related obs create / edit after exiting that flow so
  that TaxonDetails (or anyone else trying to detect an obs being edited)
  doesn't end up finding it when the user has finished creating / editing.

Closes #2271
2024-11-11 14:20:14 -08:00
israr002
ade944d4b5 Add expand map button on ObsDetails (#2401)
Closes #2346
2024-11-11 11:39:47 -08:00
Ken-ichi Ueda
9bd33b4176 test: mock installData helper 2024-11-11 10:34:37 -08:00
Tobias Schönberg
5cd5a40f06 Fix resetting character count in feedback form (#2308)
Closes #2307
2024-11-11 09:28:20 -08:00
Ken-ichi
b2160d1cec New Crowdin translations by GitHub Action (#2398)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-11-09 18:13:36 +01:00
Amanda Bullington
6b391fbb9b Restore queued upload animation & disable press on queued observations (#2397)
* Disable row when upload is queued

* Show UploadQueuedRotatingIcon if obs is in queue with no progress

* Refactoring to make list rendering a little faster

* Fix UploadStatus test

* Fix tests

* Remove outdated snapshot
2024-11-08 15:16:21 -08:00