1297 Commits

Author SHA1 Message Date
Aaron DeRuvo
ac745bbf8f moves validateDocument functions into the common package. (#977)
* moves validateDocument functions into the common package.

* fix build issues and lint

* handle bad connections better in nullifiier

* add an abort controler to nullifer fetcher,  ignore fals positives

* import types separately

* take it as an arg
2025-08-29 17:28:42 +02:00
Leszek Stachowski
b8f3505fe5 Move loadSelectedDocument to SDK (#967)
Co-authored-by: Aaron DeRuvo <aaron.deruvo@clabs.co>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-08-29 09:39:01 +02:00
Justin Hernandez
f98effe5e5 chore: update to macos latest large runner (#981)
* bump up to macos-latest-large

* fix ci
2025-08-28 21:45:38 -07:00
Justin Hernandez
3b5340862b Chore fix ios nfc scanning and compiling (#979)
* fixes

* silence error

* fix debugge

* fix nfc scanning

* lint and pipeline fixes
2025-08-28 13:57:57 -07:00
Justin Hernandez
0e3e5de1b0 Fix nfc configuration scanning issue (#978)
* fix nfc scanning on ios and android

* save test

* fix tests

* fix lint
2025-08-28 11:12:41 -07:00
Aaron DeRuvo
d9f80f8c13 Auth Adapter + (#958)
* basic auth adapater

* remove SelfMobileSDk, this was another architecture which the adapter patern replaced

* rename to avoid confusion with client.test.ts

* basic auth adapater

* remove SelfMobileSDk, this was another architecture which the adapter patern replaced

* rename to avoid confusion with client.test.ts

* self

* fix

* remove prototypes

* make sure its mounted

* fix tests

* fmt

* require required adapters

* fix types

* not a partial

* adds missing exports

* fix missing data
2025-08-28 10:13:00 +02:00
Justin Hernandez
39976c3aff chore(app): upgrade dependencies (#968)
* chore(app): upgrade dependencies

* update package

* update lock files

* fixes

* lock

* fix
2025-08-27 22:02:12 -07:00
Justin Hernandez
09ad70bdd7 Add DSC parsing check (#836)
* Handle missing dsc parsed

* nice

* fix test

* throw

* fix
2025-08-27 21:57:41 -07:00
Justin Hernandez
75368751a6 Mixpanel tweaks (#971)
* udpates

* fox

* update license
2025-08-27 21:18:50 -07:00
Justin Hernandez
fc472915e6 refactor: remove namespace imports (#969)
* refactor: remove namespace imports

* refactor: use named fs imports

* refactor(app): replace path and fs namespace imports

* format

* format
2025-08-27 20:59:26 -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
Leszek Stachowski
6c3cd978ad Read document catalog from selfClient (#936) 2025-08-26 17:05:51 +02:00
Aaron DeRuvo
4367780cd6 Migrate Analytics (#951)
* setup analytics adapter for self mobile sdk client and use in app

* wrap for context

* fix build

* yarn types is an alias for build when build just compiles ts

* ok unlock

* deeper

* ok this looks to work

* fix license check

* make sure it starts with this line

* someone didnt commit

* fix double analytics bug and builds

* lint
2025-08-26 15:40:14 +02:00
turnoffthiscomputer
cf75bfa0ba update unsupported passport screen (#953)
* update unsupported passport screen

* yarn nice
2025-08-25 22:13:41 +02:00
Justin Hernandez
431f556542 chore: centralize license header checks (#952)
* chore: centralize license header scripts

* chore: run license header checks from root

* add header to other files

* add header to bundle

* add migration script and update check license headers

* convert license to mobile sdk

* migrate license headers

* remove headers from common; convert remaining

* fix headers

* add license header checks
2025-08-25 11:30:23 -07:00
Seshanth.S🐺
610f195136 SELF-253 feat: add user email feedback (#889)
* feat: add sentry feedback

* add sentry feedback to web

* feat: add custom feedback modal & fix freeze on IOS

* yarn nice

* update lock

* feat: show feedback widget on NFC scan issues (#948)

* feat: show feedback widget on NFC scan issues

* fix ref

* clean up

* fix report issue screen

* abstract send user feedback email logic

* fixes

* change text to Report Issue

* sanitize email and track event messge

* remove unnecessary sanitization

* add sanitize error message tests

* fix tests

* save wip. almost done

* fix screen test

* fix screen test

* remove non working test

---------

Co-authored-by: Justin Hernandez <transphorm@gmail.com>
Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
2025-08-25 09:34:18 -07:00
Aaron DeRuvo
d8bf5f9db7 Move Proving attest and cose (#950)
* moved attest and cose utils to common

with cursor converted tests in common to use vitest and converted coseVerify.test to vitest after moving from app to common

what does cryptoLoader do?

* moved away

* get buff

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-08-25 12:26:19 +02:00
Seshanth.S🐺
a918b45332 fix: extractMRZ (#938)
* fix: extractMRZ

* yarn nice && yarn types

* fix test: remove unused

* fix mobile ci

* add script

---------

Co-authored-by: Justin Hernandez <transphorm@gmail.com>
2025-08-24 13:27:42 -07:00
Justin Hernandez
af3adbc022 Fix mock passport flow (#942)
* fix dev screens

* add hint

* rename

* fix path

* fix mobile-ci path
2025-08-22 20:09:30 -07:00
Aaron DeRuvo
cc28f072d5 Move proving inputs to the common package (#937)
* create ofactTree type to share

* move proving inputs from app to register inputs in common

* missed reexport

* ok

* add some validations as suggested by our ai overlords
2025-08-22 13:25:15 +02:00
Aaron DeRuvo
bf718d5caa Moving proving Utils to common (#935)
* remove react dom

* moves proving utils to the common

* need to use rn components

* fix imports

* add proving-utils and dedeuplicate entry configs for esm and cjs.

* must wrap in text component

* fix metro bundling

* fix mock import

* fix builds and tests

* please save me

* solution?

* fix test
2025-08-22 09:57:34 +02:00
turnoffthiscomputer
1cbabbb346 yarn nice 2025-08-20 10:02:33 +02:00
turnoffthiscomputer
be77fc0522 add DeferredLinnkingInfoScreen 2025-08-20 09:56:56 +02:00
Justin Hernandez
cc628a79d2 feat: use SelfClient for MRZ parsing (#930)
* feat: add Self SDK provider

* test: cover passport camera and self client provider

* allow this to fail for now cuz the runner doesn't support 16.4

* sort imports

* upgrade and fix

* fix header issue

* pr feedback

* fix linter

* Update app/scripts/check-license-headers.mjs

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update app/scripts/check-license-headers.mjs

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* update extensions and lock file

* simplify call

* use caching

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-08-19 22:30:40 -07:00
turnoffthiscomputer
5031925ed6 implement deferred linking (#926)
* implement deferred linking

* yarn nice
2025-08-19 22:12:35 +02:00
Justin Hernandez
691e8b1517 chore: unify lightweight deps and workflow node version (#906)
* chore: unify lightweight deps and workflow node version

* gigamind flow updates

* standardize workflows

* fix workflow

* improvements

* Gigamind tweaks (#911)

* save gigamind updates

* keep manual review on for now

* pr feedback

* fix pipeline

* make runner more dynamic

* fix regex

* fixes

* update simulator

* fixes

* fixes

* fix regex

* try again

* test

* revert back to dev settings

* mobile fixes

* fixes

* fix runtime

* just use latest

* pr feedback

* remove template

* Update .github/workflows/mobile-e2e.yml

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-08-17 21:00:36 -07:00
Justin Hernandez
76f4980ef6 chore: add script to check import / export type sorting (#900)
* Enforce separate type imports

* chore: enforce separate type exports

* refactor: flatten sdk index exports

* updates

* fix improperly sorted types

* fixes and prettier

* prettier
2025-08-15 10:11:44 -07:00
Justin Hernandez
d33e329164 chore: standardize test tooling and type defs (#904)
* chore: standardize test tooling and type defs

* fix bad merge

* move to dev dependencies

* fix version
2025-08-14 19:54:18 -07:00
Justin Hernandez
749db8e67a feat: add passport validation module (#887)
* feat: add passport validation

* refactor: consume sdk passport validator in app

* feat: add tracking hook to passport validation

* feat: add validation callbacks

* docs: clarify passport validator

* fix: validate passport hash algorithms

* abstract properly

* fix tests

* format

* fix logger and bundler

* fix tests

* fix tests and bundling

* fix format

* update lock

* fix types

* fixes

* fixes

* don't leak pii

* done

* revert error
2025-08-14 17:15:50 -07:00
Justin Hernandez
0cf1bc830b chore: trim lint warnings and ignore dev paths (#897)
* chore: trim lint warnings and ignore dev paths

* fix: restore navigation param types

* fixes

* fixes

* tweaks and cr feedback

* final improvements

* fix nav types
2025-08-14 13:55:32 -07:00
Justin Hernandez
6b285c9bf3 chore: address TypeScript ESLint v8 upgrade feedback and improve type safety (#895)
* cr feedback

* update based on feedback

* typing updates

* unify yarn package version

* update lock
2025-08-14 09:19:34 -07:00
Justin Hernandez
07addb2a9a chore: add TypeScript tooling (#891)
* chore: add TypeScript tooling

* chore: remove unused tsconfig and migration script

* update settings

* add knip config

* format

* more reliable circuits tests

* fix workflow

* fix types

* updates

* ts updates

* more updates

* fix upgrade

* fixes
2025-08-13 21:02:07 -07:00
Justin Hernandez
ae5e8ccd0f chore: remove msgpack-lite and pako dependencies (#892) 2025-08-13 18:45:50 -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
b2839e1633 Chore: improve ai context (#883)
* add gigamind context

* updates

* update ai context

* doc updates

* add migration context

* docs: refine commit checks and mobile app instructions (#884)

* docs: refine commit checks and add mobile app guidelines

* cr feedback

* quality updates

* format md file

* updates

* future proof tests
2025-08-12 16:39:15 -07:00
Justin Hernandez
2ed8bcfe53 feat: modernize sdk/qrcode build pipeline (#872)
* Modernize qrcode build

* chore(qrcode): add lint helpers

* fix sdk qrcode

* add new qrcode ci

* fix formatting

* qrcode fixes

* fixes

* fixes rd2

* enable corepack

* enable corepack

* build caching

* update caching

* cr feedback
2025-08-10 21:22:02 -07:00
Justin Hernandez
aa359654eb Add additional missing BUSL license headers (#871)
* Exclude Android from license headers

* fixes

* fix formatting

* fix command

* fix license space

* updates

* fix headers

* updates

* new line formatting
2025-08-10 16:53:53 -07:00
Justin Hernandez
d8b2f60c57 Simplify alias tooling and relax export sorting (#867)
* Simplify alias config

* Restore export sorting overrides

* save migration pattern

* alias last minute updates

* fix tests

* improved import sorting

* Implement typed event emitter (#869)

* Implement typed event emitter

* cr suggestion
2025-08-10 13:53: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
b59dbe1b05 Chore: mobile sdk refinements (#858)
* Add sdk-alpha package with MRZ helper

* chore: add migration report script

* Add lint config and MRZ tests to sdk-alpha

* fix tests

* fixes. wip

* fixes

* fix bundler tests

* mrz improvements based on cr feedback

* prettier

* fix build errors

* Document browser shim (#859)

* Validate required adapters (#861)

* Use sdkError for web scanner shim (#862)

* Document new workspaces in AGENTS (#864)

* Add client tests (#860)

* Use deep merge for client config (#863)

* Add config merge helper

* format

* Add SDK alpha CI workflow (#865)

* rename

* rename file

* update workflow

* coderabbit feedback and fixes

* fix linter

* fix import paths

* wip fixes

* updates

* fix tests

* formatting

* update workflow

* remove console mocks

* rename folder and fixes

* fix tests

* save wip

* auto format on save for all sdk package files

* fixes

* cr feedback

* fix pipelines
2025-08-09 17:14:56 -07:00
Justin Hernandez
5356b8b5e0 feat: add sdk-alpha package with MRZ helper (#851)
* Add sdk-alpha package with MRZ helper

* chore: add migration report script

* Add lint config and MRZ tests to sdk-alpha

* fix tests

* fixes. wip

* fixes

* fix bundler tests

* fix
2025-08-08 17:14:49 -07:00
Self GitHub Actions
f2b6e7fe35 chore: incrementing ios build number for version 2.6.3 [github action] 2025-08-08 22:35:15 +00:00
Justin Hernandez
95a3ce5f0c Alias app imports: @src, @tests (#852)
* Support @src alias tooling

* run script and nice

* convert ts script to cjs, update sources

* convert to cjs

* wip update paths

* nice and updates

* fix tests alias paths

* lint fixes

* add @tests alias support

* update script and tests to fix remaining src alias paths

* updates

* update script

* fix

* update lock file

* fix test target

* update timeout

* update flow

* fix flow
2025-08-08 15:05:08 -07:00
Self GitHub Actions
efd21d235e chore: incrementing ios build number for version 2.6.3 [github action] 2025-08-08 17:50:10 +00:00
Justin Hernandez
70deae4fe8 update android build files (#856) 2025-08-08 10:22:37 -07:00
Self GitHub Actions
9aa48690fc chore: incrementing ios build number for version 2.6.3 [github action] 2025-08-08 01:00:13 +00:00
Justin Hernandez
343515c35f chore: add Node version file (#853) 2025-08-07 17:48:25 -07:00
Justin Hernandez
026fda751b Refine app typings and drop type casts (#850)
* Refine typings and drop casts

* Fix type references

* Remove leftover casts

* format

* fix types

* fix typigns

* fix types. revert nfc method selection changes
2025-08-07 17:38:12 -07:00
Self GitHub Actions
fd899e3499 chore: incrementing ios build number for version 2.6.3 [github action] 2025-08-07 22:59:06 +00:00