Commit Graph

206 Commits

Author SHA1 Message Date
Justin Hernandez
f47b46d465 Add browser host callback contract for WebView verification flow (#1846)
* push code for wv-02 and 03

* save wip

* fixes

* pr feedback fix pipelines

* save spec

* address feedback

* pr feedbacak

* fixes

* format

* fix pipelines

* fix

* fix

* fixes
2026-03-12 07:50:18 -07:00
Justin Hernandez
73d2075ad4 Deduplicate bridge-layer fallback adapters onto engine-owned browser implementations (SC-01) (#1841)
* sc-01 first commmit

* fix pipelines

* fix build

* add missing

* pipeline fixes

* last round of feedback
2026-03-11 12:50:27 -07:00
Justin Hernandez
774fe295ca Complete RN-03 NFC hardening and stabilize RN SDK tests (#1797)
* udates

* add regression test

* feedback; remove assets

* fix pipeline

* pr feedback

* fixes

* fix pipeline

* finalize rn03 work

* fix ci

* better foramt
2026-03-10 21:40:50 -07:00
Justin Hernandez
23ab5d8b17 Consolidate iOS build, config, and integration paths (#1821)
* mrz consolidation

* consolidate mrz swift code

* update specs

* save changes

* fixes

* format

* pr feedback
2026-03-06 13:38:55 -08:00
Justin Hernandez
be9f2d8f8b Consolidate RN test app Android MRZ scanner onto shared SDK handler (#1817)
* first pass at consolidation work

* fix gap

* update spec

* fix pipeline

* pr feedback
2026-03-06 10:10:55 -08:00
Justin Hernandez
62a11cdca3 chore: rename kmp sdk test app folder (#1815)
* chore: rename kmp sdk test app folder

* update ignore

* fix path
2026-03-05 18:37:46 -08:00
Justin Hernandez
d4c52af7e3 kmp ci coverage (#1814)
* save kmp coverage work

* clean up

* move to archive

* fix ci

* update workflows

* fix build error

* fix

* ci fix
2026-03-05 18:35:35 -08:00
Justin Hernandez
d1962734db Add Social Login Demo (Google + Apple) with navigation and test mocks (#1806)
* chore: bump firebase to v21 and clean up Podfile

* feat: add social login demo screen

* pr feedback

* pr feedback

* fixes

* add android values to ci

* feedback
2026-03-03 18:53:11 -08:00
Justin Hernandez
d5001eef8d Add RN SDK test app harness and update spec validation scope (#1798)
* fill gps

* pr feedback

* add easy demo install script, sort package.json files

* get app running

* fix ios running

* rename app

* fix pipeline issues

* pr feedback

* fix pipelines

* fix

* update
2026-03-02 19:52:23 -08:00
Javier Cortejoso
a0bff1bbc2 Update mobile-e2e.yml: Reenable e2e-ios (#1795)
It had been disabled while testing Android e2e
2026-02-27 07:28:22 -08:00
Justin Hernandez
ac844ee00e SELF-2034: fix and implement android e2e (#1792)
* Add tmate session to debug e2e workflow

* Don't run ios e2e

* Debug wip

* Debug wip

* Debug wip

* Enhance mobile E2E workflow by adding pre-installation step for emulator dependencies. This ensures the necessary Android SDK components are available for testing, improving the reliability of the build verification process.

* Add KVM group permissions setup to mobile E2E workflow

This update introduces a step to enable KVM group permissions in the mobile E2E workflow. This change ensures that the necessary permissions are configured for KVM, enhancing the environment setup for emulator testing and improving overall build verification reliability.

* Run e2e in self-hosted runners

* Fix JVM install

* Fix JVM install

* KVM check

* Refactor KVM access check in mobile E2E workflow

This update modifies the KVM access check step to provide a warning if /dev/kvm is not found, allowing the emulator to run in software mode instead of failing the workflow. Additionally, it dynamically adjusts the emulator options based on KVM availability, improving performance and flexibility in the testing environment.

* Adding tmate for debugging

* Adding retry logc to sdkmanger install

* Changing android channel to stable

* Add installation of emulator runtime dependencies in mobile E2E workflow

This update introduces a step to install necessary runtime dependencies for the Android emulator, ensuring a smoother testing environment and improving the reliability of the mobile end-to-end testing process.

* Fix APK install command

* Update Android api

* Update android emulator version

* Add E2E test script to mobile workflow

This commit introduces a new script for running end-to-end tests on the Android emulator. The script handles app installation and execution of Maestro tests, improving the organization and readability of the workflow. The previous inline commands have been replaced with a dedicated script, enhancing maintainability and clarity in the testing process.

* fix e2e test

* improve maestro  test

* try workflow again

* attempt fix

* fix

* another try

* clean up wording to reflect it's fixed

---------

Co-authored-by: Javier Cortejoso <javier.cortejoso@gmail.com>
2026-02-26 15:14:57 -08:00
Justin Hernandez
7f43ade300 Sync Android/iOS build files when applying mobile version bumps (#1617)
* Update mobile version apply

* updates

* tweaks; single source of file truth

* fix workflow

* pr feedback
2026-02-23 15:08:41 -08:00
Justin Hernandez
b5510f565d pass var down (#1758) 2026-02-16 00:41:44 -08:00
Justin Hernandez
709f7b36b2 chore: code quality feedback for 2.9.16 (#1754)
* code quality feedback

* agent feedback
2026-02-15 21:54:29 -08:00
Javier Cortejoso
522ced4f20 chore: NPM publish using Trusted Publishing (#1729)
* chore: simplify npm publish workflow by removing NPM token checks

- Removed redundant checks for NPM_TOKEN before publishing packages to npm.
- Updated publish result messages to reflect the use of Trusted Publishers (OIDC) for package publishing.
- Streamlined the workflow for better clarity and efficiency.

* chore: update npm publish workflow to use ubuntu-slim

- Changed the runner from 'ubuntu-latest' to 'ubuntu-slim' for improved efficiency and reduced resource usage during the npm publish process.

* chore: enhance npm publish workflow with dry run option

- Added a 'dry_run' input to the npm publish workflow to validate authentication and Trusted Publishers without uploading packages.
- Updated publish result messages to indicate when a dry run is completed, improving feedback during the publishing process.

* chore: refine npm publish workflow by removing strict mode input

- Eliminated the 'strict_mode' input from the npm publish workflow to simplify the process.
- Removed associated error handling comments and environment variable for stricter publish mode.
- Streamlined the workflow for improved clarity and efficiency during package publishing.

* chore: update npm publish workflow to use npx for publishing

- Replaced `yarn npm publish` with `npx npm@latest publish` to ensure the latest npm CLI is used for package publishing.
- Removed unnecessary `yarn config set npmPublishAccess` commands to streamline the workflow.
- Maintained the existing dry run functionality for testing without actual publishing.

* chore: enhance npm publish workflow to include version tagging

- Updated the npm publish workflow to dynamically determine the package version and apply a beta tag for pre-release versions.
- This change ensures that the correct versioning is maintained during the publishing process, improving clarity for users regarding package stability.
- Retained existing dry run functionality for testing without actual publishing.

* chore: remove npm publish command from package.json files

- Eliminated the `publish` script from multiple package.json files across contracts, sdk/core, sdk/qrcode, and sdk/qrcode-angular.
- This change streamlines the package management process by removing unnecessary publish commands, ensuring a cleaner configuration for future development.

* Temporary bump versions for check package publishing

* Revert "Temporary bump versions for check package publishing"

This reverts commit 180f5d538a.

* chore: add version check before npm publishing

- Implemented a version check in the npm publish workflow to prevent publishing of already published package versions.
- This enhancement ensures that developers are notified to bump the version in package.json if the version is already published, improving the publishing process and reducing errors.

* chore: improve npm publish workflow with enhanced outcome handling

- Updated the npm publish workflow to include detailed outcome handling for publish results, including checks for version publication status and improved messaging for skipped or failed publishes.
- This enhancement provides clearer feedback to developers regarding the publishing process, ensuring they are informed about the status of their package versions and necessary actions to take.

* chore: update npm publish workflow to include yarn packing for workspace resolution

- Added steps to pack each workspace using `yarn pack` before publishing to npm, ensuring that the correct package is published from each directory.
- This change resolves issues related to workspace protocol and improves the reliability of the publishing process across multiple packages.

* chore: simplify npm publish workflow by removing version check step

- Removed the version check for publish-msdk, as it did not work for private packages.
- Updated outcome handling to ensure clear messaging for skipped publishes without the version check dependency, improving overall workflow clarity.
2026-02-15 21:04:17 -08:00
Justin Hernandez
9ad5388f05 feat: introduce kmp sdk & demo app (#1749)
* add kotlin debug app

* add specs

* first kmp sdk version

* add deploy script

* save working nfc implementation

* save demo app flow wip

* agent feedback

* show viewfinder on mrz

* save working scan

* add kotlin formatting

* remove mrz overlay

* fix expiry date

* add feedback to mrz san

* save improved nfc scanning

* save wip

* save gitignore and md state

* add logging and error handling. get iOS demo app working

* format

* add swift formatting

* enable iOS camera

* save ios mrz implementation

* nfc scanning works

* final optimizations

* add tests

* fixes

* better linting

* agent feedback

* bug fixes

* formatting

* agent feedback

* fix app breaking on run

* consolidate kotlin and swift clean up commands

* fix pipeline by installing swiftlint

* fix blurry scanning

* fix ci

---------

Co-authored-by: turnoffthiscomputer <colin.remi07@gmail.com>
2026-02-15 12:03:12 -08:00
Justin Hernandez
df208e787b chore: fix staging pipelines for 2.9.15 (#1715)
* fix versions

* update publish logic
2026-02-06 13:27:20 -08:00
Justin Hernandez
7acc9bb2a6 chore: fix failing mobile demo ios e2e tests (#1710)
* fix failing mobile demo ios e2e tests

* temp test

* add patch. update files

* run demo e2e patch

* sort package json

* disable running on dev
2026-02-05 13:15:05 -08:00
Justin Hernandez
2ccc6600cb update xcode version (#1699) 2026-02-05 07:50:21 -08:00
Javier Cortejoso
a7b790d41c chore: modify circuits-build.yml to reduce runner memory allocation from 64ram to 32ram 2026-02-02 14:54:24 +01:00
Javier Cortejoso
0a256e0aaa chore: update circuits-build.yml to change runner specifications for improved build performance 2026-02-02 12:08:16 +01:00
Javier Cortejoso
db28b8a130 chore: update circuits-build.yml to clarify build timeout and enhance circuit build steps 2026-02-02 11:46:29 +01:00
Justin Hernandez
3687993780 fix failing test (#1677) 2026-01-30 13:06:08 -08:00
Justin Hernandez
8da076cf0d Bump Babel, TypeScript, React Native and assorted dependencies; refresh lockfile (#1606)
* Update dependency versions

* Fix gesture handler Android dependency (#1611)

* Patch screens codegen type (#1609)

* Downgrade Sentry React Native (#1612)

* fix patches and packages

* downgrade versions for gesture handler and screens

* agent feedback

* fix ios building

* allow ios tets to pass

* formatting

* make cache more resilient

* Address CodeRabbitAI review comments

This commit addresses all 7 unresolved CodeRabbitAI comments on PR #1606:

Patch-package error handling (comments #1, #2, #3):
- stderr capture already implemented in both root and workspace patch runs
- Add CI warning when patches fail silently instead of exiting with 0
- Log completion status in CI mode for visibility

Critical Mixpanel dependency fix (comment #5):
- Add explicit Mixpanel-swift pod declaration to fix E2E build failures
- Ensures Mixpanel is available even when NFCPassportReader is skipped during E2E testing

React-native-web validation (comment #4):
- Verified no usage of deprecated findNodeHandle, pointerEvents: 'box-none', or createPortal
- Safe to upgrade from 0.19 to 0.21.2

CI workflow improvements (comments #6, #7):
- Create cache-sdk-build composite action for consistent SDK build artifact caching
- Replace all direct actions/cache@v4 usage with cache-yarn composite action
- Replace all direct actions/cache/restore@v4 and save@v4 with cache-sdk-build
- Add nested require() validation step before tests to fail fast on problematic patterns

All changes follow repository coding guidelines for CI caching and test memory optimization.

* Extend cache composite actions to all SDK workflows

This commit extends the caching standardization from PR #1606 to include
mobile-sdk-ci.yml and core-sdk-ci.yml workflows.

New composite actions created:
- cache-mobile-sdk-build: For mobile SDK build artifacts
- cache-core-sdk-build: For core SDK build artifacts

Workflow updates:
- mobile-sdk-ci.yml: Replaced 5 instances of direct actions/cache with cache-mobile-sdk-build
- core-sdk-ci.yml: Replaced 4 instances of direct actions/cache with cache-core-sdk-build

All SDK CI workflows now use consistent caching patterns via composite actions,
following the AGENTS.md guideline: "Use shared composite actions from .github/actions
for CI caching instead of calling actions/cache directly."

Benefits:
- Consistent caching across all SDK workflows (qrcode, mobile, core)
- Centralized cache configuration - easier to maintain
- Follows established patterns from qrcode-sdk-ci.yml

* downgrade react-native-svg

* update pod lock file

* sort
2026-01-28 12:47:32 -08:00
Javier Cortejoso
a7fb017a49 chore: increase build timeout to 12 hours in circuits-build.yml (#1664) 2026-01-28 13:55:13 +05:30
Nesopie
41a4d9374d Ci/kyc (#1658)
* ci: add kyc to the workflow and rm new aadhaar nullifier logic

* fix: true spelling
2026-01-27 19:38:28 +05:30
Justin Hernandez
ba856226d8 SELF-1812: integrate sumsub into mobile app (#1650)
* sumsub initial pass

* add sumsub tee url

* agent feedback and fixes

* update lock

* agent feedback

* fix types

* agnet feedback

* fix mock

* agent feedback

* lazy load sumsub screen

* white button color

* fix lint

* add debug url link

* allow us to see recordings

* debug maestro run

* disable e2e screen recording for now. don't load sumsub logic when running e2e test

* remove lazy loading

* skip installing sumsub plugin

* retest ios e2e

* get e2e tests passing

* clean up
2026-01-26 14:06:36 -08:00
Justin Hernandez
9d092e410b Include app version in release calendar PR titles (#1649)
* Include app version in release PR titles

* agent feedback

* agent feedback
2026-01-25 17:45:49 -08:00
Justin Hernandez
8c30720a29 allow os target labels (#1594) 2026-01-12 14:20:26 -08:00
Justin Hernandez
d02a730970 remove option to change target bump build pr branch. default to dev (#1550) 2026-01-06 12:59:16 -08:00
Javier Cortejoso
09e5ea1bf7 chore: enhance mobile E2E workflow for iOS simulator verification (#1532)
- Added checks for simctl availability and ensured necessary simulator directories exist.
- Improved app installation verification with graceful error handling and fallback checks.
- Enhanced Maestro test execution with detailed output handling and cleanup error suppression.
- Verified the existence of the Maestro test file before execution to prevent failures.
2025-12-26 15:36:32 +01:00
Justin Hernandez
6172497abf chore: upgrade yarn to 4.12.0 (#1530)
* use yarn 4.12.0

* upgrade tsx

* update 4.6.0 references to 4.12.0

* update lock file

* update lock file

* update lock
2025-12-25 12:12:38 -08:00
Javier Cortejoso
8c96f6fd5c Merge pull request #1523 from selfxyz/jcortejoso/no-path-filter (#1528)
SELF-1684: Ensure checks are run with pull requests to staging/main
2025-12-25 01:05:09 +01:00
Javier Cortejoso
2a092f5571 chore: Using Namespace.so for MacOS Runners (#1500)
* chore: update CI workflows to include Java setup and modify runner environments

- Added Java installation checks and setup steps to multiple CI workflows to ensure Java is available for builds.
- Changed runner environments for iOS builds from `macos-latest-large` to `namespace-profile-apple-silicon-6cpu` for better resource management.
- Updated push triggers for CI workflows to include specific branches and paths for more controlled execution.

* refactor: streamline AES-GCM encryption tag validation in encryptAES256GCM function

- Removed redundant checks for the AES-GCM authentication tag, simplifying the code while maintaining functionality.
- Updated the return structure to directly convert the authentication tag to a binary format, enhancing clarity and efficiency.

* chore: add Actionlint configuration for custom runner labels

* chore: update mobile deployment workflows for testing configuration

* chore: included a step to set the INSTALL_JAVA environment variable to false

* chore: update logging in setup-native-source script for improved debugging

* chore: simplify mobile CI workflow by removing redundant iOS and Android build steps

- Removed extensive iOS and Android build steps from the mobile CI workflow, as build verification is now handled by the mobile-e2e.yml workflow.

* chore: update mobile workflows to remove push triggers for improved clarity

- Removed push triggers from mobile CI, E2E, and bundle analysis workflows to streamline execution and focus on pull request events.
- This change enhances workflow clarity and reduces unnecessary runs on branch pushes.

* Revert "chore: simplify mobile CI workflow by removing redundant iOS and Android build steps"

This reverts commit 30d5f585c2e7d74355452d4a4a2bd809c378c983.

* Updated the conditions for running iOS and Android build jobs to only trigger on workflow dispatch events, reducing unnecessary executions.

* chore: enhance mobile CI workflows with push triggers for improved execution control

- Added push triggers for dev, staging, and main branches in mobile bundle analysis, E2E, and demo E2E workflows to ensure builds are triggered on relevant changes.
- Included conditions for running iOS E2E tests based on issue comments, allowing for more flexible testing workflows.

* Addind workflow_dispatch option

* chore: refine mobile E2E workflows by removing issue comment triggers

- Eliminated issue comment event triggers from mobile E2E workflows to streamline execution and focus on workflow dispatch and push events.
- This change enhances clarity and reduces unnecessary complexity in the CI process.

* chore: remove checkout action from npm publish workflow

- Eliminated the checkout action from the npm publish workflow to streamline the process and reduce unnecessary steps.
- This change aims to enhance the efficiency of the CI pipeline.
2025-12-22 17:15:37 +01:00
Javier Cortejoso
4b09e5b96f Remove personal access token (#1481)
* Refactor NFC scanner tests to use a global variable for platform OS, allowing dynamic switching between iOS and Android during tests. This change improves test isolation and avoids hoisting issues with jest.mock.

* feat: add GitHub App token generation action for self repositories

- Introduced a new action to generate GitHub App tokens for accessing repositories within the selfxyz organization.
- Updated multiple workflows to utilize the new action for token generation, ensuring secure access to private repositories during CI processes.
- Modified Podfile and scripts to support authentication using the generated token, enhancing the cloning of private modules in CI environments.

* chore: enhance CI workflows with Git authentication for CocoaPods

- Updated multiple CI workflows to include a step for configuring Git authentication for CocoaPods, ensuring secure access to private repositories without embedding credentials in URLs.
- Added masking for sensitive tokens in logs to enhance security during CI processes.
- Modified the Podfile to avoid printing authentication details in CI logs, improving overall security practices.

* chore: enhance CI workflows with optional Git authentication configuration

- Added new inputs to the GitHub action for generating GitHub tokens, allowing optional configuration of a ~/.netrc entry for Git authentication.
- Updated multiple CI workflows to utilize the new configuration, improving security and simplifying access to private repositories during builds.
- Removed redundant Git authentication steps from workflows, streamlining the CI process while maintaining secure access to necessary resources.

* chore: update Podfile for secure Git authentication in CI

- Modified the Podfile to enhance security by avoiding the embedding of credentials in URLs for accessing the NFCPassportReader repository during CI processes.
- Added comments to guide developers on using workflow-provided authentication methods, improving overall security practices in the project.
2025-12-12 12:38:23 +01:00
Aaron DeRuvo
fc82b6b2b3 Prepares app for Euclid (#1473)
* setup IS_EUCLID build variable for conditionally using euclid desgins
create a headless header that only handles the status bar, for the new screens since they manage their own
make sure new screens get proper insets
add recoveryphrase 3.0
fix country picker



* this lint runs twice. once in repo wide lint and once here. so lets just run once to save resources



Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-12-09 12:56:05 +01:00
Javier Cortejoso
3e9c209973 chore: switch mobile CI runners from macOS to Ubuntu (#1458)
Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
2025-12-08 09:55:01 +01:00
Justin Hernandez
b2987ffd54 workflow fixes (#1478) 2025-12-07 15:42:51 -08:00
Justin Hernandez
64ab5fc91c Minor app fixes two point nine rd2 (#1462)
* better tests

* lockfile naming fixes

* format

* fix ci issues
2025-12-02 22:20:17 -08:00
Justin Hernandez
569c606776 chore: remove gitguardian references (#1461) 2025-12-02 21:46:06 -08:00
Justin Hernandez
71a6b49140 small collection bugfixes for two point nine (#1446)
* fix addhaar typo

* consolidate mobile app links and add tests

* fix caching issues for pipelines

* fix gitleaks

* update binary merkle root.circom package source

* fix cache

* update path

* rename lockfile

* fix qrcode error

* fix mobile ci tests and prettier

* fix qr code typing

* fix qrcode pipelines

* fix integration test
2025-12-02 13:03:50 -08:00
Aaron DeRuvo
7899c239cc Three/country picker (#1448)
* use 3.0 country picker

* get blurview working in app
add navigation adapter to sdk
render

* fix fonts and double view registration issues

* dont need this script as we use peer deps now

* fix our package installs





* prayed to the false idol of claude to resolve installing anon-aadhar from a specific commit from a monorepo

* fix route types


* add peer deps to demo

---------

Co-authored-by: Leszek Stachowski <leszek.stachowski@self.xyz>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-12-01 16:08:09 +01:00
Justin Hernandez
cadd7ae5b7 SELF-1192: fix oom tests (#1429)
* fix oom tests?

* update tests

* try fixing tests again

* fix: unblock mobile app jest runner

* fix corrupt yarn lock

* Reduce heavy React Native usage in tests (#1436)

* Reduce heavy React Native usage in tests

* Stabilize mobile tests

* prettier

* ignore podfile.lock

* fix test and gitleaks

* fix path

* update

* fix tests

* address tamagui concern
2025-11-20 11:59:00 -03:00
Justin Hernandez
41553bbbb7 Prevent mobile deploy on auto-closed PRs (#1433)
* Prevent mobile deploy on auto-closed PRs

* Fix auto-closed PR guard in mobile deploy
2025-11-19 10:19:44 -03:00
Justin Hernandez
c50db06eee dev fixes for release 2.9.1 (#1428)
* update lock

* fix types

* bump version

* fix nested react requires

* fix heavy tests

* address fake mocks

* fix test

* remove last borked react test
2025-11-18 21:01:02 -03:00
Leszek Stachowski
60e1cb3fc5 SELF-1198: PointsInfo screen (#1410) 2025-11-17 15:30:33 +01:00
Nesopie
642d532dd9 fix: workflow file for npm publish (#1406) 2025-11-12 18:54:38 +05:30
Nesopie
5c973ade40 feat: use npm trusted publishing (#1405) 2025-11-12 18:48:51 +05:30
Seshanth.S
c4dbb902a3 SELF-1060: Move passport-reader (#1349)
* rm passport-reader

* update CI scripts

* yarn nice

* update android workflow files

* ignore leaks

* fix write access error

* ignore passport read build.gradle file

* update message condition

* fix read access

* revert earlier changes. the failures were do to token permissions

* fix wasm test

* update jest

* fix tests

* simplify tests to avoid oom issues

* fix tests

* fix notification test

* fix nfcScanner tests

---------

Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
2025-11-11 16:14:32 -08:00
turnoffthiscomputer
3d0e1b4589 feat: 2.9 (#1325)
* 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>
2025-11-11 10:37:05 -08:00