File size: 3,415 Bytes
1da8860
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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';

/**

 * VS Code Extension: SQL Query Builder and Database Schema Navigator

 *

 * Features:



 */

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

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

    // Status bar
    statusBarItem = vscode.window.createStatusBarItem(vscode.StatusBarAlignment.Right, 100);
    statusBarItem.text = '$(zap) 2d71a7e3';
    statusBarItem.tooltip = 'VS Code Extension: SQL Query Builder and Database Schema Navigator';
    statusBarItem.command = '2d71a7e3.activate';
    statusBarItem.show();
    context.subscriptions.push(statusBarItem);

    // Register commands
    let cmd0 = vscode.commands.registerCommand('2d71a7e3.activate', () => {
        vscode.window.showInformationMessage('VS Code Extension: SQL Query Builder and Database Schema Navigator: VS Code Extension: SQL Query Builder and Database Schema Navigator: Activate executed');
        outputChannel.appendLine(`[INFO] Command executed: VS Code Extension: SQL Query Builder and Database Schema Navigator: Activate`);
    });
    let cmd1 = vscode.commands.registerCommand('2d71a7e3.settings', () => {
        vscode.window.showInformationMessage('VS Code Extension: SQL Query Builder and Database Schema Navigator: VS Code Extension: SQL Query Builder and Database Schema Navigator: Open Settings executed');
        outputChannel.appendLine(`[INFO] Command executed: VS Code Extension: SQL Query Builder and Database Schema Navigator: Open Settings`);
    });
    let cmd2 = vscode.commands.registerCommand('2d71a7e3.run', () => {
        vscode.window.showInformationMessage('VS Code Extension: SQL Query Builder and Database Schema Navigator: VS Code Extension: SQL Query Builder and Database Schema Navigator: Run executed');
        outputChannel.appendLine(`[INFO] Command executed: VS Code Extension: SQL Query Builder and Database Schema Navigator: 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('2d71a7e3')) {
                const config = vscode.workspace.getConfiguration('2d71a7e3');
                const enabled = config.get<boolean>('enabled', true);
                if (enabled) {
                    statusBarItem.show();
                } else {
                    statusBarItem.hide();
                }
                outputChannel.appendLine(`[INFO] Configuration updated`);
            }
        })
    );

    outputChannel.appendLine(`[INFO] VS Code Extension: SQL Query Builder and Database Schema Navigator ready`);
    vscode.window.showInformationMessage('VS Code Extension: SQL Query Builder and Database Schema Navigator is now active!');
}

export function deactivate() {
    outputChannel?.appendLine('VS Code Extension: SQL Query Builder and Database Schema Navigator deactivated');
    outputChannel?.dispose();
    statusBarItem?.dispose();
}