Files
BizGaze_Remote/mobile
Sravan 854bc86a6e feat(share-ext): fix double "Send to", Teams-style layout, clearer branding
Two things from testing (the in-sheet picker with avatars + multi-select works):

1. Double "Send to": after the extension sent, opening the app ALSO popped the web
   "Send to" modal for the same file. Cause: the extension wrote a safety-net
   manifest up front, which the app then picked up. Now the manifest represents an
   UNSENT share only — written solely when the extension can't send (no token) or a
   send fails. A successful in-sheet send clears the staged files and leaves nothing,
   so the app never re-offers it. Cancel also clears staged files (no orphans).

2. Layout aligned to the Teams reference:
   - Preview strip of thumbnails for what's being shared (image → the image, video →
     first frame via AVAssetImageGenerator, else a doc icon).
   - Radio selectors on the right — an always-visible empty circle that fills to a
     navy check when selected (clearer multi-select than an appear-on-select tick).
   - "Recent chats" section header; subtitle under each name (Direct message /
     Group · N members).
   - Clearer branding: bold white "Share to Biz Connect" on the navy bar.

Native-only — NEEDS A NEW iOS BUILD. Balance + selectors checked.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-24 18:25:15 +05:30
..

Biz Connect — Mobile app (Capacitor)

A Capacitor shell that loads the live Connect web UI (server.url in capacitor.config.json) and adds native push, camera/mic, and store distribution. See the overall plan in ../CLIENTS.md.

Android: follow the step-by-step in ANDROID_SETUP.md (project generation, icons/splash, permissions, Firebase/FCM, run, and Play Store build).

Prerequisites

  • Node + npm install here.
  • Android: Android Studio + SDK.
  • iOS: macOS + Xcode (+ an Apple Developer account to run on device / ship).

Setup

npm install
npm run assets           # generate app icons + splash from resources/
npx cap add android
npx cap add ios          # macOS only
npx cap sync

Run / build

npx cap open android     # build & run from Android Studio
npx cap open ios         # build & run from Xcode

Server origin

The app loads server.url from capacitor.config.json (default https://remote.bizgaze.com). For a local device test against a dev server, set it to your machine's LAN URL (and allow cleartext for plain http).

Native push (next step)

Native push uses the Capacitor Push Notifications plugin (FCM on Android, APNs on iOS) and a server endpoint to register device tokens — tracked in ../CLIENTS.md Phase B. This is separate from the existing Web Push (VAPID) the PWA already uses. Needs Google/Apple credentials to test end-to-end.

Shipping (gated on accounts)

  • Google Play: one-time $25; upload an AAB; signing key.
  • App Store: Apple Developer $99/yr; archive via Xcode; App Store Connect listing.