driftdetect-vscode 0.9.33 → 0.9.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/package.json +14 -14
  2. package/.turbo/turbo-build.log +0 -4
  3. package/.turbo/turbo-lint.log +0 -47
  4. package/.turbo/turbo-test.log +0 -0
  5. package/LICENSE +0 -121
  6. package/dist/activation/activation-controller.d.ts.map +0 -1
  7. package/dist/activation/activation-controller.js +0 -235
  8. package/dist/activation/activation-controller.js.map +0 -1
  9. package/dist/activation/activation-phases.d.ts.map +0 -1
  10. package/dist/activation/index.d.ts.map +0 -1
  11. package/dist/client/connection-manager.d.ts.map +0 -1
  12. package/dist/client/connection-manager.js +0 -216
  13. package/dist/client/connection-manager.js.map +0 -1
  14. package/dist/client/index.d.ts.map +0 -1
  15. package/dist/client/language-client-factory.d.ts.map +0 -1
  16. package/dist/client/request-middleware.d.ts.map +0 -1
  17. package/dist/client/request-middleware.js +0 -85
  18. package/dist/client/request-middleware.js.map +0 -1
  19. package/dist/commands/command-router.d.ts.map +0 -1
  20. package/dist/commands/command-router.js +0 -129
  21. package/dist/commands/command-router.js.map +0 -1
  22. package/dist/commands/handlers/connection-handlers.d.ts.map +0 -1
  23. package/dist/commands/handlers/connection-handlers.js +0 -57
  24. package/dist/commands/handlers/connection-handlers.js.map +0 -1
  25. package/dist/commands/handlers/constants-handlers.d.ts.map +0 -1
  26. package/dist/commands/handlers/constants-handlers.js +0 -85
  27. package/dist/commands/handlers/constants-handlers.js.map +0 -1
  28. package/dist/commands/handlers/index.d.ts.map +0 -1
  29. package/dist/commands/handlers/pattern-handlers.d.ts.map +0 -1
  30. package/dist/commands/handlers/pattern-handlers.js +0 -127
  31. package/dist/commands/handlers/pattern-handlers.js.map +0 -1
  32. package/dist/commands/handlers/scan-handlers.d.ts.map +0 -1
  33. package/dist/commands/handlers/scan-handlers.js +0 -74
  34. package/dist/commands/handlers/scan-handlers.js.map +0 -1
  35. package/dist/commands/handlers/ui-handlers.d.ts.map +0 -1
  36. package/dist/commands/handlers/violation-handlers.d.ts.map +0 -1
  37. package/dist/commands/handlers/violation-handlers.js +0 -75
  38. package/dist/commands/handlers/violation-handlers.js.map +0 -1
  39. package/dist/commands/index.d.ts.map +0 -1
  40. package/dist/commands/middleware/connection-check-middleware.d.ts.map +0 -1
  41. package/dist/commands/middleware/index.d.ts.map +0 -1
  42. package/dist/commands/middleware/logging-middleware.d.ts.map +0 -1
  43. package/dist/commands/middleware/telemetry-middleware.d.ts.map +0 -1
  44. package/dist/config/config-manager.d.ts.map +0 -1
  45. package/dist/config/config-manager.js +0 -182
  46. package/dist/config/config-manager.js.map +0 -1
  47. package/dist/config/defaults.d.ts.map +0 -1
  48. package/dist/config/index.d.ts.map +0 -1
  49. package/dist/config/validator.d.ts.map +0 -1
  50. package/dist/config/validator.js +0 -89
  51. package/dist/config/validator.js.map +0 -1
  52. package/dist/extension.d.ts.map +0 -1
  53. package/dist/extension.js +0 -51
  54. package/dist/extension.js.map +0 -1
  55. package/dist/infrastructure/disposable-manager.d.ts.map +0 -1
  56. package/dist/infrastructure/disposable-manager.js +0 -76
  57. package/dist/infrastructure/disposable-manager.js.map +0 -1
  58. package/dist/infrastructure/index.d.ts.map +0 -1
  59. package/dist/infrastructure/logger.d.ts.map +0 -1
  60. package/dist/infrastructure/logger.js +0 -82
  61. package/dist/infrastructure/logger.js.map +0 -1
  62. package/dist/infrastructure/service-container.d.ts +0 -68
  63. package/dist/infrastructure/service-container.d.ts.map +0 -1
  64. package/dist/infrastructure/service-container.js +0 -92
  65. package/dist/infrastructure/service-container.js.map +0 -1
  66. package/dist/state/index.d.ts.map +0 -1
  67. package/dist/state/initial-state.d.ts.map +0 -1
  68. package/dist/state/selectors.d.ts.map +0 -1
  69. package/dist/state/state-manager.d.ts.map +0 -1
  70. package/dist/state/state-manager.js +0 -166
  71. package/dist/state/state-manager.js.map +0 -1
  72. package/dist/types/config-types.d.ts.map +0 -1
  73. package/dist/types/extension-types.d.ts +0 -45
  74. package/dist/types/extension-types.d.ts.map +0 -1
  75. package/dist/types/extension-types.js +0 -5
  76. package/dist/types/extension-types.js.map +0 -1
  77. package/dist/types/index.d.ts.map +0 -1
  78. package/dist/types/lsp-types.d.ts.map +0 -1
  79. package/dist/types/state-types.d.ts.map +0 -1
  80. package/dist/ui/decorations/decoration-controller.d.ts.map +0 -1
  81. package/dist/ui/decorations/decoration-controller.js +0 -196
  82. package/dist/ui/decorations/decoration-controller.js.map +0 -1
  83. package/dist/ui/decorations/decoration-types.d.ts.map +0 -1
  84. package/dist/ui/decorations/index.d.ts.map +0 -1
  85. package/dist/ui/index.d.ts.map +0 -1
  86. package/dist/ui/notifications/index.d.ts.map +0 -1
  87. package/dist/ui/notifications/notification-service.d.ts.map +0 -1
  88. package/dist/ui/notifications/notification-service.js +0 -103
  89. package/dist/ui/notifications/notification-service.js.map +0 -1
  90. package/dist/ui/status-bar/index.d.ts.map +0 -1
  91. package/dist/ui/status-bar/status-bar-controller.d.ts.map +0 -1
  92. package/dist/ui/status-bar/status-bar-controller.js +0 -111
  93. package/dist/ui/status-bar/status-bar-controller.js.map +0 -1
  94. package/dist/ui/status-bar/status-bar-modes.d.ts.map +0 -1
  95. package/dist/ui/status-bar/status-bar-modes.js +0 -112
  96. package/dist/ui/status-bar/status-bar-modes.js.map +0 -1
  97. package/dist/views/constants-tree-provider.d.ts +0 -111
  98. package/dist/views/constants-tree-provider.d.ts.map +0 -1
  99. package/dist/views/constants-tree-provider.js +0 -343
  100. package/dist/views/constants-tree-provider.js.map +0 -1
  101. package/dist/views/files-tree-provider.d.ts +0 -36
  102. package/dist/views/files-tree-provider.d.ts.map +0 -1
  103. package/dist/views/files-tree-provider.js +0 -95
  104. package/dist/views/files-tree-provider.js.map +0 -1
  105. package/dist/views/index.d.ts.map +0 -1
  106. package/dist/views/patterns-tree-provider.d.ts.map +0 -1
  107. package/dist/views/violations-tree-provider.d.ts.map +0 -1
  108. package/dist/webview/index.d.ts.map +0 -1
  109. package/dist/webview/webview-manager.d.ts.map +0 -1
  110. package/tsconfig.tsbuildinfo +0 -1
@@ -1,127 +0,0 @@
1
- /**
2
- * Pattern command handlers
3
- *
4
- * Single responsibility: Handle pattern-related commands.
5
- */
6
- import * as vscode from 'vscode';
7
- import { DRIFT_COMMANDS } from '../command-definitions.js';
8
- /**
9
- * Create pattern command handlers
10
- */
11
- export function createPatternHandlers(router, connectionManager, notifications) {
12
- // Show patterns command
13
- router.register({
14
- id: DRIFT_COMMANDS.showPatterns,
15
- handler: async (_ctx) => {
16
- // Focus the patterns tree view
17
- await vscode.commands.executeCommand('drift.patterns.focus');
18
- },
19
- });
20
- // Approve pattern command
21
- router.register({
22
- id: DRIFT_COMMANDS.approvePattern,
23
- handler: async (ctx) => {
24
- const client = connectionManager.getClient();
25
- if (!client) {
26
- throw new Error('Not connected to server');
27
- }
28
- const patternId = ctx.args[0];
29
- if (patternId === null || patternId === '') {
30
- // Show pattern picker
31
- const patterns = await client.sendRequest('drift/patterns/list', { status: 'discovered' });
32
- if (patterns.length === 0) {
33
- await notifications.info('No patterns to approve.');
34
- return;
35
- }
36
- const items = patterns.map((p) => ({
37
- label: p.name,
38
- description: p.id,
39
- id: p.id,
40
- }));
41
- const selected = await notifications.quickPick(items, { title: 'Select Pattern to Approve' });
42
- if (!selected) {
43
- return;
44
- }
45
- await client.sendRequest('drift/patterns/approve', { id: selected.id });
46
- await notifications.info(`Pattern "${selected.label}" approved.`);
47
- }
48
- else {
49
- await client.sendRequest('drift/patterns/approve', { id: patternId });
50
- await notifications.info(`Pattern approved.`);
51
- }
52
- },
53
- });
54
- // Ignore pattern command
55
- router.register({
56
- id: DRIFT_COMMANDS.ignorePattern,
57
- handler: async (ctx) => {
58
- const client = connectionManager.getClient();
59
- if (!client) {
60
- throw new Error('Not connected to server');
61
- }
62
- const patternId = ctx.args[0];
63
- if (patternId === null || patternId === '') {
64
- // Show pattern picker
65
- const patterns = await client.sendRequest('drift/patterns/list', { status: 'discovered' });
66
- if (patterns.length === 0) {
67
- await notifications.info('No patterns to ignore.');
68
- return;
69
- }
70
- const items = patterns.map((p) => ({
71
- label: p.name,
72
- description: p.id,
73
- id: p.id,
74
- }));
75
- const selected = await notifications.quickPick(items, { title: 'Select Pattern to Ignore' });
76
- if (!selected) {
77
- return;
78
- }
79
- await client.sendRequest('drift/patterns/ignore', { id: selected.id });
80
- await notifications.info(`Pattern "${selected.label}" ignored.`);
81
- }
82
- else {
83
- await client.sendRequest('drift/patterns/ignore', { id: patternId });
84
- await notifications.info(`Pattern ignored.`);
85
- }
86
- },
87
- });
88
- // Create variant command
89
- router.register({
90
- id: DRIFT_COMMANDS.createVariant,
91
- handler: async (ctx) => {
92
- const client = connectionManager.getClient();
93
- if (!client) {
94
- throw new Error('Not connected to server');
95
- }
96
- const patternId = ctx.args[0];
97
- const violationId = ctx.args[1];
98
- if (patternId === null || patternId === '') {
99
- await notifications.warning('No pattern specified for variant creation.');
100
- return;
101
- }
102
- // Get variant name from user
103
- const name = await notifications.inputBox({
104
- title: 'Create Variant',
105
- prompt: 'Enter a name for this variant',
106
- placeHolder: 'e.g., legacy-auth-pattern',
107
- });
108
- if (!name) {
109
- return;
110
- }
111
- // Get variant description
112
- const description = await notifications.inputBox({
113
- title: 'Create Variant',
114
- prompt: 'Enter a description (optional)',
115
- placeHolder: 'e.g., Used in legacy authentication module',
116
- });
117
- await client.sendRequest('drift/patterns/createVariant', {
118
- patternId,
119
- violationId,
120
- name,
121
- description,
122
- });
123
- await notifications.info(`Variant "${name}" created.`);
124
- },
125
- });
126
- }
127
- //# sourceMappingURL=pattern-handlers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pattern-handlers.js","sourceRoot":"","sources":["../../../src/commands/handlers/pattern-handlers.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"scan-handlers.d.ts","sourceRoot":"","sources":["../../../src/commands/handlers/scan-handlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AAC1F,OAAO,KAAK,EAAE,aAAa,EAAkB,MAAM,sBAAsB,CAAC;AAG1E;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,aAAa,EACrB,iBAAiB,EAAE,iBAAiB,EACpC,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,mBAAmB,EAClC,QAAQ,EAAE,QAAQ,GACjB,IAAI,CAgFN"}
@@ -1,74 +0,0 @@
1
- /**
2
- * Scan command handlers
3
- *
4
- * Single responsibility: Handle scan-related commands.
5
- */
6
- import * as vscode from 'vscode';
7
- import { DRIFT_COMMANDS } from '../command-definitions.js';
8
- /**
9
- * Create scan command handlers
10
- */
11
- export function createScanHandlers(router, connectionManager, stateManager, notifications, eventBus) {
12
- // Rescan workspace command
13
- router.register({
14
- id: DRIFT_COMMANDS.rescan,
15
- showProgress: true,
16
- progressTitle: 'Scanning workspace...',
17
- handler: async (ctx) => {
18
- const client = connectionManager.getClient();
19
- if (!client) {
20
- throw new Error('Not connected to server');
21
- }
22
- // Update state to scanning
23
- stateManager.update(draft => {
24
- draft.workspace.scanning = true;
25
- });
26
- eventBus.emit('scan:started', { files: 0 });
27
- try {
28
- ctx.progress?.report({ message: 'Analyzing patterns...' });
29
- const result = await client.sendRequest('drift/rescan');
30
- // Update state with results
31
- stateManager.update(draft => {
32
- draft.workspace.scanning = false;
33
- draft.workspace.lastScanTime = Date.now();
34
- draft.patterns.total = result.patterns;
35
- draft.violations.total = result.violations;
36
- });
37
- eventBus.emit('scan:completed', {
38
- duration: result.duration,
39
- patterns: result.patterns,
40
- violations: result.violations,
41
- });
42
- await notifications.info(`Scan complete: ${String(result.patterns)} patterns, ${String(result.violations)} violations`);
43
- }
44
- catch (error) {
45
- stateManager.update(draft => {
46
- draft.workspace.scanning = false;
47
- });
48
- throw error;
49
- }
50
- },
51
- });
52
- // Scan current file command
53
- router.register({
54
- id: DRIFT_COMMANDS.scanFile,
55
- handler: async (_ctx) => {
56
- const editor = vscode.window.activeTextEditor;
57
- if (!editor) {
58
- await notifications.warning('No file is currently open.');
59
- return;
60
- }
61
- const client = connectionManager.getClient();
62
- if (!client) {
63
- throw new Error('Not connected to server');
64
- }
65
- const uri = editor.document.uri.toString();
66
- await notifications.withProgress('Scanning file...', async (progress) => {
67
- progress.report({ message: editor.document.fileName });
68
- await client.sendRequest('drift/scanFile', { uri });
69
- await notifications.info('File scan complete.');
70
- });
71
- },
72
- });
73
- }
74
- //# sourceMappingURL=scan-handlers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scan-handlers.js","sourceRoot":"","sources":["../../../src/commands/handlers/scan-handlers.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ui-handlers.d.ts","sourceRoot":"","sources":["../../../src/commands/handlers/ui-handlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AAC1F,OAAO,KAAK,EAAE,aAAa,EAAkB,MAAM,sBAAsB,CAAC;AAE1E;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,aAAa,EACrB,aAAa,EAAE,mBAAmB,GACjC,IAAI,CAoEN"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"violation-handlers.d.ts","sourceRoot":"","sources":["../../../src/commands/handlers/violation-handlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AAC1F,OAAO,KAAK,EAAE,aAAa,EAAkB,MAAM,sBAAsB,CAAC;AAG1E;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,aAAa,EACrB,iBAAiB,EAAE,iBAAiB,EACpC,aAAa,EAAE,mBAAmB,GACjC,IAAI,CA6EN"}
@@ -1,75 +0,0 @@
1
- /**
2
- * Violation command handlers
3
- *
4
- * Single responsibility: Handle violation-related commands.
5
- */
6
- import * as vscode from 'vscode';
7
- import { DRIFT_COMMANDS } from '../command-definitions.js';
8
- /**
9
- * Create violation command handlers
10
- */
11
- export function createViolationHandlers(router, connectionManager, notifications) {
12
- // Show violations command
13
- router.register({
14
- id: DRIFT_COMMANDS.showViolations,
15
- handler: async (_ctx) => {
16
- // Focus the violations tree view
17
- await vscode.commands.executeCommand('drift.violations.focus');
18
- },
19
- });
20
- // Ignore once command
21
- router.register({
22
- id: DRIFT_COMMANDS.ignoreOnce,
23
- handler: async (ctx) => {
24
- const client = connectionManager.getClient();
25
- if (!client) {
26
- throw new Error('Not connected to server');
27
- }
28
- const violationId = ctx.args[0];
29
- const uri = ctx.args[1];
30
- const line = ctx.args[2];
31
- if (violationId === null || violationId === '' || uri === null || uri === '' || line === undefined) {
32
- // Try to get from current editor position
33
- const editor = vscode.window.activeTextEditor;
34
- if (!editor) {
35
- await notifications.warning('No violation selected.');
36
- return;
37
- }
38
- const position = editor.selection.active;
39
- const diagnostics = vscode.languages.getDiagnostics(editor.document.uri);
40
- const driftDiagnostic = diagnostics.find(d => d.source === 'drift' && d.range.contains(position));
41
- if (!driftDiagnostic) {
42
- await notifications.warning('No Drift violation at cursor position.');
43
- return;
44
- }
45
- const data = driftDiagnostic.data;
46
- if (data?.violationId === null || data?.violationId === undefined) {
47
- await notifications.warning('Cannot identify violation.');
48
- return;
49
- }
50
- await client.sendRequest('drift/violations/ignoreOnce', {
51
- violationId: data.violationId,
52
- uri: editor.document.uri.toString(),
53
- line: driftDiagnostic.range.start.line,
54
- });
55
- }
56
- else {
57
- await client.sendRequest('drift/violations/ignoreOnce', {
58
- violationId,
59
- uri,
60
- line,
61
- });
62
- }
63
- await notifications.info('Violation ignored for this occurrence.');
64
- },
65
- });
66
- // Quick fix command
67
- router.register({
68
- id: DRIFT_COMMANDS.quickFix,
69
- handler: async (_ctx) => {
70
- // Trigger VS Code's built-in quick fix
71
- await vscode.commands.executeCommand('editor.action.quickFix');
72
- },
73
- });
74
- }
75
- //# sourceMappingURL=violation-handlers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"violation-handlers.js","sourceRoot":"","sources":["../../../src/commands/handlers/violation-handlers.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC9E,cAAc,qBAAqB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"connection-check-middleware.d.ts","sourceRoot":"","sources":["../../../src/commands/middleware/connection-check-middleware.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAkB,MAAM,sBAAsB,CAAC;AAa9E;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,YAAY,EAAE,YAAY,GACzB,iBAAiB,CAkBnB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/middleware/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"logging-middleware.d.ts","sourceRoot":"","sources":["../../../src/commands/middleware/logging-middleware.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAkB,MAAM,sBAAsB,CAAC;AAE9E;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,CAezE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"telemetry-middleware.d.ts","sourceRoot":"","sources":["../../../src/commands/middleware/telemetry-middleware.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAkB,MAAM,sBAAsB,CAAC;AAE9E;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,YAAY,CAAC,IAAI,EAAE;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,IAAI,CAAC;CACV;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,gBAAgB,GACxB,iBAAiB,CAoBnB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"config-manager.d.ts","sourceRoot":"","sources":["../../src/config/config-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAKjC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAc,MAAM,mBAAmB,CAAC;AAEpF;;GAEG;AACH,qBAAa,aAAc,YAAW,MAAM,CAAC,UAAU;IAOzC,OAAO,CAAC,QAAQ,CAAC,MAAM;IANnC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA2B;IACvD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgD;IAE9E,QAAQ,CAAC,cAAc,kCAA4B;gBAEtB,MAAM,EAAE,MAAM;IAK3C;;OAEG;IACH,GAAG,CAAC,CAAC,SAAS,MAAM,WAAW,EAAE,OAAO,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;IAI5D;;OAEG;IACH,MAAM,IAAI,QAAQ,CAAC,WAAW,CAAC;IAI/B;;OAEG;IACG,MAAM,CAAC,CAAC,SAAS,MAAM,WAAW,EACtC,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAC9B,MAAM,GAAE,MAAM,CAAC,mBAA0D,GACxE,OAAO,CAAC,IAAI,CAAC;IAehB;;OAEG;IACG,KAAK,CAAC,MAAM,GAAE,MAAM,CAAC,mBAA0D,GAAG,OAAO,CAAC,IAAI,CAAC;IAUrG;;OAEG;IACH,MAAM,IAAI,IAAI;IAMd;;OAEG;IACH,OAAO,IAAI,IAAI;IAOf,OAAO,CAAC,UAAU;IA8BlB,OAAO,CAAC,cAAc;IAkCtB,OAAO,CAAC,WAAW;IAwBnB,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,WAAW;CAapB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAEjE"}
@@ -1,182 +0,0 @@
1
- /**
2
- * ConfigManager - Configuration management with change detection
3
- *
4
- * Single responsibility: Load, validate, and watch configuration.
5
- */
6
- import * as fs from 'node:fs';
7
- import * as path from 'node:path';
8
- import * as vscode from 'vscode';
9
- import { DEFAULT_CONFIG } from './defaults.js';
10
- import { validateConfig } from './validator.js';
11
- /**
12
- * Configuration manager with reactive updates
13
- */
14
- export class ConfigManager {
15
- logger;
16
- config;
17
- disposables = [];
18
- changeEmitter = new vscode.EventEmitter();
19
- onConfigChange = this.changeEmitter.event;
20
- constructor(logger) {
21
- this.logger = logger;
22
- this.config = this.loadConfig();
23
- this.watchConfig();
24
- }
25
- /**
26
- * Get a configuration section
27
- */
28
- get(section) {
29
- return this.config[section];
30
- }
31
- /**
32
- * Get the full configuration
33
- */
34
- getAll() {
35
- return this.config;
36
- }
37
- /**
38
- * Update a configuration section
39
- */
40
- async update(section, value, target = vscode.ConfigurationTarget.Workspace) {
41
- const vsConfig = vscode.workspace.getConfiguration('drift');
42
- const current = vsConfig.get(section);
43
- const merged = { ...current, ...value };
44
- // Validate before updating
45
- const validation = validateConfig({ [section]: merged });
46
- if (!validation.valid) {
47
- this.logger.error('Invalid configuration:', validation.errors);
48
- throw new Error(`Invalid configuration: ${validation.errors.join(', ')}`);
49
- }
50
- await vsConfig.update(section, merged, target);
51
- }
52
- /**
53
- * Reset configuration to defaults
54
- */
55
- async reset(target = vscode.ConfigurationTarget.Workspace) {
56
- const vsConfig = vscode.workspace.getConfiguration('drift');
57
- for (const [section, value] of Object.entries(DEFAULT_CONFIG)) {
58
- if (section !== 'team') {
59
- await vsConfig.update(section, value, target);
60
- }
61
- }
62
- }
63
- /**
64
- * Reload configuration from VS Code settings
65
- */
66
- reload() {
67
- const oldConfig = this.config;
68
- this.config = this.loadConfig();
69
- this.emitChanges(oldConfig, this.config);
70
- }
71
- /**
72
- * Dispose resources
73
- */
74
- dispose() {
75
- this.changeEmitter.dispose();
76
- for (const d of this.disposables) {
77
- d.dispose();
78
- }
79
- }
80
- loadConfig() {
81
- const vsConfig = vscode.workspace.getConfiguration('drift');
82
- return {
83
- server: {
84
- path: vsConfig.get('server.path', DEFAULT_CONFIG.server.path),
85
- args: vsConfig.get('server.args', DEFAULT_CONFIG.server.args),
86
- trace: vsConfig.get('server.trace', DEFAULT_CONFIG.server.trace),
87
- },
88
- scan: {
89
- onSave: vsConfig.get('scan.onSave', DEFAULT_CONFIG.scan.onSave),
90
- onOpen: vsConfig.get('scan.onOpen', DEFAULT_CONFIG.scan.onOpen),
91
- debounceMs: vsConfig.get('scan.debounceMs', DEFAULT_CONFIG.scan.debounceMs),
92
- excludePatterns: vsConfig.get('scan.excludePatterns', DEFAULT_CONFIG.scan.excludePatterns),
93
- },
94
- display: {
95
- showStatusBar: vsConfig.get('display.showStatusBar', DEFAULT_CONFIG.display.showStatusBar),
96
- showInlineHints: vsConfig.get('display.showInlineHints', DEFAULT_CONFIG.display.showInlineHints),
97
- showGutterIcons: vsConfig.get('display.showGutterIcons', DEFAULT_CONFIG.display.showGutterIcons),
98
- severityFilter: vsConfig.get('display.severityFilter', DEFAULT_CONFIG.display.severityFilter),
99
- },
100
- ai: {
101
- enabled: vsConfig.get('ai.enabled', DEFAULT_CONFIG.ai.enabled),
102
- provider: vsConfig.get('ai.provider', DEFAULT_CONFIG.ai.provider),
103
- model: vsConfig.get('ai.model', DEFAULT_CONFIG.ai.model),
104
- },
105
- team: this.loadTeamConfig(),
106
- };
107
- }
108
- loadTeamConfig() {
109
- const workspaceFolder = vscode.workspace.workspaceFolders?.[0];
110
- if (!workspaceFolder) {
111
- return DEFAULT_CONFIG.team;
112
- }
113
- const configPath = path.join(workspaceFolder.uri.fsPath, '.drift', 'config.json');
114
- try {
115
- if (fs.existsSync(configPath)) {
116
- const content = fs.readFileSync(configPath, 'utf-8');
117
- const parsed = JSON.parse(content);
118
- // Map customRules objects to just their IDs if they're objects
119
- const customRules = parsed.customRules
120
- ? parsed.customRules.map((rule) => (typeof rule === 'string' ? rule : rule.id))
121
- : DEFAULT_CONFIG.team.customRules;
122
- return {
123
- enforceApproved: parsed.enforceApproved ?? DEFAULT_CONFIG.team.enforceApproved,
124
- requiredCategories: parsed.requiredCategories ?? DEFAULT_CONFIG.team.requiredCategories,
125
- customRules,
126
- };
127
- }
128
- }
129
- catch (error) {
130
- this.logger.warn('Failed to load team config:', error);
131
- }
132
- return DEFAULT_CONFIG.team;
133
- }
134
- watchConfig() {
135
- // Watch VS Code settings
136
- this.disposables.push(vscode.workspace.onDidChangeConfiguration((event) => {
137
- if (event.affectsConfiguration('drift')) {
138
- this.reload();
139
- }
140
- }));
141
- // Watch .drift/config.json
142
- const workspaceFolder = vscode.workspace.workspaceFolders?.[0];
143
- if (workspaceFolder) {
144
- const pattern = new vscode.RelativePattern(workspaceFolder, '.drift/config.json');
145
- const watcher = vscode.workspace.createFileSystemWatcher(pattern);
146
- watcher.onDidChange(() => { this.reloadTeamConfig(); });
147
- watcher.onDidCreate(() => { this.reloadTeamConfig(); });
148
- watcher.onDidDelete(() => { this.reloadTeamConfig(); });
149
- this.disposables.push(watcher);
150
- }
151
- }
152
- reloadTeamConfig() {
153
- const oldTeam = this.config.team;
154
- this.config = { ...this.config, team: this.loadTeamConfig() };
155
- if (JSON.stringify(oldTeam) !== JSON.stringify(this.config.team)) {
156
- this.changeEmitter.fire({
157
- section: 'team',
158
- oldValue: oldTeam,
159
- newValue: this.config.team,
160
- });
161
- }
162
- }
163
- emitChanges(oldConfig, newConfig) {
164
- const sections = ['server', 'scan', 'display', 'ai', 'team'];
165
- for (const section of sections) {
166
- if (JSON.stringify(oldConfig[section]) !== JSON.stringify(newConfig[section])) {
167
- this.changeEmitter.fire({
168
- section,
169
- oldValue: oldConfig[section],
170
- newValue: newConfig[section],
171
- });
172
- }
173
- }
174
- }
175
- }
176
- /**
177
- * Factory function for creating config manager
178
- */
179
- export function createConfigManager(logger) {
180
- return new ConfigManager(logger);
181
- }
182
- //# sourceMappingURL=config-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config-manager.js","sourceRoot":"","sources":["../../src/config/config-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,WAiC5B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/config/validator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAwB,MAAM,mBAAmB,CAAC;AAE3E;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAiBD;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,gBAAgB,CAyC7E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,WAAW,EAC1B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,OAAO,GACb,gBAAgB,CA6BlB"}
@@ -1,89 +0,0 @@
1
- /**
2
- * Configuration validator
3
- *
4
- * Single responsibility: Validate configuration values.
5
- */
6
- /**
7
- * Valid severity values
8
- */
9
- const VALID_SEVERITIES = ['error', 'warning', 'info', 'hint'];
10
- /**
11
- * Valid AI providers
12
- */
13
- const VALID_PROVIDERS = ['openai', 'anthropic', 'ollama', 'none'];
14
- /**
15
- * Valid trace levels
16
- */
17
- const VALID_TRACE_LEVELS = ['off', 'messages', 'verbose'];
18
- /**
19
- * Validate configuration
20
- */
21
- export function validateConfig(config) {
22
- const errors = [];
23
- // Validate server config
24
- if (config.server?.trace !== undefined && !VALID_TRACE_LEVELS.includes(config.server.trace)) {
25
- errors.push(`Invalid trace level: ${config.server.trace}`);
26
- }
27
- // Validate scan config
28
- if (config.scan !== undefined) {
29
- if (typeof config.scan.debounceMs === 'number' && config.scan.debounceMs < 0) {
30
- errors.push('debounceMs must be non-negative');
31
- }
32
- if (config.scan.excludePatterns !== undefined && !Array.isArray(config.scan.excludePatterns)) {
33
- errors.push('excludePatterns must be an array');
34
- }
35
- }
36
- // Validate display config
37
- if (config.display?.severityFilter !== undefined) {
38
- for (const severity of config.display.severityFilter) {
39
- if (!VALID_SEVERITIES.includes(severity)) {
40
- errors.push(`Invalid severity: ${severity}`);
41
- }
42
- }
43
- }
44
- // Validate AI config
45
- if (config.ai !== undefined) {
46
- if (config.ai.provider !== undefined && !VALID_PROVIDERS.includes(config.ai.provider)) {
47
- errors.push(`Invalid AI provider: ${config.ai.provider}`);
48
- }
49
- if (config.ai.enabled === true && config.ai.provider === 'none') {
50
- errors.push('AI enabled but provider is "none"');
51
- }
52
- }
53
- return {
54
- valid: errors.length === 0,
55
- errors,
56
- };
57
- }
58
- /**
59
- * Validate a single config value
60
- */
61
- export function validateConfigValue(section, key, value) {
62
- const errors = [];
63
- switch (section) {
64
- case 'scan':
65
- if (key === 'debounceMs' && (typeof value !== 'number' || value < 0)) {
66
- errors.push('debounceMs must be a non-negative number');
67
- }
68
- break;
69
- case 'display':
70
- if (key === 'severityFilter' && Array.isArray(value)) {
71
- for (const v of value) {
72
- if (!VALID_SEVERITIES.includes(v)) {
73
- errors.push(`Invalid severity: ${String(v)}`);
74
- }
75
- }
76
- }
77
- break;
78
- case 'ai':
79
- if (key === 'provider' && !VALID_PROVIDERS.includes(value)) {
80
- errors.push(`Invalid AI provider: ${String(value)}`);
81
- }
82
- break;
83
- }
84
- return {
85
- valid: errors.length === 0,
86
- errors,
87
- };
88
- }
89
- //# sourceMappingURL=validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/config/validator.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAIjC;;GAEG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAInC;AAGD,eAAO,MAAM,OAAO,UAAU,CAAC;AAO/B;;;;;;;;;GASG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAK9E;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAKhD"}