Commit Graph

498 Commits

Author SHA1 Message Date
Johannes Klein
6d54612103 Parallelize linting (#3132)
* Add npm-run-all2 dev dependency

* Use linting and checks in parallel

* Update package-lock.json
2025-10-22 15:15:14 +02:00
Johannes Klein
0db05af4f3 Split test command into two (#3145) 2025-10-16 18:07:17 +02:00
Johannes Klein
bad9c5a4d8 Add firebase dependency, and basic logging (#3127)
* Update package.json

* Update AppDelegate.mm

* Update Podfile

* Update .gitignore

* Update link-inat-model-files.sh

* Add plist file to project

* Update project.pbxproj

* Add analytics package

* Update project.pbxproj

* Update PrivacyInfo.xcprivacy

* Basic screen tracking

* Basic button press logging to firebase

* Update package-lock.json

* Update Podfile.lock

* Add Android setup

* Update .gitignore

* Add analytics mock

* Ignore rubocop warning here

* Create GoogleService-Info.example.plist

* Create google-services.example.json

* Add instructions to set up Firebase configs

* Update e2e_ios.yml

* Update e2e_android.yml

* Better plural

* Use specific XCode version in e2e CI

* Update GoogleService-Info.example.plist

* Revert "Update GoogleService-Info.example.plist"

This reverts commit 0bc0ed4862.

* We need an actual real app id or we get a crash during app start

* My bad, we do need both files for building

* Also set API key

* Add comments

* Add comment

* Update Podfile.lock

* Revert "Use specific XCode version in e2e CI"

This reverts commit cbd63d1b5d.
2025-10-16 13:15:10 +02:00
Johannes Klein
744d307d9d Update react-native-gesture-handler (#3138) 2025-10-15 17:53:03 +02:00
Johannes Klein
d185333132 Update package.json 2025-10-14 23:35:42 +02:00
Johannes Klein
8a476f0984 Update version to 1.0.11 2025-10-10 14:20:22 +02:00
dependabot[bot]
b0ba638ecc Bump tmp and patch-package (#3125)
Bumps [tmp](https://github.com/raszi/node-tmp) to 0.2.5 and updates ancestor dependency [patch-package](https://github.com/ds300/patch-package). These dependencies need to be updated together.


Updates `tmp` from 0.0.33 to 0.2.5
- [Changelog](https://github.com/raszi/node-tmp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/raszi/node-tmp/compare/v0.0.33...v0.2.5)

Updates `patch-package` from 8.0.0 to 8.0.1
- [Release notes](https://github.com/ds300/patch-package/releases)
- [Changelog](https://github.com/ds300/patch-package/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ds300/patch-package/commits)

---
updated-dependencies:
- dependency-name: tmp
  dependency-version: 0.2.5
  dependency-type: indirect
- dependency-name: patch-package
  dependency-version: 8.0.1
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-09 00:05:08 +02:00
Johannes Klein
af6e424f1e Update @candlefinance/faster-image (#3121)
* Update package.json

* Update package-lock.json

* Update Podfile.lock
2025-10-08 20:58:36 +02:00
Johannes Klein
9c90c2e45f Update react-native to 0.79 (#3051)
* Upgrade helper: package.json

* Upgrade helper: gems

* Upgrade helper: Android

* Update AppDelegate

* Fix error in compiling

* Update package-lock.json

* Update Podfile.lock

* Update package-lock.json

* Update Podfile.lock

* Remove no longer needed mock

* Comment out entire test and not only the expect call

* Most other unit tests use this render helper function that

wraps the component in the entire app.

* Mock react-native exports as esModule

* Update .flowconfig

* Update Gemfile

* Revert "Comment out entire test and not only the expect call"

This reverts commit 8785f81529.
2025-10-01 22:44:14 -05:00
Johannes Klein
66a6d7fcdd Update react-native-image-picker (#3114)
* Update package.json

* Update package-lock.json

* Update Podfile.lock

* Delete react-native-image-picker_vx.x.x.js

* Update package.json

* Update package-lock.json
2025-09-29 01:03:25 -06:00
Johannes Klein
3c04df39a3 Enable New Architecture (#3111)
* Update gradle.properties

* Update Podfile

* Update react-native-mmkv

* Update Podfile.lock

* Delete useObservationsUpdatesWhenFocused.test.js

* Update closeOnboarding.js

* Fix failing button tap in e2e tests

* Create react-native-sensitive-info+6.0.0-alpha.9.patch

* Update bottom-sheets

* Refactor e2e timeout to file-wide const

* Remove check that fails

* Check for entire list item instead of comments count

* Longer delay to wait for observation deletion to make UI disappear
2025-09-27 08:28:13 -06:00
Johannes Klein
0814ce14db Update vision-plugin to 6.rc (#3104)
* Update package.json

* Update package-lock.json

* Update Podfile.lock

* Breaking change: Set LiteRT version instead of tensorflow-lite

* Fix: actually use latest version
2025-09-10 14:50:51 +02:00
Johannes Klein
ba2fb88e23 Update vision-plugin to 5.3.0 (#3099)
* Update package.json

* Update package-lock.json

* Update Podfile.lock
2025-09-08 10:55:27 +02:00
Johannes Klein
80c48b88b3 Update react compiler (#3098)
* Update package.json

* Update package-lock.json
2025-09-08 10:55:17 +02:00
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
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
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
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
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
fb13df6d1f Update version to 1.0.9 2025-08-13 15:39:19 +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
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
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
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
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
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
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
5e251f68b0 Update version to 1.0.8 2025-07-30 11:47:33 +02:00
Johannes Klein
8d3dece317 Update @react-native-community/geolocation to latest (#3014)
* Update package.json

* Update package-lock.json

* Update Podfile.lock
2025-07-30 11:19:03 +02:00
Johannes Klein
019693c08c Update version to 1.0.7 2025-07-22 23:39:58 +02:00