@@ -5,17 +5,48 @@ let antigravityAuthState = null;
55let antigravityPollingInterval = null ;
66let antigravityAbortController = null ;
77let antigravityPollingActive = false ;
8+ let antigravityLocalServerStarted = false ;
89
910async function startAntigravityAuthFlow ( ) {
1011 try {
1112 console . log ( 'Starting Antigravity authentication flow...' ) ;
13+ await startAntigravityLocalServer ( ) ;
1214 await getAntigravityAuthUrl ( ) ;
1315 showAntigravityAuthDialog ( ) ;
1416 } catch ( error ) {
1517 console . error ( 'Error starting Antigravity auth flow:' , error ) ;
1618 const msg = ( error && ( error . message || String ( error ) ) ) || 'Unknown error' ;
1719 showError ( 'Failed to start Antigravity authentication flow: ' + msg ) ;
20+ if ( antigravityLocalServerStarted ) {
21+ await stopAntigravityLocalServer ( ) ;
22+ }
23+ }
24+ }
25+
26+ async function startAntigravityLocalServer ( ) {
27+ const currentMode = localStorage . getItem ( 'type' ) || 'local' ;
28+ let localPort = null , baseUrl = null ;
29+ if ( currentMode === 'local' ) {
30+ const config = await configManager . getConfig ( ) ;
31+ localPort = config . port || 8317 ;
32+ } else {
33+ configManager . refreshConnection ( ) ;
34+ baseUrl = configManager . baseUrl ;
35+ if ( ! baseUrl ) throw new Error ( 'Missing base-url configuration' ) ;
1836 }
37+ await window . __TAURI__ . core . invoke ( 'start_callback_server' , {
38+ provider : 'antigravity' ,
39+ listenPort : 51121 ,
40+ mode : currentMode ,
41+ baseUrl : baseUrl ,
42+ localPort : localPort
43+ } ) ;
44+ antigravityLocalServerStarted = true ;
45+ }
46+
47+ async function stopAntigravityLocalServer ( ) {
48+ try { await window . __TAURI__ . core . invoke ( 'stop_callback_server' , { listenPort : 51121 } ) ; } catch ( _ ) { }
49+ antigravityLocalServerStarted = false ;
1950}
2051
2152async function getAntigravityAuthUrl ( ) {
@@ -150,7 +181,7 @@ async function startAntigravityAuthPolling() {
150181 }
151182}
152183
153- function cancelAntigravityAuth ( ) {
184+ async function cancelAntigravityAuth ( ) {
154185 try {
155186 antigravityPollingActive = false ;
156187 document . removeEventListener ( 'keydown' , handleAntigravityEscapeKey ) ;
@@ -169,6 +200,9 @@ function cancelAntigravityAuth() {
169200
170201 antigravityAuthUrl = null ;
171202 antigravityAuthState = null ;
203+ if ( antigravityLocalServerStarted ) {
204+ await stopAntigravityLocalServer ( ) ;
205+ }
172206 } catch ( error ) {
173207 console . error ( 'Error canceling Antigravity auth:' , error ) ;
174208 }
0 commit comments