Commit Graph

2785 Commits

Author SHA1 Message Date
Johannes Klein
49268801d1 Stringify mutations error context 2025-08-28 10:14:32 +02:00
Johannes Klein
d7e0ba3357 Stringify a JWT error crash data 2025-08-28 10:13:37 +02:00
Johannes Klein
7f3a091b8d Stringify native error crash data 2025-08-28 10:12:52 +02:00
budowski
36cd8638e8 MOB-873 - fix - potential disagreement sheet not showing up in certain flows (#3057)
Co-authored-by: Johannes Klein <johannes.t.klein@gmail.com>
2025-08-26 15:02:25 +02:00
budowski
a1967e5697 MOB-886 - handle another type of date formatting returned from the project search API (#3071) 2025-08-26 11:36:41 +02:00
Corey Farwell
455f73a14a Fix error when invoking npm run lint:tsc. (#3073)
Hi! I am checking out the project and noticed there are a bunch of TypeScript errors when I open some of the files I was reading. I ran `tsc` and noticed there's an error with the current TypeScript configuration file:

```
tsconfig.json:7:23 - error TS5063: Substitutions for pattern 'appConstants' should be an array.

7       "appConstants": "src/appConstants",
                        ~~~~~~~~~~~~~~~~~~
```

This change should resolve that error, which will allow the `tsc` linter to be executed from the terminal.
2025-08-26 11:09:17 +02:00
Johannes Klein
031302a4ab Pin to specific realm version
Higher version only supports the New Architecture.
2025-08-25 15:17:30 +02:00
Johannes Klein
7c9b647437 Update react-navigation dependencies (#3070)
* Update package.json

* Update package-lock.json
2025-08-25 15:01:05 +02:00
Johannes Klein
217a284dce Update version numbers (#3069) 2025-08-25 14:52:18 +02:00
Johannes Klein
54cad652cc Update husky (#3068)
* Update package.json

* Update package-lock.json
2025-08-23 16:02:33 +02:00
Johannes Klein
edd5b7665e Update react-native-logs (#3067)
* Update package.json

* Update package-lock.json
2025-08-23 10:10:34 +02:00
Johannes Klein
29b4878a22 Update react-native-localize to latest (#3066)
* Update package.json

* Update package-lock.json

* Update Podfile.lock
2025-08-23 02:19:15 +02:00
Johannes Klein
22030f3024 Update react-native-maps to 1.20.1 (#3065)
* Update package.json

* Update package-lock.json

* Update Podfile.lock
2025-08-22 22:19:31 +02:00
Johannes Klein
dc1e1ec3f1 Testing with mocked FadeInView component (#3064)
* Repair integration test

* Repair Explore.test.js

* Move no longer broken test

* Mock the fadeInView that does screen transitions in tests

* Mock another fade in view
2025-08-22 21:09:23 +02:00
Johannes Klein
bf96d9a53c Update lodash types (#3063)
* Update package.json

* Update package-lock.json

* Change to named import
2025-08-22 10:32:05 +02:00
Johannes Klein
080d0721c4 Update detox to latest (#3061)
* Update package.json

* Update package-lock.json
2025-08-21 14:40:14 +02:00
Johannes Klein
74b5bfaad2 Remove comment
It does, we can see logs on the server coming from this context.
2025-08-21 13:14:47 +02:00
Johannes Klein
43c06c07de v1.0.9+177 v1.0.9+177 2025-08-16 12:31:28 +02:00
Johannes Klein
ac9f1f468c Revert "chore: update inaturalistjs (#3029)"
This reverts commit 672dc268a7.
2025-08-13 23:38:15 +02:00
Johannes Klein
a15e4c7076 Allow some time for camera initialization, add log if no device found (#3059)
* Start screen in a loading state for 700ms

One idea I have about the bug is that maybe it takes a few renders to initialize the device. As we are immediately backing out of the screen in case we have no device, maybe just adding a few ms to give the native side time helps.

* If no device is selected log the length of devices available

* Add missing mock
2025-08-13 19:20:36 +02:00
Johannes Klein
d3086687c2 v1.0.9+176 v1.0.9+176 2025-08-13 15:43:47 +02:00
Johannes Klein
fb13df6d1f Update version to 1.0.9 2025-08-13 15:39:19 +02:00
Johannes Klein
dec376c88f Accessibility: Add pan-to-zoom to camera (for all of us who need to hold a plant with the other hand) (#3050)
* Move interpolation function

* Export pan handler for zooming

* Prop panToZoom to camera

* Small debug menu refactor

* Extract magic numbers into const
2025-08-12 12:24:30 +02:00
Johannes Klein
7dbee2ba75 Update tensorflowVersion to currently latest version (#3058)
Further updating would need to migrate to LiteRT first: https://ai.google.dev/edge/litert/migration
2025-08-11 22:48:51 +02:00
Johannes Klein
267e4ebc1f Create react-native-mmkv+2.12.2.patch (#3056) 2025-08-11 17:33:23 +02:00
Johannes Klein
a899e0eea9 Create realm+20.1.0.patch (#3055) 2025-08-11 14:18:27 +02:00
Johannes Klein
7a48f45a9c Update react-native-worklets-core (#3054)
* Update package.json

* Update Podfile.lock

* Update package-lock.json
2025-08-11 14:11:32 +02:00
Johannes Klein
8f5cf434ac Update eslint-plugin-testing-library (#3053)
* Update package.json

* Update package-lock.json
2025-08-11 12:49:25 +02:00
Johannes Klein
cc052a4d52 Update node (#3052)
* Update .nvmrc

* Update Podfile.lock
2025-08-11 11:18:47 +02:00
Johannes Klein
fae8e9dd78 Revert "Upgrade helper: package.json"
This reverts commit 0153a208b3.
2025-08-09 23:59:59 +02:00
Johannes Klein
0153a208b3 Upgrade helper: package.json 2025-08-09 20:14:34 +02:00
Johannes Klein
aa5618bf09 Update ruby to v3 (and bundler to 2.7.1) (#3046)
* Update .ruby-version

* Update .ruby-version

* Update Podfile.lock

* Do "bundle update --bundler"

* Do "bundle update"

* Patch fastlane for uby 3.4

* Downgrade to ruby 3.3

* Revert "Downgrade to ruby 3.3"

This reverts commit 488fd163ec.

* Add generic platform ruby

* Do "bundle update --ruby"

* Update Gemfile
2025-08-09 15:15:50 +02:00
Johannes Klein
b4516b7b25 Update react native to v0.78.x (#3043)
* Update package.json

* Update package.json

* Updates for native files with upgrade-helpers

* Update .flowconfig

* Update package-lock.json

* Update Podfile.lock

* Add react-dom types

* Update package-lock.json

* Wrong install

* Use types-react-codemod

* Update TaxonSearch.tsx

* Remove react-native-accessibility-engine dependency

This is currently not maintained and not compatible with RN 0.78

* Comment out accessibility tests

* Disable broken snapshot test

* Move broken test

* Move broken test

* Move broken test

* Remove duplicate file

* Move broken tests

* Move broken tests

* Move broken tests

* Move broken tests

* Move broken tests

* Move broken test

* Remove duplicate file

* Move broken tests
2025-08-09 13:47:46 +02:00
Johannes Klein
6a9db677c0 Consistent location permission asks (#3032)
* Reorder conditions

* This does not really do anything because the option

keys have different names

* The Add Location CTA should always ask for permission

The only state we show the Add Location CTA is if the observation does not have a location when landing on ObsEdit.

* Use an initial state wether an observation should watch users location

In this case we can override the state to true whenever we want to force the app to watch the location.
For example when the user grants location permission on the screen we want to watch no matter where the user came from.

* Remove unused or nowhere imported functions

* Use same navigation on Match as ObsEdit does

* Always ask for permission when the MyLocation button

is pressed on the map

* Add a loading state to the "Add Location button"
2025-08-09 13:46:35 +02:00
Johannes Klein
e0d714cb9f Update react-native-device-info to latest (#3047)
* Update package.json

* Update package-lock.json

* Update Podfile.lock

* Update PrivacyInfo.xcprivacy
2025-08-08 17:02:59 +02:00
Johannes Klein
1cce11918a Update @react-native-clipboard/clipboard to latest (#3049)
* Update package.json

* Update package-lock.json

* Update Podfile.lock
2025-08-08 16:14:19 +02:00
Johannes Klein
f0f2c63db6 Update @react-native-community/netinfo to latest (#3048)
* Update package.json

* Update package-lock.json

* Update Podfile.lock
2025-08-08 16:00:46 +02:00
Johannes Klein
69ac220798 Enable tooltip for new account creation (#3040) 2025-08-07 09:23:17 +02:00
Johannes Klein
7452224266 v1.0.8+175 v1.0.8+175 2025-08-05 23:05:20 +02:00
Johannes Klein
a618b6e870 Update react-native-testing-library to latest (#3044)
* Update package.json

* Update package-lock.json

* Update

* Update to v13

* Update package-lock.json

* Breaking change: remove extend-expect

* Latest version

* Update package-lock.json

* Breaking change: Removed Accessibility matcher

* Update Suggestions.test.js

* Update DisplayTaxonName.test.js

* Testing the same but differently phrased

* Not really needed to test this

And since not.toHaveTextContent stopped working I just remove it.

* Update useTaxonSearch.test.js

* Move broken tests into folders that are not run

* Only move single tests that are failing

* This does work after all

* Remove only single tests that are broken

* Only move failed tests

* Only move failed tests

* Only move failed tests

* Does not pass on CI only
2025-08-05 13:44:49 +02:00
Johannes Klein
eb92895b78 Update to zustand 4.5.7 (#3041)
* Update package.json

* Update package.json

* Update package-lock.json
2025-08-01 15:14:58 +02:00
Johannes Klein
f334dbf191 Update @tanstack/react query (#3042)
* Update package.json

* Update package.json

* Update package.json

* Update package.json

* Update package-lock.json
2025-08-01 14:54:56 +02:00
Johannes Klein
3023eb33ca Update Podfile.lock 2025-08-01 13:42:43 +02:00
Johannes Klein
f10188250c Some Flow to Typescript migrations, in simple components (#3034)
* Update Attribution.tsx

* Update FollowButton.tsx

* Update LoginSheet.tsx

* Update UnfollowSheet.tsx

* Update UnfollowSheet.tsx

* Update EstablishmentMeans.tsx

* Update TaxonDetailsTitle.tsx

* Update Taxonomy.tsx

* Update TaxonMapPreview.tsx

* Update FullScreenActivityIndicator.tsx

* Update ActivityIndicator.tsx

* Update SpeciesSeenCheckmark.tsx

* Update Mortal.tsx

* Update HideView.tsx

* Update ConfidenceInterval.tsx

* Update ViewWrapper.tsx

* Update ScrollViewWrapper.tsx

* Update SimpleObservationLocation.tsx

* Update Divider.tsx

* Update DateTimePicker.tsx

* Update MediaNavButtons.tsx

* Update MediaNavButtons.tsx

* Update MediaNavButtons.tsx

* Update DisplayTaxon.tsx

* Update InputField.tsx

* Update InputField.tsx

* Update ObservationLocation.tsx

* Update WarningText.tsx

* Update LoadingIndicator.tsx

* Update CrosshairCircle.tsx

* Update CoordinatesCopiedNotification.tsx

* Update PhotoSharing.tsx

* Update TaxonDetailsMediaViewerHeader.tsx

* Update EvidenceButton.tsx

* Update TextSheet.tsx

* Update Wikipedia.tsx

* Update About.tsx

* Update About.tsx

* Update imports

* Code style
2025-08-01 12:25:46 +02:00
Johannes Klein
672dc268a7 chore: update inaturalistjs (#3029) 2025-08-01 12:11:44 +02:00
Johannes Klein
6e696cb524 Update to react-native 0.77 (#3026)
* Upgrade helper changes JS side

* Upgrade helper Android

* Upgrade helper iOS side

* Update project.pbxproj

* Create react-native-modal+14.0.0-rc.1.patch

* BackHandler.removeEventListener is deprecated

* Update react-native-modal

* Update .flowconfig

* Update package-lock.json

* Update Podfile.lock

* Update Podfile.lock from main

* Replace toBeVisible with toBeOnTheScreen

This is not recommended by react-navigation, because even though toBeOnTheScreen makes sure the components are in the tree it does not mean they are visible to the user. For example, in terms of navigation a previous screen is still i the tree but not visible to the user in the app.
I spent around a day trying to figure out why the isVisible check stopped working, and still have no clear answer.
Testing in the actual app shows that all of those flows are still working as expected, so it is a test-environment-only problem.
My suggestion would be to re-visit this problem after we have updated RN to latest, and testing related libraries to latest versions.
2025-08-01 12:11:13 +02:00
Angie
15d72cc7fb Remove suggestions screens when navigating back after choosing a taxon (#3020)
* Remove suggestions screens when navigating back after choosing a taxon

* Rewrite to use StackActions

---------

Co-authored-by: Johannes Klein <johannes.t.klein@gmail.com>
2025-07-31 14:31:01 -07:00
Johannes Klein
5eb425bab8 Update uuid (#3039)
* Update package.json

* Update package-lock.json

* Update package-lock.json
2025-07-31 16:27:36 +02:00
Johannes Klein
f17a346f23 Repair ObsWheel tooltip (#3022)
* Refactor Tooltip into AddObsModal

* Update AddObsModal.tsx

* Remove unintentionally hardcoded condition

* Disallow close modal while tooltip is visible

While the tooltip is visible the modal should not be dismissed

* Reinstate logged-in triggers

* Disable tooltip for users that just signed up

Because of a bug in showing the "Account creation" pivot card the trigger here is not always set to true and so the correct behaviour of showing the tooltip is currently not possible.

* Remove buggy check for button press

* Re-position modal

* Make sure we have numbers of observations by the user

We need it to make a decision on wether to show the tooltip. If we don't have it don't show it.

* Show the modal when tooltip should be shown

With a timeout because we have a lot of overlapping modals here.

* Remove react-native-walkthrough-tooltip dependency

* Add triangle under bubble

* Update snapshot tests
2025-07-31 10:15:53 +02:00
Johannes Klein
4d8013bae7 Use node v22 in crowdin CI action (#3038) 2025-07-30 17:12:17 +02:00