Commit Graph

232 Commits

Author SHA1 Message Date
Justin Hernandez
5a6142515c chore: implement google play suggestions (#997)
* google play suggestions

* update gitguardian ignore

* remove unused
2025-09-03 21:38:18 -07:00
Justin Hernandez
dba8ee1951 feat: improve mixpanel flush strategy (#960)
* feat: improve mixpanel flush strategy

* fixes

* fix build

* update lock

* refactor methods

* conslidate calls

* update package and lock
2025-08-27 20:09:22 -07:00
Justin Hernandez
590f188f3c [SELF-676] feat: upgrade React Native from 0.75.4 to 0.76.9 (#943)
* chore: upgrade build tooling to Node 22 and AGP 8.6

* chore: upgrade react-native to 0.76.9

* update lock files and formatting

* fix path

* fix: handle hermes-engine cache mismatch in CI after React Native upgrade

- Add fallback logic to run 'pod update hermes-engine' when pod install fails
- This resolves CocoaPods cache issues that occur after React Native version upgrades
- Fixes CI pipeline failures on codex/update-core-tooling-for-react-native-upgrade branch

* fix: improve hermes-engine cache handling in CI

- Preemptively clear CocoaPods cache before pod install
- This prevents dependency analysis failures that occur when cached podspecs conflict
- Addresses the root cause: cache conflicts during 'Analyzing dependencies' phase
- Keeps fallback logic for additional safety

* fix: handle hermes-engine cache in mobile-bundle-analysis workflow

- Add pod-install-with-cache-fix.sh script to handle hermes-engine cache conflicts
- Update install-app:setup script to use the new cache fix approach
- This fixes the mobile-bundle-analysis.yml workflow failures after React Native upgrade
- Proactively clears CocoaPods cache and has fallback for hermes-engine updates

* formatting

* fix: robust hermes-engine cache handling in CI workflows

- Apply comprehensive cache clearing to mobile-ci.yml and mobile-e2e.yml
- Pre-emptively run 'pod update hermes-engine' before pod install
- Clear multiple cache locations to handle CI environment differences
- This prevents 'hermes-engine differs from Pods/Local Podspecs' errors
- Fixes all workflows affected by React Native 0.76.9 upgrade cache issues

* fixes

* clean up

* update lock files

* fix tests

* sort

* fixes

* fix ci

* fix deployment target

* android fixes

* upgrade fix

* fixes

* fix: streamline mobile CI build and caching (#946)

* fix: streamline mobile CI build and caching

* Enable mobile E2E tests on codex/fix-mobile-ci-workflow-errors branch

* test

* simplify and fix path

* workflow fixes

* fix loading on 0.76.9

* clean up unnecessary comments

* fix readme

* finalize upgrade to 0.76.9

* fix android build and upgrade

* fix bundler caching

* download cli to fix "yarn start" issues

* fix cli build erorr

* fix script path

* better path

* abstract build step to prevent race condition

* fixes

* better cache

* fix corepack build error

* update lock

* update lock

* add yarn cache to workflows

* fix test building

* ci caching improvements

* fix common type check

* fix common ci

* better mobile sdk alpha building logic

* chore: speed up mobile e2e workflow (#962)

* chore: speed up mobile e2e workflow

* chore: disable android e2e job

* chore: speed up ios build

* fix: bundle js for ios debug build

* fix e2e
2025-08-26 20:27:51 -07:00
Seshanth.S🐺
11e2437118 SELF-501: Integrate Loki and Sentry logging (#791)
* feat: implement logger with loki and console transport

* yarn nice

* feat: add logging in Android and iOS modules (native)

* feat: add sentry logs

* chore: add yarn.lock

* update podfile

* feat: intercept and push console.logs to loki

* update podfile.lock

* Remove NativeLoggerBridgeModule.kt and update NFCPassportReader pod version in Podfile

* add podfile.lock

* use seperate queue for NFC logs & lint

* update review comments

* add project.pbxproj and Podfile.lock

* memoize LoggerProvider
2025-08-13 05:58:03 -07:00
Justin Hernandez
d5171d39eb bump version so dev builds don't collide (#868) 2025-08-10 05:54:03 -07:00
Justin Hernandez
70deae4fe8 update android build files (#856) 2025-08-08 10:22:37 -07:00
Sean Nakamura
bd2a1d3d9a SELF-498: Implement latest DevSettings & CreateMock screens (#778)
* Update nav DevSettingsScreen

* Initial topheader component for mockpassport

* Initial draft of HeroBanner

* Initial FormSection component

* Initial implementation with encryption and nationality sections

* Initial Passport Expires

* Initial OPAC section

* font sizes and color adjustments

* Initial Age section

* Functionality for birthdate via age

* Add age range events

* Remove birthdate section

* Remove advancedMode set encryption section

* Adds new select doc type section

* Update list and mapping for docTypes

* Commit missing icons

* Add select doctype event

* Adds docType to idType form object

* Text adjustments and adds initial caution block

* Add mono font to android and ios

* Reset button and style changes

* Fix plexMono for iOS

* Use dev card and adjust spacing

* Initial Parameter Section componentn

* Initial Buttons for manage documents

* Add scroll view

* Complete migration of select screen section

* Normalize icons rendered in parameter section

* Initial Dangerzone area

* Remove old danger zone and add some spacing

* Add missing closing

* Make mockpassport header black

* Initial private key screen

* Nav to private screen

* Adjust colors, add new screen

* Initial draft of privatekeyscreen

* Ads bug icon

* Return initial route back to original

* Adds key for mapping

* feat: add ScreenSelector component to DevSettingsScreen for enhanced debugging options

* Consolidate date changes

* Remove unneeded import

* Revert deployment_target

* yarn nice for formatting

* Remove unused items

* Fix up types

* yarn nice

* fix typing and tests

* fix import

* remove warning message

* yarn nice

---------

Co-authored-by: seshanthS <seshanth@protonmail.com>
Co-authored-by: Justin Hernandez <transphorm@gmail.com>
2025-08-07 07:46:14 -07:00
Justin Hernandez
fdb932eeba Feat: Lightweight e2e tests for iOS and Android (#840)
* Add Maestro e2e testing

* Run Maestro flows in parallel

* Fix mobile e2e workflow

* Fix e2e script flow path

* prettier

* fix

* prettier

* standardize yml files and new formatting commands

* fix ndk

* fix exclusions

* use double quotes for yml files

* feedback

* fixes

* fixes

* fix

* fix ios job

* unneeded

* fix workflows

* fix launch workflow

* fix

* fix pipeline

* workflow fixes

* install app to emulators

* better logging

* save current version of test script

* android works. ios wip. update locks

* fix pipelines

* cr feedback

* fix android e2e test

* Split mobile e2e workflow by platform (#842)

* Replace react-native-quick-crypto with @noble/hashes (#841)

* Add tests for ethers polyfills

* Add crypto utils

* Inline crypto polyfills into ethers util

* sort and update gemfile lock

* update lock

* chore: incrementing ios build number for version 2.6.3 [github action]

* android works. ios wip. update locks

* Specify Maestro platform

* Fix Android build step in e2e workflow

* fix android

* update ios

* add concurrency

* update Podfile.lock

* fix android

* prettier

* fix

* fix android pipeline

* try job again

* fix ios

* fix android

* fix ios

* fix command

* use android runner now that path is fixed

* fix android e2e test

* fix adb

* add caching

* fix build

* speed up build

* fix

* test emulator options

* updates

* fix pipeline

* fix

* fix script and move on

* add comment

---------

Co-authored-by: Self GitHub Actions <action@github.com>

* feedback

* fixes

* ignore for now

* ignore

* fix tests

* fix ios simulator booting

* fix ios test

* shutdown after run

* fix ios test

* better timing

* increase ios timeout

* fix both flows

* fix pipeline

* combine command

* fix ios

* break up build steps for better caching

* remove cache

* fix ios and android test pipelines

* update logic

---------

Co-authored-by: Self GitHub Actions <action@github.com>
2025-08-06 12:41:09 -07:00
Justin Hernandez
17e1633ee7 Update NDK and packaging (#820)
* Update NDK version and packaging options

* Update NDK references

* update lock files

* readme updates
2025-08-01 16:18:12 -07:00
Justin Hernandez
eeaa4e1dd1 Enable edge-to-edge system bars (#817)
* Enable edge-to-edge system bars

* prettier

* fix lint errors

* podfile update and add lazy
2025-08-01 15:54:25 -07:00
Justin Hernandez
86656fdca6 Fix lazy loading, web build; revert tree shaking for now (#815)
* Revert "fix yarn web (#814)"

This reverts commit bf158fd977.

* Revert "add hermes ios engine"

This reverts commit f6defcfb12.

* Revert "codex feedback"

This reverts commit df35a47f72.

* Revert "merge with dev"

This reverts commit 47a8d9d2f1.

* Revert "update Gemfile.lock and remove lock when reinstalling"

This reverts commit 5f25752f77.

* Revert "test package update"

This reverts commit 19dcba0e42.

* Revert "revert install cmd changes"

This reverts commit 5427bd12a1.

* Revert "Fix CI build by excluding nokogiri in GitHub Actions/Act environments"

This reverts commit dbff69a13e.

* Revert "prettier"

This reverts commit 87f421456f.

* Revert "fix building"

This reverts commit fbbefd2a3d.

* Revert "optimize path resolving"

This reverts commit 23b1118b8e.

* Revert "fix loading"

This reverts commit f0c884b43b.

* Revert "clean up dupe bundle install"

This reverts commit 5428567bbe.

* Revert "fix metro loading"

This reverts commit 3a766001dc.

* Revert "remove passport provider lazy loading"

This reverts commit 5f793a54b3.

* Revert "allow cursor to edit Gemfile and update lock file"

This reverts commit b6f7158e8e.

* Revert "Update Gemfile.lock to exclude nokogiri in CI environments"

This reverts commit 243640152d.

* Revert "fix install commands"

This reverts commit 2dc7d7c1c9.

* Revert "fix imports and test"

This reverts commit 83d6308029.

* Revert "fix import"

This reverts commit fa42b07ce4.

* Revert "update build checks"

This reverts commit b281f15a16.

* Revert "save updated imports"

This reverts commit 215bca4bee.

* Revert "fix build command"

This reverts commit 37f95bc8fb.

* Revert "build dependencies before linting"

This reverts commit 9e57e017ca.

* Revert "lint suggestions"

This reverts commit ff9b9d2c7c.

* Revert "fix type. more opportunities"

This reverts commit 7ad82d5817.

* Revert "add typing to crypto loader"

This reverts commit d55eec8f44.

* Revert "yarn nice"

This reverts commit df1c2dbd9b.

* Revert "update lock"

This reverts commit 04692ba3b5.

* Revert "cm feedback"

This reverts commit 848071f315.

* fix file name

* fix web loading

* fix border width styling

* fix package commands

* fix import and update lock

* fixes from reverted commits

* more fixes for web building

* fix yarn web:build

* add yarn web:build workflow

* cm feedback

* final fixes

* fix for and vitge

* fix loading
2025-07-30 22:27:49 -07:00
Justin Hernandez
fbbefd2a3d fix building 2025-07-28 21:54:31 -07:00
Seshanth.S🐺
df6423e18f fix: use cleanDocumentNumber (#784) 2025-07-28 10:52:05 +02:00
Seshanth.S🐺
a41558a66b SEL-553: Show NFC Progress (#764)
* feat: add haptics

* fix: BAC FAILED error event

* update lock file

---------

Co-authored-by: Justin Hernandez <transphorm@gmail.com>
2025-07-25 09:46:56 +02:00
Justin Hernandez
18d25c392e Release new build v2.6.2 (#779)
* bump version and build

* ignore podfile
2025-07-21 22:08:08 -07:00
Seshanth.S🐺
2494a4399f SEL-559: Update td1 regex (#760)
* feat: update td1 regex

* update review comments

* fix: NPE on expirationDate regex
2025-07-16 08:17:50 -07:00
Justin Hernandez
c3c1ecfe47 Bugfix: android deeplinks (#742)
* bugfix: deep linking

* add android manifest test

* bump build and version

* format readme
2025-07-05 04:31:42 -07:00
Justin Hernandez
b841b19d96 Improve manual mobile deploy workflow and docs (#728)
* Add basic Fastlane helper tests

* Upgrade fastlane and enhance helper tests (#738)

* simplify mobile deploy pipelines and make them manual. update readme

* update fastlane dev readme

* update tests and add helper script

* cr feedback, update tests, revert circuits package.json sort change

* tweaks

* fix slack

* cr feedback and fixes

* add better cjs eslint support

* save wip. add confirmation check script. update scripts

* remove auto increment feature

* migrate readme items over to DEV due to fastlane auto regen docs flow

* use regular xcode

* fix hermes compiler path

* coderabbit feedback

* reinstall when on local dev

* fix upload

* simplify

* simplify confirmation feedback with tests

* fix mobile deploys

* cr feedback

* test iOS building

* fix trigger logic

* cr feedback

* updates

* fix env var

* fix order

* re-enable upload to testflight for ios

* updated notes
2025-07-03 22:32:14 -07:00
Justin Hernandez
601cad5b48 Chore: new build for v2.6.0 ios 145 android 81 (#737)
* bump version and build

* properly bump app

* bump build
2025-07-03 12:50:12 -07:00
Seshanth.S🐺
f99f11a823 SEL-486: Fix unwrap DO (#718)
* update podfile: unwrapDO

* update lock

* bump version and builds

* bump build; forgot to enable logs

* fix version to not interfere with release

---------

Co-authored-by: Justin Hernandez <transphorm@gmail.com>
2025-07-03 11:04:05 -07:00
Justin Hernandez
195688ddd9 update version to 2.6.0 and bump build numbers (#721) 2025-07-01 12:31:13 -07:00
Seshanth.S🐺
28a9f1bcfa feat: add flag to use PACEPolling (#680)
* feat: add flag to use PACEPolling

* fix: santize before storing in store

* bump ios build number and update podfile lock

* prettier

* bump build

* feat: add flag to use PACEPolling

* fix: santize before storing in store

* bump ios build number and update podfile lock

* prettier

* bump build

---------

Co-authored-by: Justin Hernandez <transphorm@gmail.com>
2025-07-01 09:31:11 -07:00
Justin Hernandez
5435190199 SEL-444: Fix android cloud backup (#697)
* feat(android): migrate google backup

* update lock and google services config

* add bulk format command

* backup fixes

* working drive settings!!!!!!!!

* remove unneeded intent filter

* add tests

* coderabbit feedback

* coderabbit feedback

* abstract google method

* coderabbit feedback and fix test

* more coderabbit suggestions and tests fixes
2025-06-29 02:54:07 -07:00
Justin Hernandez
ca6eba8879 keep build and version in sync (#686) 2025-06-26 09:48:52 -07:00
Eric Nakagawa
4d4efffe5a Apply BSL to app codebase (#639)
* Clean up root license wording

* Simplify SPDX header

* simplify license and rename BSL to BUSL

* fix merge issues

* fix missing method

---------

Co-authored-by: Justin Hernandez <transphorm@gmail.com>
2025-06-23 21:47:53 -07:00
Seshanth.S🐺
f08cfe11c0 bump build: android 73 (#659) 2025-06-23 14:50:57 -07:00
Justin Hernandez
60bfe4387c Apply BUSL v1.1 license headers to app (#665)
* Add BSL license headers to app sources

* prettier

* fix license reference - https://spdx.org/licenses/BUSL-1.1.html
2025-06-23 13:44:01 -07:00
Justin Hernandez
ae0dca3c38 Bump build: ios 133; android 72 and build fixes (#654)
* update gesture version and bump android build

* bump and fix ios build

* update lock files

* fixes

* fix fotoapparat library source
2025-06-21 09:55:50 -07:00
Justin Hernandez
e4541a831a Bump build v2.5.4: ios 132; android 71 (#631)
* bump version and build numbers

* remove tamagui/toast

* fix marketing version
2025-06-18 07:52:38 -07:00
Seshanth.S🐺
498b89caae CAN auth - android (#613)
* add missed files

* add NFCMethodSelectionScreen

* bump android build

---------

Co-authored-by: Justin Hernandez <transphorm@gmail.com>
2025-06-16 16:34:45 +02:00
Justin Hernandez
5b6a2535bf Bump version 2.5.3: build ios 129; android 69 (#609)
* bump builds

* update lock

* bump version

* commit lock

* bump build

* bump ios build
2025-06-11 15:09:51 -07:00
Seshanth.S🐺
e4d5b62fdb Add TD1 support - android (#603)
* feat: add TD1 support - android

* fix: missing logs

* update JMRTD and add CAN

* add yarn.lock
2025-06-11 13:20:58 -07:00
Justin Hernandez
65b5f8a389 Bump build ios 128 android 67 (#601)
* bump build

* update clean commands

* add notification tracking provider, and update provider paths

* request permission for firebase cloud messaging

* since the app asks for permissions, let's enable this after configuring the APN

* remove monorepo building as it doesn't affect app build success

* add flags to expose build issues

* fix hermes path

* fix hermes path for emulator and bundle build
2025-06-07 07:36:06 -07:00
Justin Hernandez
d5737195bb [Chore] fix broken build revert hermes changes (#600)
* Revert "Bump build to test PACE polling (ios 127; android 66) (#591)"

This reverts commit 6d27b365c7.

* revert old logic and fix build from breaking

* sort package.json
2025-06-06 14:35:59 -07:00
Justin Hernandez
6d27b365c7 Bump build to test PACE polling (ios 127; android 66) (#591)
* bump builds

* update env.sample with new env vars, and add _NFC to mixpanel nfc var

* remove NDEF so we can keep target sdk version at 15

* add sort package json command

* sort all project package.json files

* enable hermes

* disable hermes

* revert disabling

* remove hermes
2025-06-06 07:29:26 -07:00
Justin Hernandez
2da532d221 SEL-346: fix android cloud backup (#589)
* setup google web client id

* update env sample

* setup new env

* remove old keystore

* new debug keystore

* update podfile lock
2025-06-04 22:09:17 -07:00
Aaron DeRuvo
0e9c59c0fb SEL-56: Setup Yarn Workspaces (#584) 2025-06-04 11:37:32 +02:00
Justin Hernandez
204fcf50e6 new build (#586) 2025-05-30 14:04:53 -07:00
Justin Hernandez
eb7e64d517 bump build (#580) 2025-05-28 23:04:12 +02:00
Justin Hernandez
dfb009b167 Bump build version 2.5.2 to test react native keychain (#572)
* bump build and version

* bump version 2.5.2

* don't downgrade react native keychain
2025-05-27 08:29:05 -07:00
Justin Hernandez
5fa10dba79 Bump v2.5.1; ios 123; android 62 (#565)
* bump to build 61

* bump ios version

* update version
2025-05-20 11:27:30 -07:00
Justin Hernandez
e059f06e84 Bump v2.5.1: ios 122; android 60 (#561)
* increment build to 120

* bump builds for 2.5.1. ios 121; android 60

* clean up logic

* upgrade react native firebase for privacy manifests
2025-05-16 13:15:35 -07:00
nicoshark
3db25aa469 Push notification (#536)
* add push notification feature

* merge new app impl

* change dsc key

* import

* reverse mock dsc

* worked in the ios

* checked in android

* update url and delete console

* delete small changes

* lint

* add yarn.lock

* fix warning message

* add mock notification service for test code

* fix path for the mock implementation

* add mock deeplink to the test code

* nice notificationServiceMock.js

* delete unused firebase related implementation

* fix wording and UI related to notification service

* hotfix on mockdatascreen

---------

Co-authored-by: turnoffthiscomputer <colin.remi07@gmail.com>
2025-05-15 23:46:21 +02:00
Justin Hernandez
2ff57e2e52 bump build (#552) 2025-05-12 18:29:13 -07:00
turnoffthiscomputer
cc169061bd add common sdk (#537)
* add common sdk

* remove sdk backend api

* remove registry

* regenerate sha256 rsa dsc each time

* download ski-pem dynamically on staging, refactor initpassportDataParsing

* add state machine for button on prove screen, improve ux on splash screen

* fetch ski-pem in production

* fix linter issues

* fix prove screen button bugs

* update podfile.lock and yarn.lock

* run linter in circuits repo

* bump build

* bump version for sentry debugging

* bump ios to version 118

---------

Co-authored-by: Justin Hernandez <transphorm@gmail.com>
2025-05-07 11:45:21 +02:00
Justin Hernandez
b1b6c201b4 New bug fix build for v2.5.1 (#540)
* bump new build for dev fixes

* update lock

* reinstall before running local deploy
2025-04-28 15:22:45 -07:00
Justin Hernandez
fdfc0534fb Bump build versions for 2.5.1 (#531)
* release new builds

* fix app and build versions

* fix env check
2025-04-25 05:48:38 -07:00
Justin Hernandez
0d7d1170f3 SEL-187: Make bottom layout scrollable on smaller screens (#525)
* fix design check

* add an option to disable local sending of sentry events

* better sentry enable / disable

* fix scan passport height

* make bottom layout scrollable so it doesn't squish top screen

* simpler logic check. don't create new env var

* fix internet connection issues

* readd comment

* use isConnected instead of internet reachable

* use a dynamic bottom panel height

* add missing recovery screens

* move aesop below

* remove dupe export

* fix rebase

* fix android package download issue
2025-04-23 18:28:02 -07:00
Justin Hernandez
35221386da [SEL-154] Step 1: Scan your passport (#511)
* simplify navigation logic

* use aesop design hook

* save wip

* add new aesop redesign screens

* save wip design

* refactor nav bar logic

* fix paths

* save wip

* stub progress navbar and save wip

* save wip progress bar animation

* save wip progress bar, almost done with design

* fix progress bar design

* fix bottom padding

* disable git commit for now

* fix flaky android downloads that causes pipeline to crash

* update lock for ci
2025-04-18 14:35:52 +02:00
Justin Hernandez
7297659a30 Bump version to 2.5.1 (#522)
* bump version

* update fastlane

* fix bump version

* bump build and add todo

* disable commit for now
2025-04-17 21:09:40 +02:00