Commit Graph

36 Commits

Author SHA1 Message Date
Johannes Klein
e352905ba8 Mob 1415 third party acknowledgements in about screen (#3664)
* Add react-native-legal

* Update package-lock.json

* Update Podfile.lock

* Git ignore the results of the license gathering script

* Run "npx react-native legal-generate"

* Update .gitignore

* Type navigation in About

* Add link to About to show licenses

* Update strings.ftl

* Add step into build process

* Add jest mock

* Add npm script for legal-generate

* Update project.pbxproj
2026-05-28 10:20:13 +02:00
sepeterson
0901eefa43 MOB-1009: indicate fix for rn mail in comment 2026-03-31 18:23:47 -05:00
sepeterson
8ba5b5f317 MOB-1009: fix mock file and rm redundant gradle logic 2026-03-31 18:20:12 -05:00
sepeterson
0fe7a1e042 MOB-1009: android e2e working 2026-03-31 17:22:09 -05:00
Johannes Klein
eba8a52497 Update react-native to 0.81 (#3336) 2026-01-28 07:50:27 +01:00
sepeterson
1704288590 MOB-512 consistent gradle styling 2025-11-21 11:12:29 -06:00
sepeterson
6ec3ffcb5c MOB-989 add firebase perf monitoring 2025-11-12 08:45:55 -06:00
Johannes Klein
e82ec31ed9 Update to react-native 0.80.x (#3179)
* Update to latest 0.79

* Update package.json

* Update .flowconfig

* Update files with upgrade helper

* Info.plist updates

* Update package-lock.json

* Update Podfile.lock
2025-11-03 13:19:11 +01: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
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
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
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
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
1f0300db57 Update react native to 0.76.9 (#2974)
* Changes according to the RN upgrade helper

* Update .flowconfig

* Update Gemfile.lock

* Fix typo in minimunSDK version specified

* Disable New Architecture

* Prefer double-quotes

* Update .flowconfig

* Update vision camera patch version number

* Update package-lock.json

* Update Podfile.lock

* Remove no longer needed mock
2025-06-27 14:13:23 -07:00
Johannes Klein
3faf5e3e29 Update to react-native 0.75 (#2950)
* Update to RN 0.75.5 with upgrade helper diff

* Update .flowconfig

* Update package-lock.json

* Update Gemfile.lock

* Update Podfile.lock

* Update project.pbxproj

* Use double quotes

* Update to RN 0.75.5 with upgrade helper diff

* Update .flowconfig

* Update package-lock.json

* Update Gemfile.lock

* Update Podfile.lock

* Update project.pbxproj

* Use double quotes

* Update Podfile.lock

* Update CustomTabBar.js

* Revert "Update CustomTabBar.js"

This reverts commit 2eb085e3bb.

* Update NavBar. Remove percentage based width as it broke the UI

Now we rely solely on flexbox spacing of justify-around.

* Update FloatingActionButton percentage values

* Update CustomTabBar.test.js.snap
2025-06-12 21:18:28 +02:00
Johannes Klein
38029bee8a Update to react-native 0.74 (3rd attempt) (#2937)
* Upgrade to RN0.74 with upgrade helper

* Bump minor version

* Remove yarn files

* RN 0.74.7

* Update .flowconfig

* Update Gemfile.lock

* Update project.pbxproj

* Update PrivacyInfo.xcprivacy

* Refactor uri into constant

* Only use filename for name

Because using the full uri does no longer work like this.

* Check for uri being null

* Update metro.config.js

* Rubocop autocorrect

* Update package-lock.json

* Update react-native-vision-camera+4.0.5.patch

* Update Podfile.lock
2025-06-04 23:02:20 +02:00
Johannes Klein
06589dd89e Revert "Upgrade to RN0.74.0 (#1471)"
This reverts commit 1b705b4495.
2024-06-26 16:29:40 +02:00
Johannes Klein
1b705b4495 Upgrade to RN0.74.0 (#1471)
* Upgrade to RN0.74 with upgrade helper

* Bump minor version

* Update lock files

* Update PrivacyInfo.xcprivacy

* Upgrade react-native-safe-area-context

* Update project.pbxproj

* Create react-native-vision-camera+4.0.3.patch

* Update react-native-vector-icons

* Update Podfile.lock

* Fix crash on LoginForm

* Minor version bump

* Delete react-native-vision-camera+4.0.3.patch

* Update metro.config.js

* Update Podfile.lock
2024-06-26 16:17:39 +02:00
Johannes Klein
ef6163df11 Upgrade CV model to 2.13 (#1694)
* Update vision plugin

* Upgrade tensorflow

* Update Podfile.lock
2024-06-19 10:23:23 +02:00
Johannes Klein
c8c28e1bd7 Fix camera-roll build error 2024-04-19 14:57:50 +02:00
Johannes Klein
73e11c2e5c Upgrade to use react-native-vision-camera v4 and plugin v4 (#1378)
* Upgrade vision-camera and plugin

* Update build.gradle

* Remove deprecated props

* Chang in prop usage

* Use plugin from main branch
2024-04-10 09:53:12 +02:00
Johannes Klein
d6afb4b386 Upgrade to RN 0.73 (#1339)
* Upgrade to RN 0.73 with upgrade helper

* Upgrade testing-library

* Comment announcements

* Comment out UserProfle test

* Mock function used to calculate masonry layout

* There should not be a modal here

* There is actually also no modal here

* Use View if SafeAreaView is undefined

* Replace fast image library that was failing tests because of not being maintained

* Clear mocks in useTaxon test

* Remove legacy deps from testing flow

* Snapshot update

* Revert "Snapshot update"

This reverts commit bca8b296df.

* Update package-lock.json

* Clean-start

* Update project.pbxproj

* Reenable test that failed before updating dependency

* Reenable test that failed because of dependencies

* Remove comment
2024-04-08 15:28:06 +02:00
Johannes Klein
486ba4f30f Upgrade React Native to 0.72 (#1337) 2024-03-29 17:52:37 +01:00
Johannes Klein
2baac4f9f8 Vision camera v3 (#819)
* Update vision camera

* Breaking change: camera device hook

* Breaking change: replace reanimated function calls

* Update vision plugin

* New take photo options

* Use changed props

* Remove undocumented prop

* Update test mocks for vision camera libraries

* Replace vision camera device orientation strings

* Add explanations to a central file for patches needed with the vision camera

* Some more patches
2023-10-12 11:38:17 +02:00
Johannes Klein
2e8665047c Cv model 2.4 (#729)
* Use env var for cv model version

* Reorder code

* Specify tensorflow version to use
2023-08-07 16:44:58 +02:00
Johannes Klein
1439c40c6a Upgrading the app to react-native 0.71.7 (#592)
* Changes in the unproblematic files

* Remove manually linked react-native-config

* Updates to files because of upgrade

* RN 71 and dependencies packages

* Update snapshot tests

* RN 71.1

* Fix missing jest mock

* RN 71.7

* Missing mock

* Fix errors with apisauce and axios

* Remove react-native-codegen direct dependency

* Code style
2023-04-25 17:18:24 +02:00
Johannes Klein
8630b78b3b Add basic detox setup for Android tests 2022-12-12 15:22:47 +01:00
Johannes Klein
99d306cd24 Realm 11 (#208)
This also upgrades us to React Native 0.70.4 and adds a number of files that get us ready for the New Architecture.

Co-authored-by: Ken-ichi Ueda <kenichi.ueda@gmail.com>
2022-11-07 14:13:13 -08:00
Amanda Bullington
f897baf459 Fix for android build in build.gradle (#229) 2022-11-04 18:25:11 -07:00
Ken-ichi
90ff7a59c0 Fastlane setup for tagging, releasing, and internal testing (#118)
Configures fastlane to automate our current release process of making a git tag, making a git release, building, and pushing to the Play Store internal track and Testflight. See README.md for details on setup and usage.

Co-authored-by: Amanda Bullington <albullington@gmail.com>
2022-07-05 18:19:41 -07:00
Amanda Bullington
1ebf4b951d Bug fixes from beta 0.0.1 (#75)
* Add exception handler library; fix computer vision results

* Create loggedIn hook to check whether user is logged in before cv suggestions or upload

* Create user profile card on MyObs

* Update packages

* Add text for camera permissions denied

* Remove log

* Upgrade react native on iOS

* Add vendor file for ruby gems to gitignore

* Remove vendor file from github

* Update react native for android

* Add plural example to fluent; create TranslatedText component to render translations

* Add translations and update camera roll screens

* Small changes to uploader flow; add date/time picker

* Separate explore into landing screen and view screen

* Show total number of observations, explore

* Clean up styling and add details for grid view; banner for total observations in explore

* Add checkboxes for status, quality grade, media filters

* Add a lot of explore filters

* Show months in Explore filters

* Create About screen; sync package.json version using react native version

* Get explore filters in mostly working condition

* Observations download after login; clear login screen after nav; closes #62 and #60

* Allow separating photos if at least 1 combined photo obs is selected; closes #68

* Fix auth tests; add user id

* Pop text input above keyboard to address #66

* Lint cleanup

* Create bottom modal for user tapping back button on ObsEdit

* Check permissions on android only, camera

* Keep trying to get android camera working

* Change version number to 0.1.0
2022-04-01 15:46:51 -07:00
Amanda Bullington
4a4bccd28a Make app run on Android (#57)
* Fixes to make the app run on Android

* Update to android gradle.properties

Co-authored-by: Yaron Budowski <budowski@gmail.com>
2022-03-15 18:24:11 -07:00
Amanda Bullington
59508b6840 Merge user profile, obs detail updates (#56)
* Add to user profile

* Create a hook to fetch member projects

* Create custom header for user profile

* Updates to user profile; resize image for CV suggestions; build config for Android

* Bug fixes with obs list & CV suggestion fields

* Add functions for creating id, faving obs and adding comment in obsdetail

* Show comments as activity items; create comments and refetch obs data

* Fix activity item keys

* Add data to data tab, obs detail

* Let user unfave observation

* Fix camera modal

* Get tests passing
2022-03-15 18:00:54 -07:00
Amanda Bullington
355ea3a533 Remove kotlin version (used for watermelondb testing) 2021-11-13 07:49:49 -08:00
Amanda Bullington
750f7d729a Merge realm + jest implementation into main (#3)
* Struggles with git

* Continued struggles with git stash

* Database experiments

* Get API v2 implementation working with fetch

* WatermelonDB fetch; API v2; RN testing library set up; pods installed

* Enable hermes

* WatermelonDB working with Jest; code cleanup; install latest inatjs

* Experiment with migrations in WatermelonDB

* Remove WatermelonDB from project

* Continue removing watermelonDB

* Add observation schema; remember to remove hermes

* Create local realm observations from observations/search fetch

* Wrap ObsList test in navigation container; add realm files to gitignore
2021-10-15 18:03:49 -07:00
Amanda Bullington
d4adde847d Create RN repo with npx react-native init 2021-09-13 14:38:14 -07:00