Commit Graph

2225 Commits

Author SHA1 Message Date
Ken-ichi
736eba5a52 feat: add labels to tab buttons (#2611)
* feat: add text labels to bottom tabs
* fix: treat icon and text as single pressable for screen readers in bottom tabs
* feat: float AddObs button outside of bottom tab bar

Closes MOB-254

---------

Co-authored-by: Kirk van Gorkom <55742+kvangork@users.noreply.github.com>
2025-01-21 11:20:48 -08:00
Johannes Klein
47cf9f815a chore: few minor dev dependency updates (#2626)
* Few minor dependency updates

* Bump detox

* Bump nock

* Bump some eslint plugins

* Bump some types
2025-01-20 21:35:37 +01:00
Johannes Klein
c225ea54b6 chore: minor dependency updates (#2625)
* Minor dependency updates

* Update Podfile.lock

* Update @bam.tech/react-native-image-resizer
2025-01-20 14:23:39 +01:00
Amanda Bullington
92c5fa243d Add a navigation guard to make sure a user can't navigate to login while offline (#2624) 2025-01-17 19:34:24 -08:00
Ken-ichi
8121e1452c feat: show simplified MyObservations to logged in users (#2616)
* refactor: convert UserIcon to TypeScript
* feat: show simple MyObs to signed in user; add user icon & login to header
* feat: show warning and edit button for unuploaded obs w/o basics
* refactor: consolidate ObsEdit navigation logic
* feat: show edit button with circle dots
* refactor: upload UploadQueuedRotatingIcon to the more reusable CircleDots
  component
* refactor: upload icons to use more composition and fewer specialized, one-off
  components
* fix: bugs in determining if an obs has date and coords
* refactor: extract MyObservationsSimple business logic into container
* refactor: get total obs count from relevant hooks
* feat: show remote species for signed in users
* fix: hide photo count icon when missing basics icon is present
* feat: show banner alerting user when missing location or date

Closes MOB-318
2025-01-17 17:21:29 -08:00
Amanda Bullington
bbb7b46657 Keep list items (and all content) within the screen width (#2623) 2025-01-17 16:52:15 -08:00
Ken-ichi
96c316a257 feat: show all results in Explore projects search (#2621)
* refactor: convert ExploreProjectSearch to TS and assoc'd TS changes
* feat: use infinite scroll in Explore Filters project search
* feat: show universal search results in Explore project search

This should show the same ranked search results a user would see at
https://www.inaturalist.org/search?source[]=projects

Closes MOB-313
2025-01-17 16:31:07 -08:00
Amanda Bullington
9872a99f47 Fix: Show observation date in ObsEdit date picker (#2620)
* test: run same suite of tests for ObsDetails and its default mode equivalent

* Show observation date when opening date picker
2025-01-17 15:21:40 -08:00
Ken-ichi
fc07e53adc test: run same suite of tests for ObsDetails and its default mode equivalent (#2619)
Closes MOB-333
2025-01-17 12:01:41 -08:00
Johannes Klein
eda2c6a7c7 v0.57.3+135 v0.57.3+135 2025-01-17 12:07:55 +01:00
Johannes Klein
0d97f69974 Bump version 2025-01-17 12:06:45 +01:00
Kirk van Gorkom
60ae8eef9d v0.57.2+134 v0.57.2+134 2025-01-16 20:46:38 -08:00
Kirk van Gorkom
3940de1f17 Bump version number to 0.57.2, only for purposes of making a new build 2025-01-16 20:46:38 -08:00
Amanda Bullington
92f1b304bb feat: select other suggestions in Match screen (#2617)
* Update Match screen with new taxon photos, match header, and add'l suggestions list when suggestion is selected

* Code cleanup

* More defensive object equivalence check
2025-01-16 17:46:44 -08:00
Kirk van Gorkom
9e593c1779 v0.57.1+133 v0.57.1+133 2025-01-16 16:47:06 -08:00
Kirk van Gorkom
7d247e5b09 Bump version to 0.57.1 2025-01-16 16:41:08 -08:00
Ken-ichi
2789390f21 New Crowdin translations by GitHub Action (#2595)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2025-01-16 12:47:28 -08:00
Amanda Bullington
689882726c Update confidence scores to show decimal & update styling of suggestions list (#2615) 2025-01-16 10:48:05 -08:00
Amanda Bullington
4902dcf825 Show match screen after gallery; limit gallery selection to one photo (#2614) 2025-01-15 14:43:29 -08:00
Amanda Bullington
7ebde68646 Prevent swiping back on root screens (#2613) 2025-01-15 13:41:59 -08:00
Amanda Bullington
be40daa448 Hide explore button on TaxonDetails from Match (#2612) 2025-01-15 13:17:57 -08:00
Angie
cf00ef4885 new "by me" and "not by me" buttons for user filters in explore filters (#2596)
* adds "by me" and "not by me" user filter buttons to explore

* remove console log, improve rerenders when excluding current user in species view

* Remove user object from observations in realm, add key prop to ButtonBar, UI fixes

* fixes total results number in species and observation view of explore when NOT BY ME

* bug fix
2025-01-15 00:28:43 -08:00
Amanda Bullington
94ac9f2c05 Add suggestions to match screen (#2609)
* Create useSuggestions hook with all online/offline logic for reuse in Match screen

* Show real online/offline suggestions on Match screen

* Code improvements

* Display top suggestion from useSuggestions, not AICamera
2025-01-14 16:55:41 -08:00
Ken-ichi
5aa16088f5 feat: add a LearnMore screen for use in signup flow (#2610)
Closes MOB-351
2025-01-13 17:57:03 -08:00
Ken-ichi
75d69f8c74 feat: add simplified MyObservations for logged out users with at least 1 obs (#2599)
Simplified version of MyObs for signed out users with more than 1 obs. Currently only in debug mode.

Also:

* refactor: extract TaxonGridItem into a reusable component
* chore: TypeScript cleanup

Closes MOB-317
2025-01-10 19:48:29 -08:00
Ken-ichi
cee9b64188 fix: save or discard the observation from the match screen (#2607)
* fix: save or discard the observation from the match screen
* feat: add Match header and footer to TaxonDetails from Match
* refactor: rename TaxonDetailsHeader prop controlling right element
* feat: show search from TaxonDetails via Match

Closes MOB-353
Closes MOB-358
Closes MOB-359
2025-01-10 16:44:12 -08:00
Amanda Bullington
2d6a6376ec Generate strings for match header based on rank and confidence (#2608) 2025-01-09 20:03:34 -08:00
Amanda Bullington
40a375dd9f Create text style Subheading2 and apply in Match screen (#2605)
* Add Subheading2 component and apply to Match screen

* Add snapshot test for Subheading2

* Add snapshot
2025-01-09 17:10:26 -08:00
Ken-ichi
486f1f6dff fix: change No Location to Add Location on match screen (#2606)
Closes MOB-365
2025-01-09 15:58:37 -08:00
Amanda Bullington
5496cdf732 Add location picker / gate to Match screen (#2604)
* Show location permissions gate / location picker in Match screen

* Show correct place_guess on Match screen
2025-01-09 12:22:49 -08:00
Johannes Klein
f84d09648d chore: rename look up location (#2603)
Renames a function call and fixes a NullPointerException on Android
2025-01-09 16:43:54 +01:00
Amanda Bullington
94002f0f59 Update button text based on ranking (#2602) 2025-01-08 18:12:10 -08:00
Amanda Bullington
d209b5838d Memoize trigger for logging user location fetch started to avoid infinite renders / location fetching issues (#2601) 2025-01-08 15:38:14 -08:00
Amanda Bullington
4652929056 UI for Match Screen after AICamera (#2598)
* Save TaxonPhoto to realm; display taxon on match screen

* Code tweaks

* Add match screen to navigation after AI camera in debug/default mode

* Fix test and refactor

* Fix issue with infinite renders in useLayoutPrefs
2025-01-08 14:28:16 -08:00
Ken-ichi Ueda
0e8732f329 fix: describe how sentinal files work in the README; use correct list intendation 2025-01-08 14:21:45 -08:00
Amanda Bullington
dadc73aa8d Add sentinel file definition to README 2025-01-08 13:52:15 -08:00
Amanda Bullington
5f4404c48a Add description of sentinel files in README (#2600) 2025-01-08 13:37:54 -08:00
Ken-ichi
7ec14e9e78 fix: fill ObsEdit BottomBar with Save button when logged out (#2597)
* chore: TypeScript and style fixes
* fix: fill ObsEdit BottomBar with Save button when logged out
2025-01-08 11:00:07 -08:00
Johannes Klein
feec5567a3 feat: update vision-camera-plugin-inatvision to a version that fully supports the geomodel (#2584)
* Update vision-plugin

* useOfflineSuggestion TS

* Use location for prediction from file

* Remove log

* Use plugin function to lookup location and elevation based on h3 cells

* taxonomyRollupCutoff is now done in the plugin on basis of the tops score for a frame

* Fix wrong commit reference. Now references main branch

* Fix has location check to account for 0.0 locations

* Only prop in lat and long

* Add explanation

* Fix: Import vision-plugin function from wrapper file

* Add jest mock for new plugin function
2025-01-08 16:15:36 +01:00
joergmlpts
f68d3cc252 fix: stop resetting map zoom level on every pinch in Android and more (#2594)
* stop resetting map zoom level on every pinch in Android;  state for the region needed to be introduced and updated after each gesture (closes #2529)
* zoom to current location when current location button and current location is not currently in the viewable map area; a callback needed to be called explicitly after animateToRegion() (closes #2555)
* zoom and pan the map when a place search result is chosen in Android; a state for the region needed to be introduced and a callback needed to be called explicitly after animateToRegion() (closes #2593)
2025-01-07 12:04:17 -08:00
Johannes Klein
b8464d0a9b Remove log statement (#2588) 2025-01-07 10:36:30 -08:00
Ken-ichi Ueda
f1d9607bf2 fix: make context label more descriptive 2025-01-03 15:47:59 -05:00
Ken-ichi Ueda
454e361b48 test: find elements with localized text in LanguageSetting test
Hard-coding text values is especially brittle when testing localized
interfaces, where text values might change with every new set of
translations.
2025-01-03 13:41:50 -05:00
Ken-ichi
c12270739b New Crowdin translations by GitHub Action (#2550)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2025-01-01 21:47:29 -05:00
Ken-ichi Ueda
a73f54bb38 test: fix test that won't pass for the first 40 days of the year 2025-01-01 17:50:51 -05:00
Amanda Bullington
1c59f89a14 Add functionality for advanced iNaturalist mode (#2591)
* Add functionality for advanced iNaturalist mode

* Fix language settings test by toggling advanced mode on

* Fix e2e tests by adding advanced user toggle

* Fix more tests in Settings with advanced toggle
2024-12-26 21:35:27 -08:00
Ken-ichi
31ce8994d9 feat: add interface mode preference to Settings (#2583)
* feat: add interface mode preference to Settings

* Refactor existing layout preferences so they are all persisted
* Made a new namespace within the layout slice so that all values there will
  get persisted without having to add stuff to the persistence code AND we
  avoid namespace collisions
* Wrapped layout slice getters and setters in a hook to provide descriptive
  names without modifying the underlying values

* Remove duplicate testID that was causing e2e to fail

---------

Co-authored-by: Amanda Bullington <albullington@gmail.com>
2024-12-26 15:11:09 -08:00
Ken-ichi
768bea744c refactor: mark Github releases as pre-releases w/ Fastlane (#2574) 2024-12-19 12:41:40 -05:00
Ken-ichi
ebba764906 feat: sign in with Google (#2579)
Closes #2515
2024-12-19 12:24:16 -05:00
Amanda Bullington
1d340eb558 Feat: redesigned ObsDetails screen in debug mode (#2580)
* Create ObsDetailsDefaultMode and rearrange items on top of screen

* Move activity, details, and more into three different sections instead of tabs

* Styling cleanup; change Activity name to Community

* Fix scroll to activity item from Notifications

* Add ObsDetailsDefaultMode unit tests

* Show kebab menu on other users' observations
2024-12-18 19:24:24 -08:00