katashiro-vscode 2.0.1 → 2.0.2
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.
- package/dist/commands/command-helpers.d.ts +91 -0
- package/dist/commands/command-helpers.d.ts.map +1 -0
- package/dist/commands/command-helpers.js +125 -0
- package/dist/commands/command-helpers.js.map +1 -0
- package/dist/commands/command-manager.d.ts +64 -0
- package/dist/commands/command-manager.d.ts.map +1 -0
- package/dist/commands/command-manager.js +374 -0
- package/dist/commands/command-manager.js.map +1 -0
- package/dist/commands/index.d.ts +5 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +9 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/extension.d.ts +18 -0
- package/dist/extension.d.ts.map +1 -0
- package/dist/extension.js +75 -0
- package/dist/extension.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +33 -0
- package/dist/index.js.map +1 -0
- package/dist/katashiro-extension.d.ts +51 -0
- package/dist/katashiro-extension.d.ts.map +1 -0
- package/dist/katashiro-extension.js +123 -0
- package/dist/katashiro-extension.js.map +1 -0
- package/dist/ui/index.d.ts +6 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +11 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/output-channel-manager.d.ts +57 -0
- package/dist/ui/output-channel-manager.d.ts.map +1 -0
- package/dist/ui/output-channel-manager.js +126 -0
- package/dist/ui/output-channel-manager.js.map +1 -0
- package/dist/ui/status-bar-manager.d.ts +68 -0
- package/dist/ui/status-bar-manager.d.ts.map +1 -0
- package/dist/ui/status-bar-manager.js +167 -0
- package/dist/ui/status-bar-manager.js.map +1 -0
- package/dist/views/history-view-provider.d.ts +77 -0
- package/dist/views/history-view-provider.d.ts.map +1 -0
- package/dist/views/history-view-provider.js +204 -0
- package/dist/views/history-view-provider.js.map +1 -0
- package/dist/views/index.d.ts +7 -0
- package/dist/views/index.d.ts.map +1 -0
- package/dist/views/index.js +16 -0
- package/dist/views/index.js.map +1 -0
- package/dist/views/knowledge-view-provider.d.ts +60 -0
- package/dist/views/knowledge-view-provider.d.ts.map +1 -0
- package/dist/views/knowledge-view-provider.js +169 -0
- package/dist/views/knowledge-view-provider.js.map +1 -0
- package/dist/views/research-view-provider.d.ts +48 -0
- package/dist/views/research-view-provider.d.ts.map +1 -0
- package/dist/views/research-view-provider.js +141 -0
- package/dist/views/research-view-provider.js.map +1 -0
- package/package.json +18 -19
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* StatusBarManager - VS Code status bar management
|
|
3
|
+
*
|
|
4
|
+
* @module katashiro
|
|
5
|
+
* @task TSK-073
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Status bar state
|
|
9
|
+
*/
|
|
10
|
+
export type StatusBarState = 'idle' | 'working' | 'success' | 'error';
|
|
11
|
+
/**
|
|
12
|
+
* StatusBarManager
|
|
13
|
+
*
|
|
14
|
+
* Manages VS Code status bar item for KATASHIRO
|
|
15
|
+
*/
|
|
16
|
+
export declare class StatusBarManager {
|
|
17
|
+
private statusBarItem;
|
|
18
|
+
private currentState;
|
|
19
|
+
private spinnerInterval;
|
|
20
|
+
private spinnerFrames;
|
|
21
|
+
private spinnerIndex;
|
|
22
|
+
constructor();
|
|
23
|
+
/**
|
|
24
|
+
* Show the status bar item
|
|
25
|
+
*/
|
|
26
|
+
show(): void;
|
|
27
|
+
/**
|
|
28
|
+
* Hide the status bar item
|
|
29
|
+
*/
|
|
30
|
+
hide(): void;
|
|
31
|
+
/**
|
|
32
|
+
* Dispose the status bar item
|
|
33
|
+
*/
|
|
34
|
+
dispose(): void;
|
|
35
|
+
/**
|
|
36
|
+
* Get current state
|
|
37
|
+
*/
|
|
38
|
+
getState(): StatusBarState;
|
|
39
|
+
/**
|
|
40
|
+
* Set idle state
|
|
41
|
+
*/
|
|
42
|
+
setIdle(message?: string): void;
|
|
43
|
+
/**
|
|
44
|
+
* Set working state
|
|
45
|
+
*/
|
|
46
|
+
setWorking(message?: string): void;
|
|
47
|
+
/**
|
|
48
|
+
* Set success state
|
|
49
|
+
*/
|
|
50
|
+
setSuccess(message?: string, autoResetMs?: number): void;
|
|
51
|
+
/**
|
|
52
|
+
* Set error state
|
|
53
|
+
*/
|
|
54
|
+
setError(message?: string, autoResetMs?: number): void;
|
|
55
|
+
/**
|
|
56
|
+
* Start spinner animation
|
|
57
|
+
*/
|
|
58
|
+
private startSpinner;
|
|
59
|
+
/**
|
|
60
|
+
* Update spinner frame
|
|
61
|
+
*/
|
|
62
|
+
private updateSpinner;
|
|
63
|
+
/**
|
|
64
|
+
* Stop spinner animation
|
|
65
|
+
*/
|
|
66
|
+
private stopSpinner;
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=status-bar-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-bar-manager.d.ts","sourceRoot":"","sources":["../../src/ui/status-bar-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAEtE;;;;GAIG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,aAAa,CAAuC;IAC5D,OAAO,CAAC,YAAY,CAAK;;IAWzB;;OAEG;IACH,IAAI,IAAI,IAAI;IAIZ;;OAEG;IACH,IAAI,IAAI,IAAI;IAIZ;;OAEG;IACH,OAAO,IAAI,IAAI;IAKf;;OAEG;IACH,QAAQ,IAAI,cAAc;IAI1B;;OAEG;IACH,OAAO,CAAC,OAAO,SAAc,GAAG,IAAI;IAQpC;;OAEG;IACH,UAAU,CAAC,OAAO,SAAe,GAAG,IAAI;IAMxC;;OAEG;IACH,UAAU,CAAC,OAAO,SAAS,EAAE,WAAW,SAAO,GAAG,IAAI;IAkBtD;;OAEG;IACH,QAAQ,CAAC,OAAO,SAAU,EAAE,WAAW,SAAO,GAAG,IAAI;IAkBrD;;OAEG;IACH,OAAO,CAAC,YAAY;IAQpB;;OAEG;IACH,OAAO,CAAC,aAAa;IAMrB;;OAEG;IACH,OAAO,CAAC,WAAW;CAOpB"}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* StatusBarManager - VS Code status bar management
|
|
4
|
+
*
|
|
5
|
+
* @module katashiro
|
|
6
|
+
* @task TSK-073
|
|
7
|
+
*/
|
|
8
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
15
|
+
}) : (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
o[k2] = m[k];
|
|
18
|
+
}));
|
|
19
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
20
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
21
|
+
}) : function(o, v) {
|
|
22
|
+
o["default"] = v;
|
|
23
|
+
});
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.StatusBarManager = void 0;
|
|
43
|
+
const vscode = __importStar(require("vscode"));
|
|
44
|
+
/**
|
|
45
|
+
* StatusBarManager
|
|
46
|
+
*
|
|
47
|
+
* Manages VS Code status bar item for KATASHIRO
|
|
48
|
+
*/
|
|
49
|
+
class StatusBarManager {
|
|
50
|
+
statusBarItem;
|
|
51
|
+
currentState = 'idle';
|
|
52
|
+
spinnerInterval = null;
|
|
53
|
+
spinnerFrames = ['$(sync~spin)', '$(loading~spin)'];
|
|
54
|
+
spinnerIndex = 0;
|
|
55
|
+
constructor() {
|
|
56
|
+
this.statusBarItem = vscode.window.createStatusBarItem(vscode.StatusBarAlignment.Right, 100);
|
|
57
|
+
this.statusBarItem.command = 'katashiro.webSearch';
|
|
58
|
+
this.setIdle();
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Show the status bar item
|
|
62
|
+
*/
|
|
63
|
+
show() {
|
|
64
|
+
this.statusBarItem.show();
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Hide the status bar item
|
|
68
|
+
*/
|
|
69
|
+
hide() {
|
|
70
|
+
this.statusBarItem.hide();
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Dispose the status bar item
|
|
74
|
+
*/
|
|
75
|
+
dispose() {
|
|
76
|
+
this.stopSpinner();
|
|
77
|
+
this.statusBarItem.dispose();
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Get current state
|
|
81
|
+
*/
|
|
82
|
+
getState() {
|
|
83
|
+
return this.currentState;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Set idle state
|
|
87
|
+
*/
|
|
88
|
+
setIdle(message = 'KATASHIRO') {
|
|
89
|
+
this.stopSpinner();
|
|
90
|
+
this.currentState = 'idle';
|
|
91
|
+
this.statusBarItem.text = `$(search) ${message}`;
|
|
92
|
+
this.statusBarItem.tooltip = 'Click to search';
|
|
93
|
+
this.statusBarItem.backgroundColor = undefined;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Set working state
|
|
97
|
+
*/
|
|
98
|
+
setWorking(message = 'Working...') {
|
|
99
|
+
this.currentState = 'working';
|
|
100
|
+
this.statusBarItem.tooltip = message;
|
|
101
|
+
this.startSpinner(message);
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Set success state
|
|
105
|
+
*/
|
|
106
|
+
setSuccess(message = 'Done', autoResetMs = 3000) {
|
|
107
|
+
this.stopSpinner();
|
|
108
|
+
this.currentState = 'success';
|
|
109
|
+
this.statusBarItem.text = `$(check) ${message}`;
|
|
110
|
+
this.statusBarItem.tooltip = message;
|
|
111
|
+
this.statusBarItem.backgroundColor = new vscode.ThemeColor('statusBarItem.prominentBackground');
|
|
112
|
+
if (autoResetMs > 0) {
|
|
113
|
+
setTimeout(() => {
|
|
114
|
+
if (this.currentState === 'success') {
|
|
115
|
+
this.setIdle();
|
|
116
|
+
}
|
|
117
|
+
}, autoResetMs);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Set error state
|
|
122
|
+
*/
|
|
123
|
+
setError(message = 'Error', autoResetMs = 5000) {
|
|
124
|
+
this.stopSpinner();
|
|
125
|
+
this.currentState = 'error';
|
|
126
|
+
this.statusBarItem.text = `$(error) ${message}`;
|
|
127
|
+
this.statusBarItem.tooltip = message;
|
|
128
|
+
this.statusBarItem.backgroundColor = new vscode.ThemeColor('statusBarItem.errorBackground');
|
|
129
|
+
if (autoResetMs > 0) {
|
|
130
|
+
setTimeout(() => {
|
|
131
|
+
if (this.currentState === 'error') {
|
|
132
|
+
this.setIdle();
|
|
133
|
+
}
|
|
134
|
+
}, autoResetMs);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Start spinner animation
|
|
139
|
+
*/
|
|
140
|
+
startSpinner(message) {
|
|
141
|
+
this.stopSpinner();
|
|
142
|
+
this.updateSpinner(message);
|
|
143
|
+
this.spinnerInterval = setInterval(() => {
|
|
144
|
+
this.updateSpinner(message);
|
|
145
|
+
}, 500);
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Update spinner frame
|
|
149
|
+
*/
|
|
150
|
+
updateSpinner(message) {
|
|
151
|
+
const frame = this.spinnerFrames[this.spinnerIndex];
|
|
152
|
+
this.statusBarItem.text = `${frame} ${message}`;
|
|
153
|
+
this.spinnerIndex = (this.spinnerIndex + 1) % this.spinnerFrames.length;
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Stop spinner animation
|
|
157
|
+
*/
|
|
158
|
+
stopSpinner() {
|
|
159
|
+
if (this.spinnerInterval) {
|
|
160
|
+
clearInterval(this.spinnerInterval);
|
|
161
|
+
this.spinnerInterval = null;
|
|
162
|
+
}
|
|
163
|
+
this.spinnerIndex = 0;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
exports.StatusBarManager = StatusBarManager;
|
|
167
|
+
//# sourceMappingURL=status-bar-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-bar-manager.js","sourceRoot":"","sources":["../../src/ui/status-bar-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HistoryViewProvider - History panel tree view
|
|
3
|
+
*
|
|
4
|
+
* @module katashiro
|
|
5
|
+
* @task TSK-072
|
|
6
|
+
*/
|
|
7
|
+
import * as vscode from 'vscode';
|
|
8
|
+
/**
|
|
9
|
+
* History entry type
|
|
10
|
+
*/
|
|
11
|
+
export type HistoryEntryType = 'search' | 'analysis' | 'summary' | 'research' | 'report';
|
|
12
|
+
/**
|
|
13
|
+
* History entry
|
|
14
|
+
*/
|
|
15
|
+
export interface HistoryEntry {
|
|
16
|
+
id: string;
|
|
17
|
+
type: HistoryEntryType;
|
|
18
|
+
title: string;
|
|
19
|
+
timestamp: Date;
|
|
20
|
+
details?: string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* History item for tree view
|
|
24
|
+
*/
|
|
25
|
+
export declare class HistoryItem extends vscode.TreeItem {
|
|
26
|
+
readonly entry: HistoryEntry;
|
|
27
|
+
readonly collapsibleState: vscode.TreeItemCollapsibleState;
|
|
28
|
+
constructor(entry: HistoryEntry, collapsibleState: vscode.TreeItemCollapsibleState);
|
|
29
|
+
/**
|
|
30
|
+
* Format timestamp
|
|
31
|
+
*/
|
|
32
|
+
private formatTime;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* HistoryViewProvider
|
|
36
|
+
*
|
|
37
|
+
* Provides tree data for the History panel
|
|
38
|
+
*/
|
|
39
|
+
export declare class HistoryViewProvider implements vscode.TreeDataProvider<HistoryItem> {
|
|
40
|
+
private _onDidChangeTreeData;
|
|
41
|
+
readonly onDidChangeTreeData: vscode.Event<void | HistoryItem | null | undefined>;
|
|
42
|
+
private history;
|
|
43
|
+
private maxEntries;
|
|
44
|
+
/**
|
|
45
|
+
* Refresh the tree view
|
|
46
|
+
*/
|
|
47
|
+
refresh(): void;
|
|
48
|
+
/**
|
|
49
|
+
* Add a history entry
|
|
50
|
+
*/
|
|
51
|
+
addEntry(type: HistoryEntryType, title: string, details?: string): HistoryEntry;
|
|
52
|
+
/**
|
|
53
|
+
* Clear all history
|
|
54
|
+
*/
|
|
55
|
+
clear(): void;
|
|
56
|
+
/**
|
|
57
|
+
* Get entry by ID
|
|
58
|
+
*/
|
|
59
|
+
getEntry(id: string): HistoryEntry | undefined;
|
|
60
|
+
/**
|
|
61
|
+
* Get all entries
|
|
62
|
+
*/
|
|
63
|
+
getAll(): HistoryEntry[];
|
|
64
|
+
/**
|
|
65
|
+
* Get tree item
|
|
66
|
+
*/
|
|
67
|
+
getTreeItem(element: HistoryItem): vscode.TreeItem;
|
|
68
|
+
/**
|
|
69
|
+
* Get children
|
|
70
|
+
*/
|
|
71
|
+
getChildren(element?: HistoryItem): Thenable<HistoryItem[]>;
|
|
72
|
+
/**
|
|
73
|
+
* Generate unique ID
|
|
74
|
+
*/
|
|
75
|
+
private generateId;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=history-view-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"history-view-provider.d.ts","sourceRoot":"","sources":["../../src/views/history-view-provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC;;GAEG;AACH,MAAM,MAAM,gBAAgB,GACxB,QAAQ,GACR,UAAU,GACV,SAAS,GACT,UAAU,GACV,QAAQ,CAAC;AAEb;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,MAAM,CAAC,QAAQ;aAE5B,KAAK,EAAE,YAAY;aACnB,gBAAgB,EAAE,MAAM,CAAC,wBAAwB;gBADjD,KAAK,EAAE,YAAY,EACnB,gBAAgB,EAAE,MAAM,CAAC,wBAAwB;IA2BnE;;OAEG;IACH,OAAO,CAAC,UAAU;CAgBnB;AAED;;;;GAIG;AACH,qBAAa,mBACX,YAAW,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC;IAE/C,OAAO,CAAC,oBAAoB,CAExB;IACJ,QAAQ,CAAC,mBAAmB,sDAAmC;IAE/D,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,UAAU,CAAM;IAExB;;OAEG;IACH,OAAO,IAAI,IAAI;IAIf;;OAEG;IACH,QAAQ,CACN,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,MAAM,GACf,YAAY;IAoBf;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAI9C;;OAEG;IACH,MAAM,IAAI,YAAY,EAAE;IAIxB;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,CAAC,QAAQ;IAIlD;;OAEG;IACH,WAAW,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IAgD3D;;OAEG;IACH,OAAO,CAAC,UAAU;CAGnB"}
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* HistoryViewProvider - History panel tree view
|
|
4
|
+
*
|
|
5
|
+
* @module katashiro
|
|
6
|
+
* @task TSK-072
|
|
7
|
+
*/
|
|
8
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
15
|
+
}) : (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
o[k2] = m[k];
|
|
18
|
+
}));
|
|
19
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
20
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
21
|
+
}) : function(o, v) {
|
|
22
|
+
o["default"] = v;
|
|
23
|
+
});
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.HistoryViewProvider = exports.HistoryItem = void 0;
|
|
43
|
+
const vscode = __importStar(require("vscode"));
|
|
44
|
+
/**
|
|
45
|
+
* History item for tree view
|
|
46
|
+
*/
|
|
47
|
+
class HistoryItem extends vscode.TreeItem {
|
|
48
|
+
entry;
|
|
49
|
+
collapsibleState;
|
|
50
|
+
constructor(entry, collapsibleState) {
|
|
51
|
+
super(entry.title, collapsibleState);
|
|
52
|
+
this.entry = entry;
|
|
53
|
+
this.collapsibleState = collapsibleState;
|
|
54
|
+
this.description = this.formatTime(entry.timestamp);
|
|
55
|
+
this.tooltip = `${entry.type}: ${entry.title}\n${entry.details || ''}`;
|
|
56
|
+
this.contextValue = entry.type;
|
|
57
|
+
// Set icon based on type
|
|
58
|
+
switch (entry.type) {
|
|
59
|
+
case 'search':
|
|
60
|
+
this.iconPath = new vscode.ThemeIcon('search');
|
|
61
|
+
break;
|
|
62
|
+
case 'analysis':
|
|
63
|
+
this.iconPath = new vscode.ThemeIcon('pulse');
|
|
64
|
+
break;
|
|
65
|
+
case 'summary':
|
|
66
|
+
this.iconPath = new vscode.ThemeIcon('note');
|
|
67
|
+
break;
|
|
68
|
+
case 'research':
|
|
69
|
+
this.iconPath = new vscode.ThemeIcon('book');
|
|
70
|
+
break;
|
|
71
|
+
case 'report':
|
|
72
|
+
this.iconPath = new vscode.ThemeIcon('file-text');
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Format timestamp
|
|
78
|
+
*/
|
|
79
|
+
formatTime(date) {
|
|
80
|
+
const now = new Date();
|
|
81
|
+
const diffMs = now.getTime() - date.getTime();
|
|
82
|
+
const diffMins = Math.floor(diffMs / 60000);
|
|
83
|
+
if (diffMins < 1)
|
|
84
|
+
return 'just now';
|
|
85
|
+
if (diffMins < 60)
|
|
86
|
+
return `${diffMins}m ago`;
|
|
87
|
+
const diffHours = Math.floor(diffMins / 60);
|
|
88
|
+
if (diffHours < 24)
|
|
89
|
+
return `${diffHours}h ago`;
|
|
90
|
+
const diffDays = Math.floor(diffHours / 24);
|
|
91
|
+
if (diffDays < 7)
|
|
92
|
+
return `${diffDays}d ago`;
|
|
93
|
+
return date.toLocaleDateString();
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
exports.HistoryItem = HistoryItem;
|
|
97
|
+
/**
|
|
98
|
+
* HistoryViewProvider
|
|
99
|
+
*
|
|
100
|
+
* Provides tree data for the History panel
|
|
101
|
+
*/
|
|
102
|
+
class HistoryViewProvider {
|
|
103
|
+
_onDidChangeTreeData = new vscode.EventEmitter();
|
|
104
|
+
onDidChangeTreeData = this._onDidChangeTreeData.event;
|
|
105
|
+
history = [];
|
|
106
|
+
maxEntries = 50;
|
|
107
|
+
/**
|
|
108
|
+
* Refresh the tree view
|
|
109
|
+
*/
|
|
110
|
+
refresh() {
|
|
111
|
+
this._onDidChangeTreeData.fire();
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Add a history entry
|
|
115
|
+
*/
|
|
116
|
+
addEntry(type, title, details) {
|
|
117
|
+
const entry = {
|
|
118
|
+
id: this.generateId(),
|
|
119
|
+
type,
|
|
120
|
+
title,
|
|
121
|
+
timestamp: new Date(),
|
|
122
|
+
details,
|
|
123
|
+
};
|
|
124
|
+
this.history.unshift(entry);
|
|
125
|
+
// Limit history size
|
|
126
|
+
if (this.history.length > this.maxEntries) {
|
|
127
|
+
this.history = this.history.slice(0, this.maxEntries);
|
|
128
|
+
}
|
|
129
|
+
this.refresh();
|
|
130
|
+
return entry;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Clear all history
|
|
134
|
+
*/
|
|
135
|
+
clear() {
|
|
136
|
+
this.history = [];
|
|
137
|
+
this.refresh();
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Get entry by ID
|
|
141
|
+
*/
|
|
142
|
+
getEntry(id) {
|
|
143
|
+
return this.history.find((e) => e.id === id);
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Get all entries
|
|
147
|
+
*/
|
|
148
|
+
getAll() {
|
|
149
|
+
return [...this.history];
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Get tree item
|
|
153
|
+
*/
|
|
154
|
+
getTreeItem(element) {
|
|
155
|
+
return element;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Get children
|
|
159
|
+
*/
|
|
160
|
+
getChildren(element) {
|
|
161
|
+
if (element) {
|
|
162
|
+
// No children for history items
|
|
163
|
+
return Promise.resolve([]);
|
|
164
|
+
}
|
|
165
|
+
// Root level - all history entries
|
|
166
|
+
if (this.history.length === 0) {
|
|
167
|
+
return Promise.resolve([]);
|
|
168
|
+
}
|
|
169
|
+
// Group by date
|
|
170
|
+
const today = [];
|
|
171
|
+
const yesterday = [];
|
|
172
|
+
const thisWeek = [];
|
|
173
|
+
const older = [];
|
|
174
|
+
const now = new Date();
|
|
175
|
+
const todayStart = new Date(now.getFullYear(), now.getMonth(), now.getDate());
|
|
176
|
+
const yesterdayStart = new Date(todayStart.getTime() - 86400000);
|
|
177
|
+
const weekStart = new Date(todayStart.getTime() - 7 * 86400000);
|
|
178
|
+
for (const entry of this.history) {
|
|
179
|
+
const time = entry.timestamp.getTime();
|
|
180
|
+
if (time >= todayStart.getTime()) {
|
|
181
|
+
today.push(entry);
|
|
182
|
+
}
|
|
183
|
+
else if (time >= yesterdayStart.getTime()) {
|
|
184
|
+
yesterday.push(entry);
|
|
185
|
+
}
|
|
186
|
+
else if (time >= weekStart.getTime()) {
|
|
187
|
+
thisWeek.push(entry);
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
older.push(entry);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
// Return all entries as flat list
|
|
194
|
+
return Promise.resolve(this.history.map((entry) => new HistoryItem(entry, vscode.TreeItemCollapsibleState.None)));
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Generate unique ID
|
|
198
|
+
*/
|
|
199
|
+
generateId() {
|
|
200
|
+
return `history-${Date.now()}-${Math.random().toString(36).substring(2, 9)}`;
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
exports.HistoryViewProvider = HistoryViewProvider;
|
|
204
|
+
//# sourceMappingURL=history-view-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"history-view-provider.js","sourceRoot":"","sources":["../../src/views/history-view-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Views module exports
|
|
3
|
+
*/
|
|
4
|
+
export { ResearchViewProvider, ResearchItem } from './research-view-provider.js';
|
|
5
|
+
export { KnowledgeViewProvider, KnowledgeItem, } from './knowledge-view-provider.js';
|
|
6
|
+
export { HistoryViewProvider, HistoryItem, type HistoryEntry, type HistoryEntryType, } from './history-view-provider.js';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/views/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,aAAa,GACd,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,KAAK,YAAY,EACjB,KAAK,gBAAgB,GACtB,MAAM,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Views module exports
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.HistoryItem = exports.HistoryViewProvider = exports.KnowledgeItem = exports.KnowledgeViewProvider = exports.ResearchItem = exports.ResearchViewProvider = void 0;
|
|
7
|
+
var research_view_provider_js_1 = require("./research-view-provider.js");
|
|
8
|
+
Object.defineProperty(exports, "ResearchViewProvider", { enumerable: true, get: function () { return research_view_provider_js_1.ResearchViewProvider; } });
|
|
9
|
+
Object.defineProperty(exports, "ResearchItem", { enumerable: true, get: function () { return research_view_provider_js_1.ResearchItem; } });
|
|
10
|
+
var knowledge_view_provider_js_1 = require("./knowledge-view-provider.js");
|
|
11
|
+
Object.defineProperty(exports, "KnowledgeViewProvider", { enumerable: true, get: function () { return knowledge_view_provider_js_1.KnowledgeViewProvider; } });
|
|
12
|
+
Object.defineProperty(exports, "KnowledgeItem", { enumerable: true, get: function () { return knowledge_view_provider_js_1.KnowledgeItem; } });
|
|
13
|
+
var history_view_provider_js_1 = require("./history-view-provider.js");
|
|
14
|
+
Object.defineProperty(exports, "HistoryViewProvider", { enumerable: true, get: function () { return history_view_provider_js_1.HistoryViewProvider; } });
|
|
15
|
+
Object.defineProperty(exports, "HistoryItem", { enumerable: true, get: function () { return history_view_provider_js_1.HistoryItem; } });
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/views/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,yEAAiF;AAAxE,iIAAA,oBAAoB,OAAA;AAAE,yHAAA,YAAY,OAAA;AAC3C,2EAGsC;AAFpC,mIAAA,qBAAqB,OAAA;AACrB,2HAAA,aAAa,OAAA;AAEf,uEAKoC;AAJlC,+HAAA,mBAAmB,OAAA;AACnB,uHAAA,WAAW,OAAA"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KnowledgeViewProvider - Knowledge Graph panel tree view
|
|
3
|
+
*
|
|
4
|
+
* @module katashiro
|
|
5
|
+
* @task TSK-072
|
|
6
|
+
*/
|
|
7
|
+
import * as vscode from 'vscode';
|
|
8
|
+
/**
|
|
9
|
+
* Knowledge item for tree view
|
|
10
|
+
*/
|
|
11
|
+
export declare class KnowledgeItem extends vscode.TreeItem {
|
|
12
|
+
readonly label: string;
|
|
13
|
+
readonly collapsibleState: vscode.TreeItemCollapsibleState;
|
|
14
|
+
readonly itemType: 'category' | 'node' | 'edge';
|
|
15
|
+
readonly description?: string | undefined;
|
|
16
|
+
constructor(label: string, collapsibleState: vscode.TreeItemCollapsibleState, itemType: 'category' | 'node' | 'edge', description?: string | undefined);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* KnowledgeViewProvider
|
|
20
|
+
*
|
|
21
|
+
* Provides tree data for the Knowledge Graph panel
|
|
22
|
+
*/
|
|
23
|
+
export declare class KnowledgeViewProvider implements vscode.TreeDataProvider<KnowledgeItem> {
|
|
24
|
+
private _onDidChangeTreeData;
|
|
25
|
+
readonly onDidChangeTreeData: vscode.Event<void | KnowledgeItem | null | undefined>;
|
|
26
|
+
private nodes;
|
|
27
|
+
private edges;
|
|
28
|
+
/**
|
|
29
|
+
* Refresh the tree view
|
|
30
|
+
*/
|
|
31
|
+
refresh(): void;
|
|
32
|
+
/**
|
|
33
|
+
* Add a node
|
|
34
|
+
*/
|
|
35
|
+
addNode(id: string, label: string, type: string): void;
|
|
36
|
+
/**
|
|
37
|
+
* Add an edge
|
|
38
|
+
*/
|
|
39
|
+
addEdge(source: string, target: string, relation: string): void;
|
|
40
|
+
/**
|
|
41
|
+
* Clear all data
|
|
42
|
+
*/
|
|
43
|
+
clear(): void;
|
|
44
|
+
/**
|
|
45
|
+
* Get statistics
|
|
46
|
+
*/
|
|
47
|
+
getStats(): {
|
|
48
|
+
nodes: number;
|
|
49
|
+
edges: number;
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Get tree item
|
|
53
|
+
*/
|
|
54
|
+
getTreeItem(element: KnowledgeItem): vscode.TreeItem;
|
|
55
|
+
/**
|
|
56
|
+
* Get children
|
|
57
|
+
*/
|
|
58
|
+
getChildren(element?: KnowledgeItem): Thenable<KnowledgeItem[]>;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=knowledge-view-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"knowledge-view-provider.d.ts","sourceRoot":"","sources":["../../src/views/knowledge-view-provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC;;GAEG;AACH,qBAAa,aAAc,SAAQ,MAAM,CAAC,QAAQ;aAE9B,KAAK,EAAE,MAAM;aACb,gBAAgB,EAAE,MAAM,CAAC,wBAAwB;aACjD,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM;aACtC,WAAW,CAAC,EAAE,MAAM;gBAHpB,KAAK,EAAE,MAAM,EACb,gBAAgB,EAAE,MAAM,CAAC,wBAAwB,EACjD,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,EACtC,WAAW,CAAC,EAAE,MAAM,YAAA;CAmBvC;AAED;;;;GAIG;AACH,qBAAa,qBACX,YAAW,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC;IAEjD,OAAO,CAAC,oBAAoB,CAExB;IACJ,QAAQ,CAAC,mBAAmB,wDAAmC;IAE/D,OAAO,CAAC,KAAK,CAA0D;IACvE,OAAO,CAAC,KAAK,CACR;IAEL;;OAEG;IACH,OAAO,IAAI,IAAI;IAIf;;OAEG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAKtD;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAK/D;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;OAEG;IACH,QAAQ,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;IAO5C;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAAC,QAAQ;IAIpD;;OAEG;IACH,WAAW,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,QAAQ,CAAC,aAAa,EAAE,CAAC;CAgGhE"}
|