* chore: bump mobile app version to 2.9.6
Update build numbers and deployment timestamps after successful deployment.
* bump version too
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
* 2.9 release
* 2.9 release
* Remove debug console logs from generateTEEInputsRegister function in registerInputs.ts
* parse only the passport data during the dsc step
* Add ReferralScreen and integrate referral functionality
- Introduced ReferralScreen for sharing referral links via messages, WhatsApp, and clipboard.
- Updated navigation to include ReferralScreen in the home stack.
- Added new icons for sharing and messaging.
- Enhanced points utility functions to check user identity document registration and points disclosure status.
- Minor adjustments to existing components for better integration with the new referral feature.
* fix types
* fix font
* fix vertical spacing
* save current abstraction
* clean up linking
* clean up spurious ai slop comments
* add dinot bold font
* minify animations
* update fonts and add placeholder animation
* fix pipelines
* fix order
* Update dependencies and enhance Points component functionality
- Added `@react-native-masked-view/masked-view` and `react-native-linear-gradient` to dependencies for improved UI components.
- Refactored `PointHistoryList` to accept `ListHeaderComponent` and `onRefreshRef` props for better integration with parent components.
- Enhanced `Points` component to manage notification and backup point events, including user feedback through modals.
- Updated navigation to use `PointsNavBar` for a more cohesive user experience.
- Introduced new utility functions for managing incoming points and point event records.
* update lock
* update lock and project settings
* fix line height for android
* save wip referral message fix and deeplink setup
* Fix whatsapp link (#1352)
* add 2 new lines
* use path based param instead of query string
* use staging url for now
* SELF-1089: Fix black screen on Points (#1351)
* Fix black screen on Points
* Fix: black screen on Referral Page
* fix: prevent BlurView from displaying when IdDetailsScreen loses focus
* Fix Android message share (#1355)
* Referral flow (#1354)
* SELF-1139: update getUserAddress() (#1353)
* update getUserAddress()
* rename getUserAddress to getPointsAddress
* [SELF-1098, SELF-1099] polish gratification screen post referrer update history (#1356)
* fix: mark document as registered after restoring secret (#1350)
* update lock
* create useRegisterReferral hook and test
* add referral message test
* save wip register referral flow request
* use register referral from the home screen
* fix typing and sort screens
* fix linting issues
* register poitns and update tests
* use package
* fix tests
* simplify HomeScreen with hooks
* fix tests
* address tests
* abstract points logic, fix types and linting
* add test referral flow hook
* coderabbit feedback: fix refereral logic issues, remove sensitive logs
* move test referral flow button to dev settings screen
* close modal after referring and viewing gratification screen
* fix tests, remove alert, format
---------
Co-authored-by: Seshanth.S <35675963+seshanthS@users.noreply.github.com>
* add gratification bg; use safe bottom padding hook on home screen
* prep 2.7.4 as 2.9.0
* manually bump version for custom deploy
* match version code
* fix types
* formatting
* fix tests
* SELF-1144 - use real points on home screen and improve points screen (#1361)
* fix whitespace
* move effects for fetching points and incoming points to hooks, add items to deps array so that they refresh when we expect points to change.
* cleanup
* Add events for new Points Flow (#1362)
* remove deeplinkCallback from pointsSelfApp. (#1365)
* fix pipelines
* SELF-978: wire cloudbackup with points (#1360)
* wire cloudbackup with points
* wire cloudbackup with points
* Remove redundant setSelfPoints()
* add signature and simplify POST api requests (#1367)
* add signature and simplify POST api requests
* better gitleaks ignore
* update toml
* have gitguardian ignore gitleaks
* add buffer lib
* update api with 202 success code
* update scope and contract-address (#1366)
* fix navigation test
* SELF-915: Setup and add turnkey utils (#1314)
* Setup and add turnkey utils
* update CloudBackupScreen
* fix: turnkey
* add yarn.lock
* lint
* add podfile.lock
* fix deeplink
* fix tests: mock turnkey
* yarn nice
* update .gitleaksignore
* patch react-native-svg
* fix patch-package
* fix lineHeight
* points.tsx: fix lineHeight
* fix: recover with turnkey disabled state
* fix turnkey flow
* fix: address generation
* minify animations (#1368)
* fix pipelines
* fix false positives
* fix gitguardian
---------
Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
* enable turnkey only on success
* use prod url
* fix tests and update mocks
* update version and fastlane readme
* pointsSelfApp: update scope
* bump android version to 117
* incremenet timestamp
* abstract points css, hide explore button for now, add points guardrail
* better logic
* simplify point event list data acquisition (#1375)
* simplify point event list data acquisition
* explain
* Remove BlurView in Points.tsx
* Move Points and IncomingPoints to the Point Events Store (#1363)
* add polling for event processing.
atomically update store state
* handle failed states and use real backend api
* improve concurrency reliability of pointevents
* move points to the store
* refresh all points on pull
* add points tracking events
* fix imports
* fix headers
* fix import
* fix misspelling
* enable apps link
* remove __DEV__ logging
* remove additional referall dev mode features
* Add turnkey env
* don't allow users to refer themselves
* prettier
* trim both addresses
* fix close webview button
* fix tests and format
* lint and format
* Update point rewards in NavBar component: change earned points from 20 to 44 and from 100 to 32.
* Refactor point rewards in NavBar component: replace hardcoded values with constants for backup and notification points, and update subscription state variable names for clarity.
* Update POINT_VALUES in types.ts: adjust point rewards for disclosure, notification, and backup events to 8, 44, and 32 respectively.
* App/fix backup points (#1381)
* Enhance backup completion tracking in Points component: Introduce a ref to manage backup check flag, ensuring points are recorded only when explicitly set, preventing false triggers from other navigation flows.
* Update API endpoint in getTotalPoints function: change URL from /distribution to /points for accurate points retrieval.
* formatting
* update points url
* Clear referrer on modal dismiss in useEarnPointsFlow hook to prevent retry loop
* use points private key to sign api requests
* formatting
* save working version of referral confirmation
* fix circular dependency
* don't fetch private key if unable to fetch points key
* add url
* add debug info
* Refactor optimistic points calculation in usePointEventStore: update return value to only include incomingPoints.amount, marking the optimistic approach for future improvement.
* save clean up
* clean useReferralConfirmation logic
* fix tests
* tests pass
* standardize android compile sdk version
* fix package version
* don't log errors
* Update app/src/hooks/useReferralConfirmation.ts
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* better test
* add turnkey entitlements
* fix linting
* remove entitlements
* prettier and fix lint
* update gradle version
* update lock file
* fix tests
* fix build failure
* bump android version to 118
* update date
* bump version for next build
* address failing pipelines due to cache issues
* Hide turnkey button (#1387)
* prep for 2.9.0 release
* fix mobile e2e test
* fix tests
* bump android version
---------
Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
Co-authored-by: Seshanth.S <35675963+seshanthS@users.noreply.github.com>
Co-authored-by: Leszek Stachowski <leszek.stachowski@self.xyz>
Co-authored-by: Aaron DeRuvo <aaron.deruvo@clabs.co>
Co-authored-by: seshanthS <seshanth@protonmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* 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>
* update CI
* bump iOS version
* update readme
* update mobile-deploy ci
* bump version iOS
* update workflow to use workload identity federation (#933)
* update workflow to use workload identity federation
* add token permissions
* correct provider name
* chore: incrementing android build version for version 2.6.4 [github action]
---------
Co-authored-by: Self GitHub Actions <action@github.com>
* update ci
* update ci
* update ci
* update ci
* update ci
* fix ci
* fix ci
* fix ci
* remove fastlane use for android
* bump iOS build version
* update CI python script
* iterate on CI
* iterate on CI
* iterate on CI
* Dev (#941)
* SDK Go version (#920)
* feat: helper functions and constant for go-sdk
* feat: formatRevealedDataPacked in go
* chore: refactor
* feat: define struct for selfBackendVerifier
* feat: verify function for selfBackendVerifier
* feat(wip): custom hasher
* feat: SelfVerifierBacked in go
* test(wip): scope and userContextHash is failing
* test: zk proof verified
* fix: MockConfigStore getactionId function
* chore: refactor
* chore: remove abi duplicate files
* chore: move configStore to utils
* chore: modified VcAndDiscloseProof struct
* chore: more review changes
* feat: impl DefaultConfig and InMemoryConfigStore
* chore: refactor and export functions
* fix: module import and README
* chore: remove example folder
* chore: remove pointers from VerificationConfig
* chore: coderabbit review fixes
* chore: more coderabbit review fix
* chore: add license
* fix: convert attestationIdd to int
* chore: remove duplicate code
---------
Co-authored-by: ayman <aymanshaik1015@gmail.com>
* 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
* 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
* Fix mock passport flow (#942)
* fix dev screens
* add hint
* rename
* fix path
* fix mobile-ci path
* 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>
* 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>
* 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>
* 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
* update unsupported passport screen (#953)
* update unsupported passport screen
* yarn nice
---------
Co-authored-by: Vishalkulkarni45 <109329073+Vishalkulkarni45@users.noreply.github.com>
Co-authored-by: ayman <aymanshaik1015@gmail.com>
Co-authored-by: Aaron DeRuvo <aaron.deruvo@clabs.co>
Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
Co-authored-by: Seshanth.S🐺 <35675963+seshanthS@users.noreply.github.com>
Co-authored-by: Justin Hernandez <transphorm@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* bump version
* bump yarn.lock
* update ci (#966)
* chore: Manually bump and release v2.6.4 (#961)
* update lock files
* bump and build android
* update build artifacts
* show generate mock document button
* update lock
* fix formatting and update failing e2e test
* revert podfile
* fixes
* fix cold start of the app with deeplink
* update ci
* update ci
* Sync MARKETING_VERSION to iOS project files after version bump
* chore: incrementing android build version for version 2.6.4 [github action] (#976)
Co-authored-by: remicolin <98749896+remicolin@users.noreply.github.com>
* chore: add build dependencies step for iOS and Android in mobile deploy workflow
* chore: enhance mobile deploy workflow by adding CMake installation step
* bump android build version
* chore: incrementing android build version for version 2.6.4 [github action] (#985)
Co-authored-by: remicolin <98749896+remicolin@users.noreply.github.com>
* chore: configure Metro bundler for production compatibility in mobile deploy workflow
* chore: incrementing android build version for version 2.6.4 [github action] (#987)
Co-authored-by: remicolin <98749896+remicolin@users.noreply.github.com>
* Revert "chore: configure Metro bundler for production compatibility in mobile deploy workflow"
This reverts commit 60fc1f2580.
* reduce max old space size in mobile-deploy ci
* fix android french id card (#957)
* fix android french id card
* fix common ci cache
* feat: log apdu (#988)
---------
Co-authored-by: Justin Hernandez <transphorm@gmail.com>
Co-authored-by: Seshanth.S🐺 <35675963+seshanthS@users.noreply.github.com>
* unblock ci
* fix merge
* merge fixes
* fix tests
* make ci happy
---------
Co-authored-by: turnoffthiscomputer <colin.remi07@gmail.com>
Co-authored-by: pputman-clabs <99900942+pputman-clabs@users.noreply.github.com>
Co-authored-by: Self GitHub Actions <action@github.com>
Co-authored-by: turnoffthiscomputer <98749896+remicolin@users.noreply.github.com>
Co-authored-by: Vishalkulkarni45 <109329073+Vishalkulkarni45@users.noreply.github.com>
Co-authored-by: ayman <aymanshaik1015@gmail.com>
Co-authored-by: Aaron DeRuvo <aaron.deruvo@clabs.co>
Co-authored-by: Seshanth.S🐺 <35675963+seshanthS@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* 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>
* Add tree-shakeable exports
* Migrate imports for tree-shakeable paths
* Document ESM extension requirement
* udpates
* install new lock
* yarn nice
* build deps
* save working index export no wildcard approach
* save wip
* fix building
* add tree shaking doc and examples
* sort package json files
* update package.json
* fix analyzing web
* make sure that web is built
* wip tree shaking
* building works again. save wip logic
* use granular imports
* wip test
* save wip
* Remove hardcoded .d.ts files and setup automatic TypeScript declaration generation
- Remove redundant constants.d.ts, types.d.ts, utils.d.ts files
- Add build:types script to automatically generate TypeScript declarations
- Update tsup config to disable DTS generation (handled separately)
- Update .gitignore to prevent future commits of generated .d.ts files
- Fixes import resolution errors in app by ensuring declarations are always generated
* Add .gitignore rules for generated TypeScript declarations
* ignore dts files
* Remove redundant index.js re-export files
- Remove constants.js, types.js, utils.js as they're redundant with tsup build
- These were just re-exports pointing to dist files that tsup generates
- package.json exports already point directly to built files
- Update .gitignore to prevent future commits of these generated files
- tsup handles all the building, no manual re-export files needed
* save current wip fixes
* add tsup config for web building
* common prettier and fix imports
* prettier
* fix tests
* implement level 3 tree shaking
* improve splitting
* optimize vite web building and prettier
* remove comments
* sort export params
* feedback and fix pipelines
* fix circuit-names path
* fix test
* fix building
* sort
* fix building
* allow cursor to edit scripts
* fix loadDocumentCatalog undefined
* fix build settings
* fix build settings
* additional metro tree shaking
* improved discovery script for xcode building
* pr feedback and fix camelCasing
* simplify shim setup
* fix xcode building and add command to test building
* remove comment
* simplify
* 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>
* save new launch screen wip
* save wip
* finalize launch look
* replace launch screen
* rename
* update camera onboarding and scan screen
* update tips looks
* update nfc scan issue screens
* update copy
* add launch screen todo
* fix casing
* update launch screen link, copy and add tracking event
* bump project version to match app store
* match app store
* updated supported bio id link
* add dialog message support back in
* cr feedback
* bump version and build
* update images
* tweak animation layout
* loop with setTimeout
* add euid support in app
* yarn nice
* add euid support to proving machine
* update provingMachine and add id endpoints
* fix circuitsDNSmapping
* fix proving
* fix validateDocument
* add todo comment
* add the skip PCR0 option
* set multiple passportData types
* allow storing different id documents
* fix wording
* use goback on the passportOboardingScreen
* update tamagui version
* update yarn.lock
* remove logs in mockdata screen
* remove SKIP_PRC0_CHECK const
* refactor passport data keychain storage
* update project.pbxproj
* yarn nice
* yarn nice
* fix imports
* yarn nice
* add ManageDocuments screen to tests
* update name of the ManageDocument screen in the settings
* run linter in common repo
* clean mrz before doing the length check on android
* 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
* 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