Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
78 commits
Select commit Hold shift + click to select a range
130f2f3
onekeyid login page
franco-chan Dec 17, 2025
04313e2
social & otp
franco-chan Dec 18, 2025
f91e280
ui
franco-chan Dec 22, 2025
0e38666
fix conflix
franco-chan Dec 24, 2025
fedb6dc
refactor: rename setMainWindow function for clarity and update relate…
sidmorizon Dec 20, 2025
807d421
feat: enhance OAuth flow with oneKeyState handling and refactor relat…
sidmorizon Dec 20, 2025
abad74c
refactor: update OAuth callback paths and enhance state handling
sidmorizon Dec 20, 2025
2bbf4b5
refactor: update OAuth server to use system-assigned ports and improv…
sidmorizon Dec 20, 2025
3e8f1da
refactor: streamline OAuth flow in Chrome extension
sidmorizon Dec 20, 2025
39bece3
refactor: consolidate OAuth handling across platforms
sidmorizon Dec 22, 2025
a5d3d05
refactor: remove obsolete OAuth components and types
sidmorizon Dec 22, 2025
6ebc6f7
fix: google sign in for iOS
sidmorizon Dec 22, 2025
5b1b702
fix: ios google login
sidmorizon Dec 22, 2025
86917c6
fix: upgrade google sign in sdk
sidmorizon Dec 22, 2025
06890c1
fix: lint
sidmorizon Dec 22, 2025
faabbeb
feat: add Apple Sign-In setup guide
sidmorizon Dec 23, 2025
d443a0f
apple login
sidmorizon Dec 24, 2025
385a00b
fix(crypto): update crypto.subtle.digest test result
sidmorizon Dec 24, 2025
06f3b80
fix: lint
sidmorizon Dec 24, 2025
3891607
fix: lint
sidmorizon Dec 24, 2025
bd8071d
apple login
sidmorizon Dec 25, 2025
0cb3717
fix: add ios apple sign in entitlements
sidmorizon Dec 25, 2025
4cae995
ui
franco-chan Dec 25, 2025
ede6931
apple native login
sidmorizon Dec 25, 2025
c3098f6
ui
franco-chan Dec 26, 2025
fd3766a
Merge branch 'keyless-wallet-2' into fix/android-google-login
franco-chan Dec 26, 2025
3556d0d
Merge branch 'fix/android-google-login' of github.com:OneKeyHQ/app-mo…
sidmorizon Dec 26, 2025
6b0cce3
feat: add Keyless Wallet V2 functionality and update onboarding flow
sidmorizon Dec 26, 2025
c94929e
i18n
franco-chan Dec 26, 2025
d560f20
feat: enhance Keyless Wallet V2 with social login support and onboard…
sidmorizon Dec 26, 2025
3dd5150
fix: merge
sidmorizon Dec 26, 2025
8624503
fix: lint
sidmorizon Dec 26, 2025
fd75f09
responsive design
franco-chan Dec 27, 2025
5ab12ba
Merge branch 'fix/android-google-login' of github.com:OneKeyHQ/app-mo…
franco-chan Dec 27, 2025
81174cf
i18n & responsive design
franco-chan Dec 27, 2025
a6c5437
feat: enhance Keyless Wallet V2 with new onboarding features and debu…
sidmorizon Dec 27, 2025
bb50178
feat: refactor PinInputLayout to support forward ref and enhance focu…
sidmorizon Dec 27, 2025
cfd2742
Merge branch 'fix/android-google-login' of github.com:OneKeyHQ/app-mo…
sidmorizon Dec 27, 2025
c07a21f
fix: update onVerifyRes type to support Promise and ensure consistent…
sidmorizon Dec 27, 2025
579fb8b
refactor: streamline keyless wallet handling by replacing utility fun…
sidmorizon Dec 28, 2025
7795227
feat: add useKeylessWalletExistsLocal hook to check local keyless wal…
sidmorizon Dec 29, 2025
919bb4c
feat: implement Reset PIN flow for Keyless Wallet, including navigati…
sidmorizon Dec 29, 2025
135da8b
feat: enhance ServiceKeylessWallet to include juiceboxShareX and back…
sidmorizon Dec 29, 2025
b9dace9
feat: update Keyless Wallet onboarding flow with new modes for Reset …
sidmorizon Dec 29, 2025
9bd8b5f
feat: improve Keyless Wallet onboarding by enhancing PIN verification…
sidmorizon Dec 29, 2025
fbebb40
refactor: rename functions and update logic in Keyless Wallet service…
sidmorizon Dec 29, 2025
052faa1
animations & account selector
franco-chan Dec 30, 2025
91d9fb2
fix badge font size
franco-chan Dec 30, 2025
16af490
feat: enhance Keyless Wallet onboarding flow by adding refresh token …
sidmorizon Dec 30, 2025
f0b3870
feat: add error handling for keyless wallet retrieval and refresh tok…
sidmorizon Dec 30, 2025
006530c
Merge branch 'fix/android-google-login' of github.com:OneKeyHQ/app-mo…
sidmorizon Dec 30, 2025
26d3e73
refactor: remove socialLoginProvider prop from WalletAvatarProps and …
sidmorizon Dec 30, 2025
bee7d8b
refactor: adjust wallet creation flow in ServiceKeylessWallet to ensu…
sidmorizon Dec 31, 2025
12ec80c
fix: merge conlict
sidmorizon Dec 31, 2025
86ff353
fix: update Google OAuth client IDs in Info.plist and authConsts.ts f…
sidmorizon Dec 31, 2025
092b98c
feat: add display of Google OAuth client IDs in OneKeyIDApiTests for …
sidmorizon Dec 31, 2025
c04e861
feat: integrate Juicebox for Keyless Wallet discovery and recovery
sidmorizon Dec 31, 2025
da96db6
feat: implement juicebox api calls and optimize pin verification erro…
sidmorizon Dec 31, 2025
38b6214
fix: lint
sidmorizon Dec 31, 2025
b57c6cf
fix: improve error handling in ServiceKeylessWallet for backend share…
sidmorizon Dec 31, 2025
7f54a66
chore: add TODO comments for future enhancements in JuiceboxClient an…
sidmorizon Dec 31, 2025
fe52e9e
authentication page improvement: light & dark mode styles and layout
franco-chan Jan 2, 2026
52c8301
feat: add juicebox-sdk integration and keyless wallet reset debug fea…
sidmorizon Jan 4, 2026
89f0ba9
fix(kit): support google login in onboarding get started page
sidmorizon Jan 4, 2026
3f97d00
fix: owner id
sidmorizon Jan 4, 2026
08364ed
fix: add pre-install hook for GitHub URL configuration
originalix Jan 5, 2026
861dba9
fix: move pre-install hook to package.json for EAS build configuration
originalix Jan 5, 2026
9b12fa7
Update provisioning profiles and add JuiceboxSdk dependency
originalix Jan 5, 2026
8f768b0
chore: xcode profile
originalix Jan 6, 2026
8b5b25a
fix: update code signing settings and resolve JuiceboxSdkFfi linking …
originalix Jan 6, 2026
149f8f9
fix: merge
sidmorizon Jan 6, 2026
416a07a
fix(kit): add error toast for OAuth sign-in failures
sidmorizon Jan 6, 2026
025768e
fix(auth): fix iOS Google OAuth nonce handling and reorganize auth co…
sidmorizon Jan 6, 2026
b653f6a
Merge branch 'x' into fix/android-google-login
sidmorizon Jan 6, 2026
be00f0d
fix: build
sidmorizon Jan 6, 2026
b99eab7
Merge branch 'x' into fix/android-google-login
sidmorizon Jan 6, 2026
5ba70a2
Merge branch 'x' into fix/android-google-login
sidmorizon Jan 7, 2026
39ec34e
Merge branch 'x' into fix/android-google-login
sidmorizon Jan 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ __generated__
.clauderc
.tmp/
*.private_ai_docs.md
.cursor/plans/
dist
build-electron
.next
Expand Down
4 changes: 2 additions & 2 deletions apps/desktop/app/app.ts
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ import {
} from './resoucePath';
import { initSentry } from './sentry';
import { startServices } from './service';
import { setMainWindow } from './service/oauthLocalServer/oauthLocalServer';
import { setMainWindowForOAuthServer } from './service/oauthLocalServer/oauthLocalServer';

