Commit Graph

4199 Commits

Author SHA1 Message Date
Johannes Klein
27916273a2 Update some testing dependencies (#3097)
* Update package.json

* Update package-lock.json
2025-09-07 17:07:00 +02:00
Johannes Klein
afd8a8b883 Update react-native-vision-camera (#3096)
* Update package.json

* Update package-lock.json

* Update Podfile.lock

* Reapply vision-camera patch
2025-09-07 16:48:26 +02:00
Johannes Klein
0f42472a80 Update @react native community/datetimepicker (#3095)
* Update package.json

* Update package-lock.json

* Update Podfile.lock
2025-09-07 12:45:04 +02:00
Johannes Klein
a5c359ea44 Show only date picker first and add time picker as second step (#3093) 2025-09-05 13:49:25 +02:00
Johannes Klein
0f6aa5b11d Migrate BackButton to TS (#3092)
* Migrate to TS

* Update imports
2025-09-05 13:31:40 +02:00
Corey Farwell
19d0dcf17b Migrate src/sharedHelpers/getImageDimensions to TypeScript. (#3078) 2025-09-05 13:16:11 +02:00
Johannes Klein
c9310cd15e Update reanimated to v3.19.1 (#3090)
* Update package.json

* Update package-lock.json

* Update Podfile.lock

* Update package.json

* Update package-lock.json
2025-09-02 08:03:21 +02:00
Johannes Klein
f5e9a6d812 Migrate to react-native-vector-icons 12.x (#3091)
* Update package.json

* Update package-lock.json

* Update Podfile

* Update build.gradle

* Update Podfile.lock

* Update INatIcon.ts
2025-09-01 22:46:03 +02:00
Johannes Klein
79c066dca9 Update react native screens (#3089)
* Update package.json

* Update package-lock.json

* Update Podfile.lock
2025-09-01 18:38:09 +02:00
Johannes Klein
49091f8fc4 Enable React Compiler (#3082)
* Update package.json

* Update package-lock.json

* Enable plugin

* Update package.json

* Update package-lock.json

* Update .eslintrc.js

* Create a new object instead of mutating the existing one

* Update SoundRecorder.js

* Do not mutate prop directly

* Do not mutate store value directly

* Disable compiler for zoom hook

Because it uses reanimated logic, and previous work laid out we should specifically disregard a rule of react here, unsure what to do here for now.

* Move array for tracking results into component

* Disable compiler for StandardCamera

* Do not mutate store value directly

* Disable compiler for FullPageWebView

* Do not mutate route param

* Remove unnecessary check if state is true before setting it to false

* Fix: user might be undefined

* Update reanimated usage with new compiler compliant API

* Fix: taxon might be undefined

* Fix: taxon might be undefined

* Fix: common pitfall of trying to render text outside of Text component

* Update interface

* Add package override

* Update package-lock.json

* Refactor updating of user preferences into User model

* Remove no memo directive from zoom

* Update file imports

* Migrate safeRealmWrite to TS

* Update interface and import path

* Update interface

* Refactor useLocaalObservation hook to not mutate return value of a function that should not be mutated

* Update tests to new return structure

* Remove useSafeRoute hook

We get the same information from error contexts and surrounding documents, and this hook was violating the rules of react by conditionally calling another hook.

* Use optional chaining

* Update TaxonNamesSetting.test.js

* Fix: use optional chaining

* Extend on RNTLs renderHook instead of re-implementing

* Remove unnecessary mock

* Remove unnecessary mock

* Remove unecessary mock

* Remove trailing spaces
2025-09-01 17:06:51 +02:00
Corey Farwell
6489354d74 Fix a couple typos in translation string comments. (#3087)
While reading through these comments for the first time, I fixed a couple typos along the way.
2025-09-01 12:12:01 +02:00
Johannes Klein
f6486befc6 v1.0.10+178 v1.0.10+178 2025-08-28 21:27:09 +02:00
Johannes Klein
4537dc5452 Update version to 1.0.10 2025-08-28 21:26:04 +02:00
Johannes Klein
edaeaeb89a Combined some dependabot updates together (#3083)
* Bump on-headers and compression (#3023)

Bumps [on-headers](https://github.com/jshttp/on-headers) and [compression](https://github.com/expressjs/compression). These dependencies needed to be updated together.

Updates `on-headers` from 1.0.2 to 1.1.0
- [Release notes](https://github.com/jshttp/on-headers/releases)
- [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md)
- [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0)

Updates `compression` from 1.8.0 to 1.8.1
- [Release notes](https://github.com/expressjs/compression/releases)
- [Changelog](https://github.com/expressjs/compression/blob/master/HISTORY.md)
- [Commits](https://github.com/expressjs/compression/compare/1.8.0...v1.8.1)

---
updated-dependencies:
- dependency-name: on-headers
  dependency-version: 1.1.0
  dependency-type: indirect
- dependency-name: compression
  dependency-version: 1.8.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump form-data from 4.0.0 to 4.0.4 (#3027)

---
updated-dependencies:
- dependency-name: form-data
  dependency-version: 4.0.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump linkifyjs from 4.1.3 to 4.3.2 (#3035)

Bumps [linkifyjs](https://github.com/nfrasser/linkifyjs/tree/HEAD/packages/linkifyjs) from 4.1.3 to 4.3.2.
- [Release notes](https://github.com/nfrasser/linkifyjs/releases)
- [Changelog](https://github.com/nfrasser/linkifyjs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/nfrasser/linkifyjs/commits/v4.3.2/packages/linkifyjs)

---
updated-dependencies:
- dependency-name: linkifyjs
  dependency-version: 4.3.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-28 17:11:04 +02:00
Johannes Klein
843fda54e1 Fix: Stringify error contexts (#3081)
* Stringify native error crash data

* Stringify a JWT error crash data

* Stringify mutations error context
2025-08-28 17:03:39 +02:00
Johannes Klein
11050afe86 Do not log empty sentinel files to the server (#3076)
* Only log sentinel files only if there is any data in the stages array

* Fix indentation

* Also delete sentinel files when exiting camera through Gallery button

* Update AICameraButtons.tsx
2025-08-28 16:47:29 +02:00
Ken-ichi
efb8e2c060 New Crowdin translations by GitHub Action (#3060)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2025-08-28 16:15:15 +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