Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • A Ahad Mobile
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Terraform modules
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • holatech
  • Ahad Mobile
  • Merge requests
  • !126

fix(qr): save and share My QR as images

  • Review changes

  • Download
  • Patches
  • Plain diff
Merged Hung Hoang requested to merge hunghoang/fix/my-qr-save-share-image into develop Oct 15, 2026
  • Overview 0
  • Commits 3
  • Pipelines 3
  • Changes 5

Bug: https://hola-tech.sg.larksuite.com/record/SBtlrVaHPeKJRZcvWlFldN4CgPe

Recording: https://screenrec.com/share/O06golstay

Fix: Save and Share now export the displayed My QR card as a real PNG, rather than a fake success alert or recipient text. Save succeeds only after Photos writes the file. Handle add-only permissions, denial/errors/retry, missing profile/layout, duplicate taps, same-tab reselection, and unmount. Normalize iOS paths and retain Android share attachments until safe native cache cleanup. No new dependencies or scanner/payment/CI-policy changes.

Native config: Explicit NSPhotoLibraryAddUsageDescription added. iOS binaries missing this key require a native rebuild; OTA JavaScript alone is insufficient.

Verified: Node 20.20.0 frontend 134 suites / 1362 tests passed, including 20 QR export regressions. Typecheck passed. Full ESLint: 0 errors / 29 existing warnings. Commitlint and whitespace passed. Independent source review approved. Genuine iOS native build passed.

Actual Maestro stdio MCP: add-only permission denial/grant, real USD and USDC PNG saves into Photos, native PNG share sheet, locally persisted share output with identical SHA-256, and saved image visible/decodable in Photos. Correct displayed profile and selected currency; strict localhost fixtures and zero financial operations.

Limits: No native Android/physical-iPhone or external social-app delivery test. Android permission/retention branches covered by unit tests. Existing Jest worker/timer teardown warnings remain.

Branch: hunghoang/fix/my-qr-save-share-image, originally based on develop d311966b, now synchronized with develop d123ed7a and targeting develop. The QR-validation changes already merged into develop are retained.

Conflict resolution (2026-10-16): merged develop d123ed7a into this source branch in 671fbff4, preserving both parents without rebasing or force-pushing. The shared QR screen retains both the validated scanner and the PNG export hook. Removed the obsolete Alert import and completed the existing focus-effect/colors test mocks; no behavioral assertions were removed.

Current combined-source verification on Node 20.20.0: QR/payment 10 suites / 203 tests passed; full FE 144 suites / 1556 tests passed; typecheck passed; full ESLint 0 errors / 29 existing warnings; commitlint/whitespace passed. Independent merge-resolution review approved with no findings. The native image-export hook and iOS configuration are unchanged from the previously verified source; native/Maestro validation was not rerun for this resolution. Existing Jest teardown warnings remain. CI on this merge commit is required before merge; this work does not merge MR126 into develop.

Edited Oct 16, 2026 by Hung Hoang
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: hunghoang/fix/my-qr-save-share-image