File size: 3,063 Bytes
21de149
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
import * as vscode from 'vscode';

/**

 * Database Schema Visualizer VS Code Extension

 *

 * Features:



 */

let outputChannel: vscode.OutputChannel;
let statusBarItem: vscode.StatusBarItem;

export function activate(context: vscode.ExtensionContext) {
    outputChannel = vscode.window.createOutputChannel('Database Schema Visualizer VS Code Extension');
    outputChannel.appendLine(`Database Schema Visualizer VS Code Extension v1.0.0 activated`);

    // Status bar
    statusBarItem = vscode.window.createStatusBarItem(vscode.StatusBarAlignment.Right, 100);
    statusBarItem.text = '$(zap) 743a0fe3';
    statusBarItem.tooltip = 'Database Schema Visualizer VS Code Extension';
    statusBarItem.command = '743a0fe3.activate';
    statusBarItem.show();
    context.subscriptions.push(statusBarItem);

    // Register commands
    let cmd0 = vscode.commands.registerCommand('743a0fe3.activate', () => {
        vscode.window.showInformationMessage('Database Schema Visualizer VS Code Extension: Database Schema Visualizer VS Code Extension: Activate executed');
        outputChannel.appendLine(`[INFO] Command executed: Database Schema Visualizer VS Code Extension: Activate`);
    });
    let cmd1 = vscode.commands.registerCommand('743a0fe3.settings', () => {
        vscode.window.showInformationMessage('Database Schema Visualizer VS Code Extension: Database Schema Visualizer VS Code Extension: Open Settings executed');
        outputChannel.appendLine(`[INFO] Command executed: Database Schema Visualizer VS Code Extension: Open Settings`);
    });
    let cmd2 = vscode.commands.registerCommand('743a0fe3.run', () => {
        vscode.window.showInformationMessage('Database Schema Visualizer VS Code Extension: Database Schema Visualizer VS Code Extension: Run executed');
        outputChannel.appendLine(`[INFO] Command executed: Database Schema Visualizer VS Code Extension: Run`);
    });
    context.subscriptions.push(cmd0);
    context.subscriptions.push(cmd1);
    context.subscriptions.push(cmd2);

    // Configuration change listener
    context.subscriptions.push(
        vscode.workspace.onDidChangeConfiguration(e => {
            if (e.affectsConfiguration('743a0fe3')) {
                const config = vscode.workspace.getConfiguration('743a0fe3');
                const enabled = config.get<boolean>('enabled', true);
                if (enabled) {
                    statusBarItem.show();
                } else {
                    statusBarItem.hide();
                }
                outputChannel.appendLine(`[INFO] Configuration updated`);
            }
        })
    );

    outputChannel.appendLine(`[INFO] Database Schema Visualizer VS Code Extension ready`);
    vscode.window.showInformationMessage('Database Schema Visualizer VS Code Extension is now active!');
}

export function deactivate() {
    outputChannel?.appendLine('Database Schema Visualizer VS Code Extension deactivated');
    outputChannel?.dispose();
    statusBarItem?.dispose();
}