feat: Netzwerkanalyse-Feature (Wissensgraph)
Neues Feature zur Visualisierung von Entitäten und Beziehungen aus ausgewählten Lagen als interaktiver d3.js-Netzwerkgraph. - Haiku extrahiert Entitäten (Person, Organisation, Ort, Ereignis, Militär) - Opus analysiert Beziehungen und korrigiert Haiku-Fehler - 6 neue DB-Tabellen (network_analyses, _entities, _relations, etc.) - REST-API: CRUD + Generierung + Export (JSON/CSV) - d3.js Force-Directed Graph mit Zoom, Filter, Suche, Export - WebSocket-Events für Live-Progress während Generierung - Sidebar-Integration mit Netzwerkanalysen-Sektion Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Dieser Commit ist enthalten in:
43
src/static/js/api_network.js
Normale Datei
43
src/static/js/api_network.js
Normale Datei
@@ -0,0 +1,43 @@
|
||||
/**
|
||||
* Netzwerkanalyse API-Methoden — werden zum API-Objekt hinzugefügt.
|
||||
*/
|
||||
|
||||
// Netzwerkanalysen
|
||||
API.listNetworkAnalyses = function() {
|
||||
return this._request('GET', '/network-analyses');
|
||||
};
|
||||
|
||||
API.createNetworkAnalysis = function(data) {
|
||||
return this._request('POST', '/network-analyses', data);
|
||||
};
|
||||
|
||||
API.getNetworkAnalysis = function(id) {
|
||||
return this._request('GET', '/network-analyses/' + id);
|
||||
};
|
||||
|
||||
API.getNetworkGraph = function(id) {
|
||||
return this._request('GET', '/network-analyses/' + id + '/graph');
|
||||
};
|
||||
|
||||
API.regenerateNetwork = function(id) {
|
||||
return this._request('POST', '/network-analyses/' + id + '/regenerate');
|
||||
};
|
||||
|
||||
API.checkNetworkUpdate = function(id) {
|
||||
return this._request('GET', '/network-analyses/' + id + '/check-update');
|
||||
};
|
||||
|
||||
API.updateNetworkAnalysis = function(id, data) {
|
||||
return this._request('PUT', '/network-analyses/' + id, data);
|
||||
};
|
||||
|
||||
API.deleteNetworkAnalysis = function(id) {
|
||||
return this._request('DELETE', '/network-analyses/' + id);
|
||||
};
|
||||
|
||||
API.exportNetworkAnalysis = function(id, format) {
|
||||
var token = localStorage.getItem('osint_token');
|
||||
return fetch(this.baseUrl + '/network-analyses/' + id + '/export?format=' + format, {
|
||||
headers: { 'Authorization': 'Bearer ' + token },
|
||||
});
|
||||
};
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren