@elqnt/kg 2.0.7 → 2.1.0
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/api/index.d.mts +109 -0
- package/dist/api/index.d.ts +109 -0
- package/dist/api/index.js +62 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/index.mjs +62 -0
- package/dist/chunk-55R4PZ5A.mjs +210 -0
- package/dist/chunk-55R4PZ5A.mjs.map +1 -0
- package/dist/{chunk-2OYIMLE4.js → chunk-67SUELDR.js} +4 -2
- package/dist/chunk-67SUELDR.js.map +1 -0
- package/dist/chunk-BQZLJ5LD.mjs +577 -0
- package/dist/chunk-BQZLJ5LD.mjs.map +1 -0
- package/dist/chunk-JSMI4PFC.js +210 -0
- package/dist/chunk-JSMI4PFC.js.map +1 -0
- package/dist/chunk-KATHAUDG.js +577 -0
- package/dist/chunk-KATHAUDG.js.map +1 -0
- package/dist/chunk-NJNBEGDB.mjs +2 -0
- package/dist/chunk-NJNBEGDB.mjs.map +1 -0
- package/dist/{chunk-IXLQ6ZMR.mjs → chunk-RDIQ7HTM.mjs} +3 -1
- package/dist/{chunk-IXLQ6ZMR.mjs.map → chunk-RDIQ7HTM.mjs.map} +1 -1
- package/dist/{chunk-WEMVDZJ3.js → chunk-UCKE66GB.js} +4 -2
- package/dist/chunk-UCKE66GB.js.map +1 -0
- package/dist/{chunk-EF7YJ7LL.mjs → chunk-VUSVP6OI.mjs} +3 -1
- package/dist/{chunk-EF7YJ7LL.mjs.map → chunk-VUSVP6OI.mjs.map} +1 -1
- package/dist/chunk-W4XVBGE7.js +2 -0
- package/dist/chunk-W4XVBGE7.js.map +1 -0
- package/dist/hooks/index.d.mts +89 -0
- package/dist/hooks/index.d.ts +89 -0
- package/dist/hooks/index.js +16 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/index.mjs +16 -0
- package/dist/hooks/index.mjs.map +1 -0
- package/dist/index.d.mts +3 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +73 -4
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +73 -4
- package/dist/index.mjs.map +1 -1
- package/dist/models/index.js +5 -4
- package/dist/models/index.js.map +1 -1
- package/dist/models/index.mjs +4 -3
- package/dist/models/kg-designer.js +4 -3
- package/dist/models/kg-designer.js.map +1 -1
- package/dist/models/kg-designer.mjs +2 -1
- package/dist/models/kg.js +4 -3
- package/dist/models/kg.js.map +1 -1
- package/dist/models/kg.mjs +2 -1
- package/package.json +23 -11
- package/dist/chunk-2OYIMLE4.js.map +0 -1
- package/dist/chunk-J3XZF6JO.mjs +0 -1
- package/dist/chunk-RDWVE6B2.js +0 -1
- package/dist/chunk-RDWVE6B2.js.map +0 -1
- package/dist/chunk-WEMVDZJ3.js.map +0 -1
- /package/dist/{chunk-J3XZF6JO.mjs.map → api/index.mjs.map} +0 -0
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
+
|
|
3
|
+
// api/index.ts
|
|
4
|
+
var _browser = require('@elqnt/api-client/browser');
|
|
5
|
+
async function listGraphsApi(options) {
|
|
6
|
+
return _browser.browserApiRequest.call(void 0, "/api/v1/kg/graphs", { method: "GET", ...options });
|
|
7
|
+
}
|
|
8
|
+
async function getGraphApi(graphId, options) {
|
|
9
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/graphs/${graphId}`, { method: "GET", ...options });
|
|
10
|
+
}
|
|
11
|
+
async function createGraphApi(graph, options) {
|
|
12
|
+
return _browser.browserApiRequest.call(void 0, "/api/v1/kg/graphs", { method: "POST", body: graph, ...options });
|
|
13
|
+
}
|
|
14
|
+
async function updateGraphApi(graphId, updates, options) {
|
|
15
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/graphs/${graphId}`, { method: "PUT", body: updates, ...options });
|
|
16
|
+
}
|
|
17
|
+
async function deleteGraphApi(graphId, options) {
|
|
18
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/graphs/${graphId}`, { method: "DELETE", ...options });
|
|
19
|
+
}
|
|
20
|
+
async function queryGraphApi(query, options) {
|
|
21
|
+
return _browser.browserApiRequest.call(void 0, "/api/v1/kg/query", { method: "POST", body: query, timeout: 3e4, ...options });
|
|
22
|
+
}
|
|
23
|
+
async function getGraphLabelsApi(options) {
|
|
24
|
+
const params = new URLSearchParams();
|
|
25
|
+
if (options.graphId) params.set("graphId", options.graphId);
|
|
26
|
+
const queryString = params.toString();
|
|
27
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/labels${queryString ? `?${queryString}` : ""}`, { method: "GET", ...options });
|
|
28
|
+
}
|
|
29
|
+
async function getKGNodeApi(nodeId, options) {
|
|
30
|
+
const params = new URLSearchParams();
|
|
31
|
+
if (options.graphId) params.set("graphId", options.graphId);
|
|
32
|
+
const queryString = params.toString();
|
|
33
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/nodes/${nodeId}${queryString ? `?${queryString}` : ""}`, { method: "GET", ...options });
|
|
34
|
+
}
|
|
35
|
+
async function ingestKGNodeApi(node, options) {
|
|
36
|
+
return _browser.browserApiRequest.call(void 0, "/api/v1/kg/nodes", {
|
|
37
|
+
method: "POST",
|
|
38
|
+
body: node,
|
|
39
|
+
headers: options.graphId ? { "X-Graph-ID": options.graphId } : void 0,
|
|
40
|
+
...options
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
async function updateKGNodeApi(nodeId, updates, options) {
|
|
44
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/nodes/${nodeId}`, {
|
|
45
|
+
method: "PUT",
|
|
46
|
+
body: updates,
|
|
47
|
+
headers: options.graphId ? { "X-Graph-ID": options.graphId } : void 0,
|
|
48
|
+
...options
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
async function getNodeConnectionStatsApi(nodeId, edgeLabel, options) {
|
|
52
|
+
const params = new URLSearchParams();
|
|
53
|
+
params.set("edgeLabel", edgeLabel);
|
|
54
|
+
if (options.graphId) params.set("graphId", options.graphId);
|
|
55
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/nodes/${nodeId}/connections?${params.toString()}`, { method: "GET", ...options });
|
|
56
|
+
}
|
|
57
|
+
async function ingestDocumentApi(document, options) {
|
|
58
|
+
return _browser.browserApiRequest.call(void 0, "/api/v1/kg/ingest", {
|
|
59
|
+
method: "POST",
|
|
60
|
+
body: document,
|
|
61
|
+
timeout: 12e4,
|
|
62
|
+
headers: options.graphId ? { "X-Graph-ID": options.graphId } : void 0,
|
|
63
|
+
...options
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
async function deleteKGDocumentApi(documentId, options) {
|
|
67
|
+
const params = new URLSearchParams();
|
|
68
|
+
if (options.graphId) params.set("graphId", options.graphId);
|
|
69
|
+
const queryString = params.toString();
|
|
70
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/documents/${documentId}${queryString ? `?${queryString}` : ""}`, { method: "DELETE", ...options });
|
|
71
|
+
}
|
|
72
|
+
async function optimizeGraphApi(options) {
|
|
73
|
+
return _browser.browserApiRequest.call(void 0, "/api/v1/kg/graph/optimize", {
|
|
74
|
+
method: "POST",
|
|
75
|
+
body: {},
|
|
76
|
+
headers: options.graphId ? { "X-Graph-ID": options.graphId } : void 0,
|
|
77
|
+
...options
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
async function listDesignerNodesApi(options) {
|
|
81
|
+
const params = new URLSearchParams();
|
|
82
|
+
if (options.graphId) params.set("graphId", options.graphId);
|
|
83
|
+
const queryString = params.toString();
|
|
84
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/designer/nodes${queryString ? `?${queryString}` : ""}`, { method: "GET", ...options });
|
|
85
|
+
}
|
|
86
|
+
async function getDesignerNodeApi(label, options) {
|
|
87
|
+
const params = new URLSearchParams();
|
|
88
|
+
if (options.graphId) params.set("graphId", options.graphId);
|
|
89
|
+
const queryString = params.toString();
|
|
90
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/designer/nodes/${label}${queryString ? `?${queryString}` : ""}`, { method: "GET", ...options });
|
|
91
|
+
}
|
|
92
|
+
async function createDesignerNodeApi(node, options) {
|
|
93
|
+
return _browser.browserApiRequest.call(void 0, "/api/v1/kg/designer/nodes", {
|
|
94
|
+
method: "POST",
|
|
95
|
+
body: { node },
|
|
96
|
+
headers: options.graphId ? { "X-Graph-ID": options.graphId } : void 0,
|
|
97
|
+
...options
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
async function updateDesignerNodeApi(label, node, options) {
|
|
101
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/designer/nodes/${label}`, {
|
|
102
|
+
method: "PUT",
|
|
103
|
+
body: { node },
|
|
104
|
+
headers: options.graphId ? { "X-Graph-ID": options.graphId } : void 0,
|
|
105
|
+
...options
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
async function deleteDesignerNodeApi(label, options) {
|
|
109
|
+
const params = new URLSearchParams();
|
|
110
|
+
if (options.graphId) params.set("graphId", options.graphId);
|
|
111
|
+
const queryString = params.toString();
|
|
112
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/designer/nodes/${label}${queryString ? `?${queryString}` : ""}`, { method: "DELETE", ...options });
|
|
113
|
+
}
|
|
114
|
+
async function listDesignerEdgesApi(options) {
|
|
115
|
+
const params = new URLSearchParams();
|
|
116
|
+
if (options.graphId) params.set("graphId", options.graphId);
|
|
117
|
+
const queryString = params.toString();
|
|
118
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/designer/edges${queryString ? `?${queryString}` : ""}`, { method: "GET", ...options });
|
|
119
|
+
}
|
|
120
|
+
async function createDesignerEdgeApi(edge, options) {
|
|
121
|
+
return _browser.browserApiRequest.call(void 0, "/api/v1/kg/designer/edges", {
|
|
122
|
+
method: "POST",
|
|
123
|
+
body: { edge },
|
|
124
|
+
headers: options.graphId ? { "X-Graph-ID": options.graphId } : void 0,
|
|
125
|
+
...options
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
async function updateDesignerEdgeApi(label, edge, options) {
|
|
129
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/designer/edges/${label}`, {
|
|
130
|
+
method: "PUT",
|
|
131
|
+
body: { edge },
|
|
132
|
+
headers: options.graphId ? { "X-Graph-ID": options.graphId } : void 0,
|
|
133
|
+
...options
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
async function deleteDesignerEdgeApi(label, options) {
|
|
137
|
+
const params = new URLSearchParams();
|
|
138
|
+
if (options.graphId) params.set("graphId", options.graphId);
|
|
139
|
+
const queryString = params.toString();
|
|
140
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/designer/edges/${label}${queryString ? `?${queryString}` : ""}`, { method: "DELETE", ...options });
|
|
141
|
+
}
|
|
142
|
+
async function listCrawlJobsApi(options) {
|
|
143
|
+
const params = new URLSearchParams();
|
|
144
|
+
if (options.graphId) params.set("graphId", options.graphId);
|
|
145
|
+
if (options.limit) params.set("limit", String(options.limit));
|
|
146
|
+
if (options.offset) params.set("offset", String(options.offset));
|
|
147
|
+
if (options.status) params.set("status", options.status);
|
|
148
|
+
const queryString = params.toString();
|
|
149
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/crawl/jobs${queryString ? `?${queryString}` : ""}`, { method: "GET", ...options });
|
|
150
|
+
}
|
|
151
|
+
async function startCrawlJobApi(params, options) {
|
|
152
|
+
return _browser.browserApiRequest.call(void 0, "/api/v1/kg/crawl/jobs", {
|
|
153
|
+
method: "POST",
|
|
154
|
+
body: params,
|
|
155
|
+
headers: options.graphId ? { "X-Graph-ID": options.graphId } : void 0,
|
|
156
|
+
...options
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
async function getCrawlJobStatusApi(jobId, options) {
|
|
160
|
+
const params = new URLSearchParams();
|
|
161
|
+
if (options.graphId) params.set("graphId", options.graphId);
|
|
162
|
+
const queryString = params.toString();
|
|
163
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/crawl/jobs/${jobId}${queryString ? `?${queryString}` : ""}`, { method: "GET", ...options });
|
|
164
|
+
}
|
|
165
|
+
async function cancelCrawlJobApi(jobId, options) {
|
|
166
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/crawl/jobs/${jobId}/cancel`, {
|
|
167
|
+
method: "POST",
|
|
168
|
+
body: {},
|
|
169
|
+
headers: options.graphId ? { "X-Graph-ID": options.graphId } : void 0,
|
|
170
|
+
...options
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
async function getCrawledPagesApi(jobId, options) {
|
|
174
|
+
const params = new URLSearchParams();
|
|
175
|
+
if (options.graphId) params.set("graphId", options.graphId);
|
|
176
|
+
const queryString = params.toString();
|
|
177
|
+
return _browser.browserApiRequest.call(void 0, `/api/v1/kg/crawl/jobs/${jobId}/pages${queryString ? `?${queryString}` : ""}`, { method: "GET", ...options });
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
exports.listGraphsApi = listGraphsApi; exports.getGraphApi = getGraphApi; exports.createGraphApi = createGraphApi; exports.updateGraphApi = updateGraphApi; exports.deleteGraphApi = deleteGraphApi; exports.queryGraphApi = queryGraphApi; exports.getGraphLabelsApi = getGraphLabelsApi; exports.getKGNodeApi = getKGNodeApi; exports.ingestKGNodeApi = ingestKGNodeApi; exports.updateKGNodeApi = updateKGNodeApi; exports.getNodeConnectionStatsApi = getNodeConnectionStatsApi; exports.ingestDocumentApi = ingestDocumentApi; exports.deleteKGDocumentApi = deleteKGDocumentApi; exports.optimizeGraphApi = optimizeGraphApi; exports.listDesignerNodesApi = listDesignerNodesApi; exports.getDesignerNodeApi = getDesignerNodeApi; exports.createDesignerNodeApi = createDesignerNodeApi; exports.updateDesignerNodeApi = updateDesignerNodeApi; exports.deleteDesignerNodeApi = deleteDesignerNodeApi; exports.listDesignerEdgesApi = listDesignerEdgesApi; exports.createDesignerEdgeApi = createDesignerEdgeApi; exports.updateDesignerEdgeApi = updateDesignerEdgeApi; exports.deleteDesignerEdgeApi = deleteDesignerEdgeApi; exports.listCrawlJobsApi = listCrawlJobsApi; exports.startCrawlJobApi = startCrawlJobApi; exports.getCrawlJobStatusApi = getCrawlJobStatusApi; exports.cancelCrawlJobApi = cancelCrawlJobApi; exports.getCrawledPagesApi = getCrawledPagesApi;
|
|
210
|
+
//# sourceMappingURL=chunk-JSMI4PFC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/eloquent-packages/eloquent-packages/packages/kg/dist/chunk-JSMI4PFC.js","../api/index.ts"],"names":[],"mappings":"AAAA,qFAAY;AACZ;AACA;ACKA,oDAAkC;AAyElC,MAAA,SAAsB,aAAA,CAAc,OAAA,EAAmE;AACrG,EAAA,OAAO,wCAAA,mBAAkB,EAAqB,EAAE,MAAA,EAAQ,KAAA,EAAO,GAAG,QAAQ,CAAC,CAAA;AAC7E;AAEA,MAAA,SAAsB,WAAA,CAAY,OAAA,EAAiB,OAAA,EAAiE;AAClH,EAAA,OAAO,wCAAA,CAAkB,kBAAA,EAAqB,OAAO,CAAA,CAAA;AACvD;AAEoI;AAClF,EAAA;AAClD;AAKE;AAEqD,EAAA;AACvD;AAE0H;AACnE,EAAA;AACvD;AAMgH;AAC/D,EAAA;AACjD;AAEgH;AAC3E,EAAA;AACgB,EAAA;AACf,EAAA;AACS,EAAA;AAC/C;AAS0C;AACL,EAAA;AACgB,EAAA;AACf,EAAA;AACkB,EAAA;AACxD;AAK8C;AACC,EAAA;AACnC,IAAA;AACF,IAAA;AAC6C,IAAA;AAChD,IAAA;AACJ,EAAA;AACH;AAKE;AAEmD,EAAA;AACzC,IAAA;AACF,IAAA;AAC6C,IAAA;AAChD,IAAA;AACJ,EAAA;AACH;AAIE;AAGmC,EAAA;AACF,EAAA;AACkB,EAAA;AACA,EAAA;AACrD;AAS0E;AAC1B,EAAA;AACpC,IAAA;AACF,IAAA;AACG,IAAA;AAC0C,IAAA;AAChD,IAAA;AACJ,EAAA;AACH;AAKgD;AACX,EAAA;AACgB,EAAA;AACf,EAAA;AACa,EAAA;AACnD;AAEsI;AAC9E,EAAA;AAC5C,IAAA;AACD,IAAA;AAC4C,IAAA;AAChD,IAAA;AACJ,EAAA;AACH;AAM2G;AACtE,EAAA;AACgB,EAAA;AACf,EAAA;AACiB,EAAA;AACvD;AAEwH;AACnF,EAAA;AACgB,EAAA;AACf,EAAA;AACkB,EAAA;AACxD;AAK2C;AACa,EAAA;AAC5C,IAAA;AACK,IAAA;AACsC,IAAA;AAChD,IAAA;AACJ,EAAA;AACH;AAKE;AAEsD,EAAA;AAC5C,IAAA;AACK,IAAA;AACsC,IAAA;AAChD,IAAA;AACJ,EAAA;AACH;AAK0E;AACrC,EAAA;AACgB,EAAA;AACf,EAAA;AACkB,EAAA;AACxD;AAM2G;AACtE,EAAA;AACgB,EAAA;AACf,EAAA;AACiB,EAAA;AACvD;AAK2C;AACa,EAAA;AAC5C,IAAA;AACK,IAAA;AACsC,IAAA;AAChD,IAAA;AACJ,EAAA;AACH;AAKE;AAEsD,EAAA;AAC5C,IAAA;AACK,IAAA;AACsC,IAAA;AAChD,IAAA;AACJ,EAAA;AACH;AAK0E;AACrC,EAAA;AACgB,EAAA;AACf,EAAA;AACkB,EAAA;AACxD;AAQ+C;AACV,EAAA;AACgB,EAAA;AACG,EAAA;AACN,EAAA;AACC,EAAA;AACb,EAAA;AACa,EAAA;AACnD;AAK+C;AACK,EAAA;AACxC,IAAA;AACF,IAAA;AAC6C,IAAA;AAChD,IAAA;AACJ,EAAA;AACH;AAKgD;AACX,EAAA;AACgB,EAAA;AACf,EAAA;AACc,EAAA;AACpD;AAKgD;AACI,EAAA;AACxC,IAAA;AACD,IAAA;AAC4C,IAAA;AAChD,IAAA;AACJ,EAAA;AACH;AAK8C;AACT,EAAA;AACgB,EAAA;AACf,EAAA;AACc,EAAA;AACpD;ADxLwD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/eloquent-packages/eloquent-packages/packages/kg/dist/chunk-JSMI4PFC.js","sourcesContent":[null,"/**\n * Knowledge Graph API functions\n *\n * Browser-side API client for KG operations.\n * Uses @elqnt/api-client for HTTP requests with automatic token management.\n */\n\nimport { browserApiRequest } from \"@elqnt/api-client/browser\";\nimport type { ApiResponse, ApiClientOptions } from \"@elqnt/api-client\";\nimport type { ResponseMetadata } from \"@elqnt/types\";\nimport type {\n Graph,\n ListGraphsResult,\n GetGraphResult,\n CreateGraphResult,\n CreateGraphRequest,\n UpdateGraphResult,\n DeleteGraphResult,\n KGNode,\n KGEdge,\n KGQuery,\n KGQueryResult,\n KGLabelInfo,\n KGNodeIngestRequest,\n KGSyncIngestResponse,\n DeleteDocumentResponse,\n GraphNodeDefinition,\n GraphNodeResponse,\n GraphEdgeDefinition,\n GraphEdgeResponse,\n} from \"../models\";\n\n// =============================================================================\n// TYPES\n// =============================================================================\n\nexport interface KGApiOptions extends ApiClientOptions {\n graphId?: string;\n}\n\nexport interface CrawlJob {\n id: string;\n baseUrl: string;\n depth: number;\n maxPages: number;\n status: string;\n pagesProcessed: number;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface CrawlJobsListResponse {\n jobs: CrawlJob[];\n total: number;\n}\n\nexport interface CrawlJobStatusResponse {\n job: CrawlJob;\n success: boolean;\n}\n\nexport interface CrawlJobStartResponse {\n jobId: string;\n success: boolean;\n}\n\nexport interface CrawledPagesResponse {\n pages: Array<{\n url: string;\n title: string;\n status: string;\n processedAt: string;\n }>;\n total: number;\n}\n\n// =============================================================================\n// GRAPHS\n// =============================================================================\n\nexport async function listGraphsApi(options: ApiClientOptions): Promise<ApiResponse<ListGraphsResult>> {\n return browserApiRequest(\"/api/v1/kg/graphs\", { method: \"GET\", ...options });\n}\n\nexport async function getGraphApi(graphId: string, options: ApiClientOptions): Promise<ApiResponse<GetGraphResult>> {\n return browserApiRequest(`/api/v1/kg/graphs/${graphId}`, { method: \"GET\", ...options });\n}\n\nexport async function createGraphApi(graph: CreateGraphRequest, options: ApiClientOptions): Promise<ApiResponse<CreateGraphResult>> {\n return browserApiRequest(\"/api/v1/kg/graphs\", { method: \"POST\", body: graph, ...options });\n}\n\nexport async function updateGraphApi(\n graphId: string,\n updates: Partial<Graph>,\n options: ApiClientOptions\n): Promise<ApiResponse<UpdateGraphResult>> {\n return browserApiRequest(`/api/v1/kg/graphs/${graphId}`, { method: \"PUT\", body: updates, ...options });\n}\n\nexport async function deleteGraphApi(graphId: string, options: ApiClientOptions): Promise<ApiResponse<DeleteGraphResult>> {\n return browserApiRequest(`/api/v1/kg/graphs/${graphId}`, { method: \"DELETE\", ...options });\n}\n\n// =============================================================================\n// QUERY & LABELS\n// =============================================================================\n\nexport async function queryGraphApi(query: KGQuery, options: KGApiOptions): Promise<ApiResponse<KGQueryResult>> {\n return browserApiRequest(\"/api/v1/kg/query\", { method: \"POST\", body: query, timeout: 30000, ...options });\n}\n\nexport async function getGraphLabelsApi(options: KGApiOptions): Promise<ApiResponse<{ labels: KGLabelInfo[] }>> {\n const params = new URLSearchParams();\n if (options.graphId) params.set(\"graphId\", options.graphId);\n const queryString = params.toString();\n return browserApiRequest(`/api/v1/kg/labels${queryString ? `?${queryString}` : \"\"}`, { method: \"GET\", ...options });\n}\n\n// =============================================================================\n// NODES\n// =============================================================================\n\nexport async function getKGNodeApi(\n nodeId: string,\n options: KGApiOptions\n): Promise<ApiResponse<{ node: KGNode }>> {\n const params = new URLSearchParams();\n if (options.graphId) params.set(\"graphId\", options.graphId);\n const queryString = params.toString();\n return browserApiRequest(`/api/v1/kg/nodes/${nodeId}${queryString ? `?${queryString}` : \"\"}`, { method: \"GET\", ...options });\n}\n\nexport async function ingestKGNodeApi(\n node: KGNodeIngestRequest,\n options: KGApiOptions\n): Promise<ApiResponse<KGSyncIngestResponse>> {\n return browserApiRequest(\"/api/v1/kg/nodes\", {\n method: \"POST\",\n body: node,\n headers: options.graphId ? { \"X-Graph-ID\": options.graphId } : undefined,\n ...options,\n });\n}\n\nexport async function updateKGNodeApi(\n nodeId: string,\n updates: Partial<KGNode>,\n options: KGApiOptions\n): Promise<ApiResponse<{ success: boolean; metadata: ResponseMetadata }>> {\n return browserApiRequest(`/api/v1/kg/nodes/${nodeId}`, {\n method: \"PUT\",\n body: updates,\n headers: options.graphId ? { \"X-Graph-ID\": options.graphId } : undefined,\n ...options,\n });\n}\n\nexport async function getNodeConnectionStatsApi(\n nodeId: string,\n edgeLabel: string,\n options: KGApiOptions\n): Promise<ApiResponse<Record<string, number>>> {\n const params = new URLSearchParams();\n params.set(\"edgeLabel\", edgeLabel);\n if (options.graphId) params.set(\"graphId\", options.graphId);\n return browserApiRequest(`/api/v1/kg/nodes/${nodeId}/connections?${params.toString()}`, { method: \"GET\", ...options });\n}\n\n// =============================================================================\n// DOCUMENTS\n// =============================================================================\n\nexport async function ingestDocumentApi(\n document: { id: string; title: string; content: string; docUrl?: string; lang?: string },\n options: KGApiOptions\n): Promise<ApiResponse<{ success: boolean; metadata: ResponseMetadata }>> {\n return browserApiRequest(\"/api/v1/kg/ingest\", {\n method: \"POST\",\n body: document,\n timeout: 120000,\n headers: options.graphId ? { \"X-Graph-ID\": options.graphId } : undefined,\n ...options,\n });\n}\n\nexport async function deleteKGDocumentApi(\n documentId: string,\n options: KGApiOptions\n): Promise<ApiResponse<DeleteDocumentResponse>> {\n const params = new URLSearchParams();\n if (options.graphId) params.set(\"graphId\", options.graphId);\n const queryString = params.toString();\n return browserApiRequest(`/api/v1/kg/documents/${documentId}${queryString ? `?${queryString}` : \"\"}`, { method: \"DELETE\", ...options });\n}\n\nexport async function optimizeGraphApi(options: KGApiOptions): Promise<ApiResponse<{ success: boolean; metadata: ResponseMetadata }>> {\n return browserApiRequest(\"/api/v1/kg/graph/optimize\", {\n method: \"POST\",\n body: {},\n headers: options.graphId ? { \"X-Graph-ID\": options.graphId } : undefined,\n ...options,\n });\n}\n\n// =============================================================================\n// DESIGNER - NODES\n// =============================================================================\n\nexport async function listDesignerNodesApi(options: KGApiOptions): Promise<ApiResponse<GraphNodeResponse>> {\n const params = new URLSearchParams();\n if (options.graphId) params.set(\"graphId\", options.graphId);\n const queryString = params.toString();\n return browserApiRequest(`/api/v1/kg/designer/nodes${queryString ? `?${queryString}` : \"\"}`, { method: \"GET\", ...options });\n}\n\nexport async function getDesignerNodeApi(label: string, options: KGApiOptions): Promise<ApiResponse<GraphNodeResponse>> {\n const params = new URLSearchParams();\n if (options.graphId) params.set(\"graphId\", options.graphId);\n const queryString = params.toString();\n return browserApiRequest(`/api/v1/kg/designer/nodes/${label}${queryString ? `?${queryString}` : \"\"}`, { method: \"GET\", ...options });\n}\n\nexport async function createDesignerNodeApi(\n node: Omit<GraphNodeDefinition, \"createdAt\" | \"updatedAt\">,\n options: KGApiOptions\n): Promise<ApiResponse<GraphNodeResponse>> {\n return browserApiRequest(\"/api/v1/kg/designer/nodes\", {\n method: \"POST\",\n body: { node },\n headers: options.graphId ? { \"X-Graph-ID\": options.graphId } : undefined,\n ...options,\n });\n}\n\nexport async function updateDesignerNodeApi(\n label: string,\n node: Partial<GraphNodeDefinition>,\n options: KGApiOptions\n): Promise<ApiResponse<GraphNodeResponse>> {\n return browserApiRequest(`/api/v1/kg/designer/nodes/${label}`, {\n method: \"PUT\",\n body: { node },\n headers: options.graphId ? { \"X-Graph-ID\": options.graphId } : undefined,\n ...options,\n });\n}\n\nexport async function deleteDesignerNodeApi(\n label: string,\n options: KGApiOptions\n): Promise<ApiResponse<{ success: boolean; metadata: ResponseMetadata }>> {\n const params = new URLSearchParams();\n if (options.graphId) params.set(\"graphId\", options.graphId);\n const queryString = params.toString();\n return browserApiRequest(`/api/v1/kg/designer/nodes/${label}${queryString ? `?${queryString}` : \"\"}`, { method: \"DELETE\", ...options });\n}\n\n// =============================================================================\n// DESIGNER - EDGES\n// =============================================================================\n\nexport async function listDesignerEdgesApi(options: KGApiOptions): Promise<ApiResponse<GraphEdgeResponse>> {\n const params = new URLSearchParams();\n if (options.graphId) params.set(\"graphId\", options.graphId);\n const queryString = params.toString();\n return browserApiRequest(`/api/v1/kg/designer/edges${queryString ? `?${queryString}` : \"\"}`, { method: \"GET\", ...options });\n}\n\nexport async function createDesignerEdgeApi(\n edge: Omit<GraphEdgeDefinition, \"createdAt\" | \"updatedAt\">,\n options: KGApiOptions\n): Promise<ApiResponse<GraphEdgeResponse>> {\n return browserApiRequest(\"/api/v1/kg/designer/edges\", {\n method: \"POST\",\n body: { edge },\n headers: options.graphId ? { \"X-Graph-ID\": options.graphId } : undefined,\n ...options,\n });\n}\n\nexport async function updateDesignerEdgeApi(\n label: string,\n edge: Partial<GraphEdgeDefinition>,\n options: KGApiOptions\n): Promise<ApiResponse<GraphEdgeResponse>> {\n return browserApiRequest(`/api/v1/kg/designer/edges/${label}`, {\n method: \"PUT\",\n body: { edge },\n headers: options.graphId ? { \"X-Graph-ID\": options.graphId } : undefined,\n ...options,\n });\n}\n\nexport async function deleteDesignerEdgeApi(\n label: string,\n options: KGApiOptions\n): Promise<ApiResponse<{ success: boolean; metadata: ResponseMetadata }>> {\n const params = new URLSearchParams();\n if (options.graphId) params.set(\"graphId\", options.graphId);\n const queryString = params.toString();\n return browserApiRequest(`/api/v1/kg/designer/edges/${label}${queryString ? `?${queryString}` : \"\"}`, { method: \"DELETE\", ...options });\n}\n\n// =============================================================================\n// CRAWL JOBS\n// =============================================================================\n\nexport async function listCrawlJobsApi(\n options: KGApiOptions & { limit?: number; offset?: number; status?: string }\n): Promise<ApiResponse<CrawlJobsListResponse>> {\n const params = new URLSearchParams();\n if (options.graphId) params.set(\"graphId\", options.graphId);\n if (options.limit) params.set(\"limit\", String(options.limit));\n if (options.offset) params.set(\"offset\", String(options.offset));\n if (options.status) params.set(\"status\", options.status);\n const queryString = params.toString();\n return browserApiRequest(`/api/v1/kg/crawl/jobs${queryString ? `?${queryString}` : \"\"}`, { method: \"GET\", ...options });\n}\n\nexport async function startCrawlJobApi(\n params: { baseUrl: string; depth: number; maxPages: number },\n options: KGApiOptions\n): Promise<ApiResponse<CrawlJobStartResponse>> {\n return browserApiRequest(\"/api/v1/kg/crawl/jobs\", {\n method: \"POST\",\n body: params,\n headers: options.graphId ? { \"X-Graph-ID\": options.graphId } : undefined,\n ...options,\n });\n}\n\nexport async function getCrawlJobStatusApi(\n jobId: string,\n options: KGApiOptions\n): Promise<ApiResponse<CrawlJobStatusResponse>> {\n const params = new URLSearchParams();\n if (options.graphId) params.set(\"graphId\", options.graphId);\n const queryString = params.toString();\n return browserApiRequest(`/api/v1/kg/crawl/jobs/${jobId}${queryString ? `?${queryString}` : \"\"}`, { method: \"GET\", ...options });\n}\n\nexport async function cancelCrawlJobApi(\n jobId: string,\n options: KGApiOptions\n): Promise<ApiResponse<CrawlJobStatusResponse>> {\n return browserApiRequest(`/api/v1/kg/crawl/jobs/${jobId}/cancel`, {\n method: \"POST\",\n body: {},\n headers: options.graphId ? { \"X-Graph-ID\": options.graphId } : undefined,\n ...options,\n });\n}\n\nexport async function getCrawledPagesApi(\n jobId: string,\n options: KGApiOptions\n): Promise<ApiResponse<CrawledPagesResponse>> {\n const params = new URLSearchParams();\n if (options.graphId) params.set(\"graphId\", options.graphId);\n const queryString = params.toString();\n return browserApiRequest(`/api/v1/kg/crawl/jobs/${jobId}/pages${queryString ? `?${queryString}` : \"\"}`, { method: \"GET\", ...options });\n}\n"]}
|