Skip to content

refactor: keyless cloud sync UX (OK-50738 OK-51225)#10727

Draft
franco-chan wants to merge 18 commits intoxfrom
refactor/keyless-cloud-sync-ux
Draft

refactor: keyless cloud sync UX (OK-50738 OK-51225)#10727
franco-chan wants to merge 18 commits intoxfrom
refactor/keyless-cloud-sync-ux

Conversation

@franco-chan
Copy link
Collaborator

@franco-chan franco-chan commented Mar 18, 2026

Summary

  • Redesign Cloud Sync page with 5-scenario state machine (no KW / has KW sync off / KW active / ID user / KW removed)
  • Auto-enable keyless cloud sync on wallet creation (all entry points)
  • Auto-migrate ID → Keyless sync when creating KW with ID sync active
  • Show actionable error toast when background sync fails silently
  • Remove auto-lock restriction for keyless sync mode
  • Add Toast.dismiss() API and custom icon support

Test plan

🔗 OK-50738 | OK-51225

…mode

- Replace all hardcoded strings with i18n keys via Lokalise
- Add mode-aware security content in CloudSyncInfo page
- Keyless mode shows wallet-derived encryption description
- OneKey ID mode keeps original password-based description
- Update Scenario 1 layout with cloud icon and CTA
- Use restore_keyless_wallet for Scenario 5 alert button
Apply the same auto-lock duration check (disallow 4h/Never) when
enabling keyless wallet sync, matching the existing OneKey ID sync
behavior. Also fix migration step order, add error feedback, gate
reloadServerUserInfo to Scenario 4, remove dead ref, and replace
hardcoded string with i18n key.
…ions

- Auto-enable keyless cloud sync on wallet creation (all entry points)
- Auto-migrate ID→Keyless sync when creating KW with ID sync active
- Show actionable error toast when ID sync fails silently in background
- Add Toast.dismiss() API and custom icon support for toast messages
- Simplify Cloud Sync page: new illustration, wallet info ListItem,
  remove success toasts, remove keyless auto-lock restriction
- Hide Debug button behind platformEnv.isDev in production builds
- Add !kwLoading guard to isActiveKwUser to prevent Scenario 3 flash
- Add isSubmittingRef guard to handleMigrateToKeyless to prevent
  concurrent migration on rapid double-tap
@revan-zhang
Copy link
Contributor

revan-zhang commented Mar 18, 2026

Snyk checks have passed. No issues have been found so far.

Status Scan Engine Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

- Change dismissToast param from string|number to string (native toast
  lib only accepts string|undefined)
- Move actionLayout from $sm responsive prop to direct prop (Tamagui
  $sm only accepts style props, not custom variants)
- Remove OneKey Cloud item from PrimeBenefitsList
- Remove OneKey Cloud slide from PrimeFeatures swiper
- Change PrimeDashboard ? button default feature to BulkCopyAddresses
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants