@@ -328,7 +328,7 @@ export const createRepoStateSlice: StateCreator<
328328 ) ,
329329
330330 registerCompletion : async ( client ) => {
331- if ( get ( ) . autoCompletion || unregister ) return ;
331+ if ( get ( ) . autoCompletion || get ( ) . unregisterCompletionHandler ) return ;
332332 console . log ( get ( ) . user ) ;
333333 if (
334334 get ( ) . user . codeiumAPIKey === undefined ||
@@ -348,26 +348,21 @@ export const createRepoStateSlice: StateCreator<
348348 set ( { user : { ...get ( ) . user , codeiumAPIKey : api_key } } ) ;
349349 }
350350 }
351- console . log ( "registerCompletion " , api_key , name ) ;
351+ console . log ( "get api key " , api_key , name ) ;
352352 }
353353 } catch ( e ) {
354- console . log ( "registerCompletion error" , e ) ;
354+ console . log ( "api key error" , e ) ;
355355 }
356356 }
357357 const apiKey = get ( ) . user . codeiumAPIKey ;
358358 const completionProvider = new MonacoCompletionProvider ( apiKey ) ;
359359 // const completionProvider = new MonacoCompletionProvider();
360- console . log ( "completionProvider" , completionProvider ) ;
361- console . log ( monaco . editor . getModels ( ) ) ;
362- monaco . editor . getModels ( ) . forEach ( ( model ) => {
363- console . log ( "model" , model . getValue ( ) ) ;
364- } ) ;
365360 const { dispose } = monaco . languages . registerInlineCompletionsProvider (
366361 { pattern : "**" } ,
367362 completionProvider
368363 ) ;
369364 console . log ( "register completion" , dispose ) ;
370- unregister = dispose ;
365+ set ( { unregisterCompletionHandler : dispose } ) ;
371366 console . log ( "state.autoCompletion" , get ( ) . autoCompletion ) ;
372367 // monaco.editor.registerCommand(
373368 // "codeium.acceptCompletion",
@@ -387,33 +382,26 @@ export const createRepoStateSlice: StateCreator<
387382 completionProvider . acceptedLastCompletion ( apiKey , completionId ) ;
388383 }
389384 ) ;
385+
386+ set ( { autoCompletion : true } ) ;
390387 } ,
391388
392- unregisterCompletion : ( ) =>
393- set (
394- produce ( ( state ) => {
395- console . log ( "unregisterCompletion" , state . unregisterCompletionHandler ) ;
396- if ( typeof unregister === "function" ) {
397- console . log ( "unregister" , unregister ) ;
398- unregister ( ) ;
399- unregister = null ;
400- }
401- } )
402- ) ,
389+ unregisterCompletion : ( ) => {
390+ const dispose = get ( ) . unregisterCompletionHandler ;
391+ if ( typeof dispose === "function" ) {
392+ console . log ( "unregister" , dispose ) ;
393+ dispose ( ) ;
394+ set ( { unregisterCompletionHandler : null , autoCompletion : false } ) ;
395+ }
396+ } ,
403397
404- flipAutoCompletion : ( client ) =>
405- set (
406- produce ( ( state ) => {
407- console . log ( "state.autoCompletion" , state . autoCompletion ) ;
408- if ( state . autoCompletion ) {
409- state . unregisterCompletion ( ) ;
410- } else {
411- state . registerCompletion ( client ) ;
412- }
413- state . autoCompletion = ! state . autoCompletion ;
414- console . log ( "unregister" , state . unregisterCompletionHandler ) ;
415- } )
416- ) ,
398+ flipAutoCompletion : ( client ) => {
399+ if ( get ( ) . autoCompletion ) {
400+ get ( ) . unregisterCompletion ( ) ;
401+ } else {
402+ get ( ) . registerCompletion ( client ) ;
403+ }
404+ } ,
417405} ) ;
418406
419407function loadRepo ( set , get ) {
0 commit comments