Skip to content
Snippets Groups Projects
Select Git revision
  • cd78877fd9f8288e9a1176ac4814c9a1e1cf0cb4
  • master default protected
  • docs-improve_user_path_description
  • fix-pipeline
  • ci-change_exercises_image_registry
  • feat-merge_recorder_in_extension
  • feat-default_folder
  • feat-change_user
  • develop protected
  • refactor-mission
  • feat-exercise_automatic_save
  • docs-improve_documentation
  • feat-create_little_container_for_developer
  • feat-local-dev
  • 0.1.12
  • 0.1.11
  • 0.1.10
  • 0.1.5
18 results

README.md

Blame
  • extension.ts 1.41 KiB
    import { window, ExtensionContext, workspace, commands } from 'vscode';
    import isDocker from './core/utils/isdocker';
    import Recorder from './recorder/recorder';
    import { extensionError as error } from './recorder/utils/log';
    import { DepNodeProvider } from './view/deadlockPanel';
    import { CommandTreeProvider } from './view/CommandTree';
    import StartedMissionsView from './view/startedMissionsView';
    import Controller from './core/controller';
    
    export async function activate(context: ExtensionContext) {
      new Controller(context);
      window.showInformationMessage('Bienvenue sur Deadlock!');
    
      const workspaceFolders = workspace.workspaceFolders?.toString() ?? '';
      if (!workspaceFolders) window.showInformationMessage('Pas de répertoires ouverts');
      const deadlockPanelProvider = new DepNodeProvider();
      window.registerTreeDataProvider('deadlockPanel', deadlockPanelProvider);
      window.registerWebviewViewProvider('startedMissions', new StartedMissionsView());
    
      if (isDocker()) {
        commands.executeCommand('setContext', 'deadlock.inContainer', true);
        window.registerTreeDataProvider('commandTree', new CommandTreeProvider());
        try {
          Recorder.instance.run();
        } catch (e) {
          error('Could not run recorder');
          error(JSON.stringify(e));
          window.showErrorMessage("Le recorder n'a pas pu être lancé");
        }
      } else {
        commands.executeCommand('setContext', 'deadlock.inContainer', false);
      }
    }