Commit Graph

718 Commits

Author SHA1 Message Date
Justin Hernandez
ccb9e148be App polish for 2.9 rd1 (#1359)
* add useSafeBottomPadding

* add bottom padding to dev screen

* use safe bottom padding

* skip uploading if building android bundle locally

* fix tests

* cache fix script

* clean up country picker, fix font color

* sort package jsons, add watcher for mobile sdk

* formatting

* only bump versions for successfull builds

* move all css

* cleaner script

* kill watchers before starting new one
2025-11-07 10:26:08 -08:00
Seshanth.S
a2a6a0cbcb fix: mark document as registered after restoring secret (#1350) 2025-11-06 12:15:43 +05:30
Justin Hernandez
c1d929bcfb chore: bump android version remove title (#1339)
* bump android version

* remove spurious title
2025-10-31 14:26:17 -07:00
Justin Hernandez
2e51e268df SELF-1000: address passport data not found issue (#1329)
* update lock files

* use isUserRegisteredWithAlternativeCSCA

* update lock

* fix building release version

* aadhaar fix for public keys

* fix aadhaar check and add tess

* fix test types

* fix mocked data

* coderabbit feedback

* update tests and remove cruft

* update lock and aar file

* fix script and building aar file, add assets for recovery
2025-10-30 10:53:23 -07:00
Seshanth.S
bfa276665b SELF-883 Feat/generate second address (#1328)
* feat: generate second address

* update setting store
2025-10-29 22:59:23 +05:30
Justin Hernandez
856efb97f1 address minor mobile app linting issues (#1331)
* address lint issues

* different approach
2025-10-28 22:41:18 -07:00
Aaron DeRuvo
2337eb30f1 Confirm Identification Screen + animation json dist setup (#1306)
* refactor confirm screen

* refactor

* setup animations and confirm-identification screen

* linty

* fix jest tests

* reverse attempts to fix web build. skip web build for now since its not used anyway

* dont code split in a library

* cleanup config for build based on what is actually used in sdk
2025-10-24 15:22:44 +02:00
Justin Hernandez
077dcc47b4 [SELF-830] feat: demo app nfc scanning (#1236)
* save wip demo app nfc scanning

* save wip

* fix types

* Fix Android NFC scanning in demo app (#1241)

* fix tests

* fix pipelines

* fix linting

* WIP move to flows/onboarding/scan-nfc

* prettier and fix test

* fix test

* update lock

* update deps

* Feat/android prebuilt modules (#1292)

* move entire screen

* remove redundancy in components and utils

* fixes

* lint

* ignore

* remove unneeded

* fix imports

* remove unused

* Update packages/mobile-sdk-alpha/src/types/events.ts

Co-authored-by: Aaron DeRuvo <aaron.deruvo@clabs.co>

* uuid not needed for demo app

* android: update ci check

* timeout fix, image temp fix

* prettier fix

* try rebuild deps every time

* Temporarily disable cache check in CI

* Revert "try rebuild deps every time"

This reverts commit a5c97210a5.

* ignore false positive

* Revert "Revert "try rebuild deps every time""

This reverts commit 4f44615fd6.

* fix?

* sanitize error message first

* remove TODO that has been taken care of

* MSDK: add ios prebuilts (#1308)

* add ios prebuilt

* remove outdate readme

* remove duplicates

* comment out unused

* add prettier ignore

* Update .gitguardian.yml to ignore iOS frameworks and build artifacts

* update gitguardian ignore paths

* migrate config version

* add ignored-matches

---------

Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>

* remove duplicated code

* exclude mobile-sdk native modules when `E2E_TESTING` flag is set

* app: disable ios msdk auto-linking

* add E2E_TESTING flag

---------

Co-authored-by: Leszek Stachowski <leszek.stachowski@self.xyz>
Co-authored-by: seshanthS <seshanth@protonmail.com>
Co-authored-by: Seshanth.S <35675963+seshanthS@users.noreply.github.com>
Co-authored-by: Aaron DeRuvo <aaron.deruvo@clabs.co>
2025-10-23 23:14:32 +05:30
turnoffthiscomputer
ab07edbd56 feat: implement push notification management in DevSettingsScreen (#1304)
- Added TopicToggleButton component for managing topic subscriptions.
- Integrated notification permission checks and subscription handling in DevSettingsScreen.
- Updated settingStore to manage subscribed topics.
- Enhanced notificationService with functions to check readiness and manage topic subscriptions.

This update allows users to enable or disable push notifications for specific topics, improving the app's notification management capabilities.
2025-10-19 03:20:59 +02:00
Justin Hernandez
62aea03bd5 SELF-908: Add shared WebView screen (#1288)
* feat: add shared webview screen

* get react web view working

* fix default

* fix footer

* fix nav header

* android layout looks good

* fix initial screen

* add webview types

* fix types and clean error message

* remove share logic

* cr feedback and tests

* fix tests

* fix tests
2025-10-16 21:27:16 -07:00
Leszek Stachowski
757ac58995 Move DocumentCamera screen to the SDK (#1287) 2025-10-17 00:11:30 +02:00
Aaron DeRuvo
5d04870b36 Move Country and ID Picker and more (#1286)
* update fonts

* move haptics

* fix sorting isues

* dynamic import of peer dependency seems wise


* moves Country Picker Screen

* remove unused and incorrect countryname from doc pick event.


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

* svg works


Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-10-16 16:20:58 +02:00
Aaron DeRuvo
b3c5603d74 Move Layout Components to SDK (#1280)
* create replacement tamagui components and move nav bars. (keep home where it is since we are not moving the home screen)

* lint

* clean up

* fix type

* prety

* god bless

* use proper conversions

* lint

* add missing styles and a way to debug if more are missing

* fix bad instance error
2025-10-14 13:32:55 +02:00
Aaron DeRuvo
6bdc4ae1d2 Move components to sdk for future use (#1243)
* move components to sdk and refactor a way from tamagui

* linting

* reverting since this is just a local issue for me

* lint

* simple

* yarn

* yolo

* run yarn nice

* fix pipelines

* fix tests

* fix mock

* add fonts to mobile sdk

* more feedback

---------

Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
2025-10-10 16:52:41 -07:00
Justin Hernandez
66e9cb655d SELF-833: Fix launch screen link interactivity (#1252)
* Fix: Make terms and privacy links unstyled

Co-authored-by: justin.hernandez <justin.hernandez@self.xyz>

* save wip

* update gemfile.lock

* make launch screen links clickable

* tighten up design

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2025-10-10 14:52:50 -07:00
Justin Hernandez
023cfa0f16 chore(app): remove unused dependencies and navbar component (#1248)
* chore(app): remove unused cruft

* chore(app): prune unused modules

* fix(app): restore database provider

* remove dead provider
2025-10-09 11:12:01 -07:00
Justin Hernandez
8255a9ac56 chore: tighten types across mobile surface areas (#1209)
* chore(app): tighten types across app workspace

* fixes

* save wip

* save wip linting

* fix any types

* fix types

* fix: import forwardRef directly from react

- Changed from React.forwardRef to forwardRef import
- Resolves linting warning about named exports

* save typing and linting updates

* cr feedback. final pass

* more cr feedback

* pipeline fixes
2025-10-09 09:53:29 -07:00
Justin Hernandez
8ba5b5ebf3 refactor: reorganize and rename mobile screens (#1207)
* refactor(screens): reorganize screen directories

* fix types, linting

* udpates

* fix lint issues

* fix vite

* pr feedback and fix missing bundle resolution

* remove b4a; breaks build

* update gemfile.lock

* use DocumentNotFound screen
2025-10-08 19:27:20 -07:00
Leszek Stachowski
8cbb7c252e Mobile SDK: NFC scanning through SelfClient (#1214) 2025-10-08 16:03:02 +02:00
Aaron DeRuvo
bbf340cf4d setup for us to have svgs in the mobile sdk (#1230)
* setup for us to have svgs in the mobile sdk

* never again
2025-10-08 09:31:33 +02:00
Aaron DeRuvo
f7c5ef0e74 MOVING COUNTRIES: (#1229)
* wip

* move colors

* sort the dev screen menu alphabetically. for sanity

* lint

* move country hooks to sdk

* added peer dep

* add as dev dep

* remove SelfMobileSdk component before someone thinks that it should be used

* mock it like before
2025-10-07 15:05:33 +02:00
Justin Hernandez
cebd67d548 fix ios lottie animations with delay (#1218) 2025-10-06 14:01:27 -07:00
Seshanth.S
be5f7811cb Fixes: view document info screen (#1201)
* add aadhar to DocumentInfoScreen instead of showing empty fields

* fix: clicking icon on first row of settingScreen navigates back

* review comments
2025-10-06 18:39:06 +05:30
Justin Hernandez
efacb8db94 fix lint issues (#1208) 2025-10-04 09:20:21 -07:00
Seshanth.S
ad009394eb Hotfix/audit fixes (#1193)
* Fix - Application Allows Cleartext Traffic

* Fix: Insecure Keychain Protection Class

* fix: Local Authentication Bypass

* remove console.logs

* feat: Add migrateToSecureKeychain function placeholder for web

* Improve clearText traffic fix

* update review comments

* update review comments
2025-10-03 22:53:11 +05:30
Aaron DeRuvo
a00cb7e58d move common aadhaar functions to msdk (#1200)
* move common aadhaar functions to msdk

* remove comment

* add license headers
2025-10-03 14:37:53 +02:00
Aaron DeRuvo
187fc185e2 Adds missing check for typescript types to app ci (#1198)
* fix app types and add a ci check

* fix lint check.
2025-10-03 14:27:30 +02:00
Aaron DeRuvo
429d9f9569 This screen is part of the document /onboarding screens not the disclose/proof screens (#1199) 2025-10-03 11:53:11 +02:00
Leszek Stachowski
f2cceb3150 expose useReadMRZ hook for DocumentCameraScreen (#1188) 2025-10-03 00:26:40 +02:00
Leszek Stachowski
c1d30d153a separate MRZ data from userStore (#1187) 2025-10-02 21:40:48 +02:00
turnoffthiscomputer
eedbc8d940 add suggestion in the country picker (#1191) 2025-10-02 19:28:24 +02:00
turnoffthiscomputer
0a04f44682 Add LoadingUI and DevLoadingScreen components for enhanced loading ex… (#1189)
* Add LoadingUI and DevLoadingScreen components for enhanced loading experience

- Introduced LoadingUI component with customizable animation, action text, and progress indicators.
- Created DevLoadingScreen to facilitate development testing with state selection and loading feedback.
- Updated navigation to include DevLoadingScreen in the dev tools.
- Adjusted loading screen logic to improve user experience during document processing.
- Enhanced loading text management to provide clearer feedback based on current state.
- Added new SVG icon for the loading UI.

This commit improves the overall loading experience in the app, making it more user-friendly and visually appealing.

* Update navigation tests to include DevLoadingScreen for improved development experience
2025-10-02 19:27:27 +02:00
Aaron DeRuvo
25634e06dc create nice structure for the mobile sdk (#1177)
* create nice structure for the mobile sdk

* spv

* actually dont touch what we dont understand

* fix metro

* fix pretty

* fix types on app and imrpove names

* sneek in actually checking the types in the mobile app.

* not yet

* fix jest imports and name test better
2025-10-02 09:34:22 +02:00
Justin Hernandez
fd1f008719 chore: address staging branch issues pr #1169 (#1178)
* fix ios run

* small fixes
2025-10-01 16:12:50 -07:00
turnoffthiscomputer
422d0cc259 App/id picker flow (#1126)
* add new id picker flow

* refactor: update document management screen actions

- Renamed `handleScanDocument` to `handleAddDocument` for clarity.
- Updated navigation from 'DocumentOnboarding' to 'CountryPicker'.
- Removed unused `handleAddAadhaar` function and its associated button.

* address pr feedback

* address lint issues

* fix test

* fix typings and screen

* fix e2e button test

---------

Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
2025-10-01 10:32:11 -07:00
Leszek Stachowski
3b14f09c30 introduce usePrepareDocumentProof in mobile SDK (#1176)
* introduce usePrepareDocumentProof in mobile SDK

* revert haptic feedback + lint
2025-10-01 15:08:48 +02:00
Aaron DeRuvo
1856c9b325 move fcm token storage (#1175)
* move fcm token from proving store to setting store for better separation of concerns.

* use analytics on adapter

* Revert "use analytics on adapter"

This reverts commit 4854d6fa87.

* prettier

* please be good

* ik heb oopsie wooopsie

* remove
2025-10-01 12:59:00 +02:00
Aaron DeRuvo
a826c71f36 Redo "Mobile SDK: move provingMachine from the app (#1052)" (#1084)" (#1114)
* Redo "Mobile SDK: move provingMachine from the app (#1052)" (#1084)"

This reverts commit 3397fcf43b. which reverted merging proving machine migration

* fix build

* lint fix

* fix imports

* pr suggestions

* make sure not to create multiple instances of stores

* WIP: don't expose useSelfAppStore directly in the public API

* Update packages/mobile-sdk-alpha/src/proving/provingMachine.ts

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

* Apply suggestions from code review

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

* dont call protocol store directly

* fix protocol store tests

* fix deeplinks test

* fix web build and exports

* test fixes

* keep reactivity

* remove file name

* WIP: expose stores through SelfClient only

* move protocolStore usage behind SelfClient

* fix deeplinks tests

* lint

* fix provingMachine tests

* remove provingStore from browser exports

* lint

* lint

* fix provingMachine.generatePayload tests

* fix provingMachine.startFetchingData tests

* fix more tests

* remove not exported

* fix more tests

* remove unused

* simplify getAltCSCA signature (fix build?)

* yarn lint

* final touches

---------

Co-authored-by: Leszek Stachowski <leszek.stachowski@self.xyz>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-09-29 14:17:51 -07:00
Justin Hernandez
bd8d425cc7 SELF-763: remove aesop features for now (#1132)
* clean onboarding camera screens

* remove remaining aesop artifacts. fix tests
2025-09-28 07:55:11 -07:00
Justin Hernandez
20fa5c5adc [SELF-700] feat: add mock document generator demo (#995)
* feat: add mock document generator demo

* feat: add mock document generator

* fixes

* chore: refresh workflow cache

* update lock

* build

* updates

* more fixes

* code rabbit feedback

* compiles

* save wip

* updates

* merge with dev and fixes

* fix: align hoisting and demo Jest resolver (#1003)

* chore(app): map common src paths and declare svg flag module

* ci fix

* update lock

* save wip

* chore: address yarn lock issues (#1004)

* address yarn lock issues

* fix postinstall

* fix ci

* use metro js proxy

* android build working for /app

* save wip

* fix merge

* pipeline fixes

* format

* fix pipelines

* bump limit and split

* fix pipeline issues

* chore: decouple demo app build (#1013)

* chore: decouple demo app build

* chore: move demo app to workspace

* chore: unpublish demo workspace

* fix mobile sdk tests

* updates

* remove polyfills

* update merge

* update resolutions

* update resolutions

* fix merge

* fix paths

* save wip

* save wip fixes rd2

* working android

* update lock

* save wip ios building

* fix merge

* readd public key

* fixes

* ci fixes

* fixes

* fix web building

* fix ci

* fix tests

* update lock

* fix ci rd2

* formatting and fix ci

* fix

* finalize ci fixes

* fix tests and metro config paths for building

* save wip

* install missing package for pipeline

* fix wip app building

* wip react config

* save working emulator compile

* first round of pr fixes and feedback

* clean up demo app artifacts from sdk

* Add Gradle wrapper files for mobile-sdk-demo Android build

- Added gradlew, gradlew.bat, and gradle/wrapper/ directory
- Updated .gitignore to allow committing Gradle wrapper files
- Fixes Android build error: spawn ./gradlew ENOENT

* codex feedback and fixes

* fix tests

* file renames

* revert back to dev

* add types

* coderabbit fixes

* fix tests

* fix tests

* fix test

* fixes

* fix wip coderabbit issues

* coderabbit suggestions rd 2

* fix ci pipelines and addresss warnings

* cr fixes

* convert kebab to camelCase

* save wip fixes

* update reinstall and lock files

* fixes

* remove file

* fix lint

* fix polyfill fallback issues

* ensure that mock document is not on ofac list

* prettier
2025-09-27 13:59:47 -07:00
Aaron DeRuvo
cd6d9ce981 fix SEL-750 system bar content color (#1097) 2025-09-25 11:07:38 -07:00
Justin Hernandez
7e47824d08 chore update feedback email address (#1125)
* update email addy

* format code
2025-09-25 09:50:45 -07:00
turnoffthiscomputer
f6881bf2d9 Refactor deep link handling to simplify navigation to ProveScreen (#1104)
* Refactor deep link handling to simplify navigation to ProveScreen

- Removed the reset of the navigation stack and replaced it with a direct navigation call to 'Prove'.
- This change streamlines the deep link handling process, ensuring a more straightforward user experience when navigating to the ProveScreen.

* update lock and fix tests

---------

Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
2025-09-19 22:41:55 -07:00
turnoffthiscomputer
6063aedd02 Refactor LoadingScreen to use IDDocument type and update loading text logic (#1106)
- Changed passportData state type from PassportData to IDDocument for better type handling.
- Updated getLoadingScreenText function to accept signatureAlgorithm and curveOrExponent directly instead of PassportMetadata.
- Adjusted loading text and animation logic based on document category, improving clarity and maintainability.
2025-09-20 07:36:19 +02:00
turnoffthiscomputer
2df4dc4619 SELF-725: add iOS qrcode opener and aadhaar screen (#1038)
* add iOS qrcode opener and aadhaar screen

* format

* fix test

* add Image-picker android (#1077)

* add image-picker android

* fix validation

* feat: implement Aadhaar upload success and error screens, enhance AadhaarNavBar with dynamic progress indication

- Added AadhaarUploadedSuccessScreen and AadhaarUploadErrorScreen components for handling upload outcomes.
- Updated AadhaarNavBar to reflect current upload step with dynamic progress bar.
- Integrated new screens into navigation flow for Aadhaar upload process.
- Introduced blue check and warning SVG icons for visual feedback on success and error states.

* feat: generate mock aadhar (#1083)

* feat: generate mock aadhar

* add yarn.lock

* update yarn.lock

* update protocolStore, update types, start modifying provingMachine

* Register mock aadhar (#1093)

* Register mock aadhar

* fix ofac

* temp: generate name

* fix dob

* Add Aadhaar support to ID card component and screens

- Integrated Aadhaar icon and conditional rendering in IdCardLayout.
- Updated AadhaarUploadScreen to process QR codes and store Aadhaar data.
- Modified navigation and button text in AadhaarUploadedSuccessScreen.
- Added mock data generation for Aadhaar in the mobile SDK.
- Updated ManageDocumentsScreen to include Aadhaar document type.
- Enhanced error handling and validation for Aadhaar QR code processing.
- Added utility functions for Aadhaar data extraction and commitment processing.

* aadhaar disclose - wip (#1094)

* fix: timestamp cal of extractQRDataFields

* Feat/aadhar fixes (#1099)

* Fix - android aadhar qr scanner

* fixes

* update text

* yarn nice

* run prettier

* Add mock Aadhaar certificates for development

- Introduced hardcoded Aadhaar test certificates for development purposes.
- Moved Aadhaar mock private and public keys to a dedicated file for better organization.
- Updated the mock ID document generation utility to utilize the new Aadhaar mock certificates.

* prettier write

* add 'add-aadhaar' button (#1100)

* Update .gitleaks.toml to include path for mock certificates in the common/dist directory

* yarn nice

* Enhance Aadhaar error handling with specific error types

- Updated the AadhaarUploadErrorScreen to display different messages based on the error type (general or expired).
- Modified the AadhaarUploadScreen to pass the appropriate error type when navigating to the error screen.
- Set initial parameters for the home screen to include a default error type.

* Update passport handling in proving machine to support Aadhaar document category

- Modified the handling of country code in the useProvingStore to return 'IND' for Aadhaar documents.
- Ensured that the country code is only fetched from passport metadata for non-Aadhaar documents.

* tweak layout, text, change email to support, hide help button

* fix ci, remove aadhaar logging, add aadhaar events

* remove unused aadhaar tracking events

* update globs

* fix gitguardian config

* don't track id

---------

Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
Co-authored-by: Seshanth.S🐺 <35675963+seshanthS@users.noreply.github.com>
Co-authored-by: vishal <vishalkoolkarni0045@gmail.com>
2025-09-19 17:36:01 -07:00
Justin Hernandez
c2406f00d2 chore update mobile app types (#1087)
* clean up types

* clean up additional types

* format

* fix types
2025-09-17 17:35:14 -07:00
Justin Hernandez
3397fcf43b Revert "Mobile SDK: move provingMachine from the app (#1052)" (#1084)
This reverts commit 8983ac2268.
2025-09-17 12:48:42 -07:00
Leszek Stachowski
8983ac2268 Mobile SDK: move provingMachine from the app (#1052)
* Mobile SDK: move provingMachine from the app

* lint, fixes

* fix web build?

* lint

* fix metro build, add deps

* update lock files

* move the status handlers and proving machine tests

* may it be

* fix up

* yolo

---------

Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
Co-authored-by: Aaron DeRuvo <aaron.deruvo@clabs.co>
2025-09-17 15:48:36 +02:00
Nesopie
30cc43e242 feat: change to gcp attestation verification (#959)
* feat: change to gcp attestation verification

* lint

* fix e2e test

* chore: don't check PCR0 mapping if building the app locally

* fmt:fix

---------

Co-authored-by: Justin Hernandez <transphorm@gmail.com>
2025-09-17 17:36:42 +05:30
Justin Hernandez
5c569e6334 chore: minor fixes across monorepo (#1068)
* small fixes

* fixes

* fix gesture handler error

* ci fixes
2025-09-13 17:55:35 -07:00