logger.initialize();
logger.transports.file.maxSize = 1024 * 1024 * 10;
Expand Down Expand Up @@ -564,7 +564,7 @@ async function createMainWindow() {
void browserWindow.loadURL(src);

// Set main window reference for OAuth server
setMainWindow(browserWindow);
setMainWindowForOAuthServer(browserWindow);

// Protocol handler for win32
if (isWin || isMac) {
Expand Down
80 changes: 80 additions & 0 deletions apps/desktop/app/service/appleAuth/appleAuth.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
/**
* Native Apple Sign-In service for macOS Desktop
*
* Uses the native apple-auth-macos module to perform Apple Sign-In
* with system UI (no browser required).
*/

import { OneKeyLocalError } from '@onekeyhq/shared/src/errors';

// eslint-disable-next-line import/no-relative-packages
import type { IAppleSignInResult } from '../../../native-modules/apple-auth-macos';

// Only load on macOS
const isMacOS = process.platform === 'darwin';

let appleAuthModule:
| typeof import('../../../native-modules/apple-auth-macos')
| null = null;

// Lazy load the native module
function getAppleAuthModule() {
if (!isMacOS) {
return null;
}

if (!appleAuthModule) {
try {
// eslint-disable-next-line @typescript-eslint/no-require-imports
appleAuthModule = require('../../native-modules/apple-auth-macos');
} catch (error) {
console.warn(
'Failed to load apple-auth-macos:',
error instanceof Error ? error.message : error,
);
return null;
}
}

return appleAuthModule;
}

/**
* Check if native Apple Sign-In is available.
* Requires macOS 10.15+ and the native module to be built.
*/
export function isAppleAuthAvailable(): boolean {
const module = getAppleAuthModule();
if (!module) {
return false;
}

try {
return module.isAvailable();
} catch {
return false;
}
}

/**
* Perform native Apple Sign-In.
*
* @returns Promise with identity token and nonce for Supabase
* @throws Error if sign-in fails or user cancels
*/
export async function signInWithApple(): Promise<IAppleSignInResult> {
const module = getAppleAuthModule();

if (!module) {
throw new OneKeyLocalError(
'Apple Sign-In native module is not available. ' +
'Make sure you are on macOS and the module is built.',
);
}

if (!module.isAvailable()) {
throw new OneKeyLocalError('Apple Sign-In requires macOS 10.15 or later');
}

return module.signIn();
}
Loading