Commit Graph

4199 Commits

Author SHA1 Message Date
Johannes Klein
da4df14827 v0.53.1+123 v0.53.1+123 2024-11-08 16:10:32 +01:00
Johannes Klein
bb9261cfb0 v0.53.1 2024-11-08 16:04:58 +01:00
Ken-ichi
2d1f98ef3a New Crowdin Translations (#2395)
* New Crowdin translations by GitHub Action

* Increase timeout

---------

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: Johannes Klein <johannes.t.klein@gmail.com>
2024-11-08 12:59:06 +01:00
Angie
baa16e4c79 Add loading indicator to fav button to prevent unnecessary api requests (#2393)
* Add loading indicator to fav button to prevent unnecessary api requests

* Don't show loading indicator if error
2024-11-07 21:02:46 -08:00
Amanda Bullington
6c0f5ec485 Upgrade MediaViewer image zoom component (#2392)
* Replace image zoom library with a newer, simpler library

* Fix tests for MediaViewer

* Code cleanup
2024-11-07 17:32:17 -08:00
Amanda Bullington
9e5f538494 Fix lagginess when tapping on Notifications in bottom tabs (#2391)
* Create performance tracking hook to see how long Notifications takes to load

* Move cache clearing to app start, out of MyObservations

* Remove isFocused hook from useLocalObservations

* Code cleanup

* Logging string cleanup

* Fix: bottom tabs are tappable when user scrolls past the top on iOS
2024-11-07 15:01:19 -08:00
Ken-ichi
64d07fad35 fix: only show onboarding once per install (#2390)
* refactor: give the install MMKV instance a more accurate name
* refactor: rename install data wrapper, verbify function names
2024-11-07 14:25:25 -08:00
Ken-ichi Ueda
dcac62c36a refactor: warn ppl not to edit l10n files; remove other comments from l10n files 2024-11-07 10:20:36 -08:00
Angie
9e6b97fcac adds max font size scaling to usertext (#2384) 2024-11-07 10:11:48 -08:00
Ken-ichi
e1f7b38565 fix: prevent maps from showing user location by default (#2383)
This was causing location to be fetched even in situations where there was no
need, like ObsDetails and TaxonDetails, which was a bit creepy. This requires
us to explicitly turn it on, which I've done for Explore and the
LocationPicker.

Closes #2260
2024-11-07 09:28:56 -08:00
Ken-ichi
d02c918616 fix: only cover online settings w/ spinner while saving (#2382)
Closes #2184
2024-11-07 09:28:33 -08:00
israr002
9f69f1cc55 fix: active tab doesn't change when swiping back from notifications (#2286)
* update active tab logic based on current route

* add null check for getCurrentRoute to handle edge cases

* update active tab only when current route changes to mapped tab

* Refactor to use const from a central point

---------

Co-authored-by: Johannes Klein <johannes.t.klein@gmail.com>
2024-11-07 13:18:33 +01:00
Amanda Bullington
f61c68a3e2 Reset queue before adding new observations to upload queue (#2385)
* Clear upload state when user lands on ObsEdit; closes #2083

* Fix test which was displaying buggy upload number
2024-11-06 22:33:31 -08:00
budowski
3e3c33f138 fix: update profile pic immediately after changing it (#2366)
Closes #2036

Co-authored-by: Ken-ichi Ueda <kenichi.ueda@gmail.com>
2024-11-06 17:24:57 -08:00
Ken-ichi
2084e55d74 fix: scroll to activity item once (#2381)
* fix: prevent re-scrolling to activity item when returning to ObsEdit (closes #2232)
* fix: make entire activity item is visible when scrolling does happen (closes #2233)
* feat: scroll to newly-created comment or ID (closes #2231)

Plus some minor refactoring for clarity.
2024-11-06 17:04:21 -08:00
Amanda Bullington
29f0812594 Show discard sheet if any observations saved/uploaded in multi-obs flow (#2380)
* Show discard observation sheet if any multi-obs are saved or uploaded

* Add some tests for navigation flows from GroupPhotos > ObsEdit > back
2024-11-06 15:26:16 -08:00
Amanda Bullington
f4dae74fe8 Animate AddObsModal with fade in/out; closes #2350 (#2372) 2024-11-06 15:26:03 -08:00
Ken-ichi Ueda
ceb8710358 test: run integration tests before unit tests 2024-11-06 14:19:42 -08:00
Ken-ichi
3def5183aa test: wait for OTHER SUGGESTIONS in aicamera test (#2375)
* test: wait for OTHER SUGGESTIONS in aicamera test in an attempt to deflake
* test: try a longer timeout in aicamera test, try launching app again if it fails
2024-11-06 11:48:56 -08:00
Amanda Bullington
167dd3d6e9 Let sciname wrap onto two lines when displayed first; closes #2087 (#2371) 2024-11-06 11:20:25 -08:00
Amanda Bullington
0916da7787 Remove @ symbol from usernames (#2339)
* Remove @ symbol from user handle

* Remove @ symbol from e2e test

---------

Co-authored-by: Ken-ichi Ueda <kenichi.ueda@gmail.com>
2024-11-06 10:03:09 -08:00
Ken-ichi
7e3ab47371 New Crowdin translations by GitHub Action (#2376)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-11-06 11:34:49 +01:00
Ken-ichi Ueda
a2c92abafd fix: remove brand and trademarks from translation 2024-11-05 13:58:39 -08:00
Angie
f8aeb429a7 Support large font sizes in webviews (#2336)
Add large font size scaling in webviews, particularly from the About screen.

Closes #2137, but there's probably more we could address in other issues,
particularly on Settings.
2024-11-05 13:32:08 -08:00
israr002
1796a37fb2 Allow user to remove existing note (#2370)
closes #2273
2024-11-05 12:43:15 -08:00
Ken-ichi
2b5afbcb98 New Crowdin translations by GitHub Action (#2363)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-11-05 12:03:56 +01:00
Ken-ichi
bb23758c40 fix: update several i18n strings (#2359)
* Add specific keys for determiners as pronouns
* Adjust permission gate text
* Remove a duplicative key
* Remove jargon like 'modal' from accessibility hints
* Make x-of-y style phrases easier to pluralize
* Update staff list
* Dehyphenate (de-hyphenate?) real time, break up long sentence
2024-11-04 22:39:01 -08:00
Amanda Bullington
8e19112a20 Add default empty project icon & project header (#2351)
* Update project header and project icon when content is empty

* Fix tests
2024-11-04 17:06:03 -08:00
Ken-ichi
2d96e63a05 New Crowdin translations by GitHub Action (#2354)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-11-05 00:58:59 +01:00
budowski
7b8c88c84d feat: add onboarding carousel (#2285)
Note that offsetting the onboarding images ended up being a bit hard. We're
mostly doing so with a cropped version of one of the images.

Closes #1906

Also tried to de-flake some tests:

* Use fake timers when possible
* Ensure time travel helper doesn't un-fake our timers
* Wait for time travel helper to finish so changes don't happen outside of
  act
* Stop mocking useCurrentUser in integration tests; that's app code and should
  not be mocked when integrating all parts of the app; instead use signIn /
  signOut helpers
* Remove unnecessary direct uses of act()
* Mocked some inatjs calls to prevent React Query complaints about undefined
  query return values
* Close onboarding before all e2e tests

---------

Co-authored-by: Ken-ichi Ueda <kenichi.ueda@gmail.com>
2024-11-04 12:03:55 -08:00
Amanda Bullington
a4d2c7ca24 Restore language chooser and queue offline locale changes (#2329)
Restore language chooser with system locale (signed out users), web locale (signed in users), or app locale (as selected by user)
2024-11-03 20:12:06 -08:00
Johannes Klein
6aa01fceb5 Remove extra space in string 2024-11-03 22:13:05 +01:00
Johannes Klein
ff64751dba Show confirmation sheets for Join and leave actions in projects details (#2333)
* Add strings

* Show a bottom sheet to join

* Add bottom sheet for leaving project

* Add string

* About project text TS

* Fix wrong type

* Show explanation text for traditional project

* Get count of observations of the current user in the project

* Move constants one up

* Remove extra space

* Remove parens, more descriptive key

* Disable join and leave buttons while loading

* Use configured API and not hardcoded to production.
2024-11-03 21:09:28 +01:00
Johannes Klein
10ee29d4c0 Patch vision-camera to not include branding in exif (#2337) 2024-11-03 09:34:57 +01:00
Ken-ichi Ueda
beeca68123 v0.53.0+122 v0.53.0+122 2024-11-01 15:14:58 -07:00
Ken-ichi Ueda
1f8328f57a v0.53.0 2024-11-01 15:13:09 -07:00
Ken-ichi Ueda
7c52a0996a fix: make taxon icon border white on AICamera 2024-11-01 15:11:59 -07:00
Ken-ichi
3dcc833c98 feat: support basic layout, typography, and photo carousel in RTL (#2334)
* Use a wrapper around Text for all typography components that sets
  app-specific defaults, allowing default RTL to work
* feat: make iOS permission prompt text translatable
* fix: allow RTL layout of char limit on text input bottom sheet
* fix: allow RTL photo carousel on ObsDetails and TaxonDetails

Removes react-native-reanimated-carousel, which needs to be patched to support
RTL and maybe wasn't providing anything beyond FlatList for us anyway.

InfoPlist.xcstrings will not be automatically updated on Crowdin sync pending
a Crowdin bug.

Work toward #2099
2024-11-01 12:59:25 -07:00
Ken-ichi
c7598af477 New Crowdin translations by GitHub Action (#2304)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-11-01 12:01:18 -07:00
Johannes Klein
5c8e3be12c test AI camera in e2e (#2188)
* Add a cameraZoomRange default
* Small detox version bump
* Add a mocked camera with a take photo button
* An e2e mock for the computer vision plugin predicting a frame
* Mock taking a photo by loading the first photo from the CameraRoll

Closes #1981
2024-11-01 10:38:37 -07:00
Angie
49bfb78d1b limit button width to 500px (#2335)
* Limit button width to 500px.
Closes #2170.

* Update snapshots
2024-10-31 18:16:38 -07:00
israr002
97bd907d71 Fix for showing flagged comments (#2309) 2024-10-31 17:34:01 -07:00
Ken-ichi Ueda
ed2b10a04f feat: minor text updates 2024-10-31 12:34:37 -07:00
Ken-ichi Ueda
9ddd1baee5 Revert "Fix #1613 - when marking notification as read, use that in useInfiniteNotificationsScroll (#2198)"
This reverts commit 9e27f872d0.

This casued Notifications to reload almost every time you returned to it from
an observation, making it really hard to tap the next notification.
2024-10-31 11:58:38 -07:00
Angie
0cdccddf02 Prevents text in explore species and observation grid view from flowing off grid in large font sizes. (#2330)
* Prevents text in explore species and observation grid view from flowing off grid in large font sizes.
Includes several UI fixes for Explore in large font sizes. Closes #2257.

* Updated snapshots and fixed failing test
2024-10-31 11:46:31 -07:00
Johannes Klein
bbe403e2a5 Optional computer vision speedup using a taxonomy cutoff threshold (#2328)
* Refactor SliderControl into own file, migrate to TS

* Update vision plugin to customize a taxonomy rollup cutoff threshold

A number of 0.01 means all nodes with a cv score lower than that are excluded from calculating the top predictions. Thereby saving resourced on computing those.

* Enable setting of threshold via debug menu

The threshold defaults to 0.0, i.e. no nodes are filtered out, because score is always positive.

* Update vision plugin

* More appropriate range of values
2024-10-31 17:55:35 +01:00
Johannes Klein
8edbd060d5 Fixes several minor UI issues in projects details (#2327)
* Change heading font size on project details

* Add View in browser button to project details

* Show join/leave button on all project types

* Switch to map when pressing the view in explore map section

* Add link role
2024-10-30 13:04:21 +01:00
Ken-ichi
a76645276e refactor: restore ObsGridItem and ObsListItem UI demos (#2324)
Pulls store interaction up a few levels in the hierarchy to make demos and
tests of upload-related components simpler.
2024-10-29 09:38:57 -07:00
Ken-ichi
b3638460ef fix: prevent multiple obs details from opening (#2311)
Debouncing by relying on the nav path continued to allow multiple ObsDetails
instances to get pushed onto the stack b/c the nav path changed before a
subsequent tap was handled. This ensures that only one ObsDetails instance is
allowed per list per obs.

Closes #2204
Closes #2216

---------

Co-authored-by: israr002 <israr002khan@gmail.com>
Co-authored-by: israr002 <66955016+israr002@users.noreply.github.com>
2024-10-28 15:53:52 -07:00
Amanda Bullington
d1421efd5b Show date ranges instead of project type on collection/umbrella projects (#2312) 2024-10-28 13:59:59 -07:00