react-kggraph 0.0.8 → 0.0.9

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 (67) hide show
  1. package/lib/index.es.js +8 -4
  2. package/lib/index.es10.js +188 -0
  3. package/lib/index.es11.js +72 -0
  4. package/lib/index.es12.js +32 -0
  5. package/lib/index.es13.js +72 -0
  6. package/lib/index.es14.js +226 -0
  7. package/lib/index.es15.js +6 -0
  8. package/lib/index.es16.js +38 -0
  9. package/lib/index.es18.js +15469 -0
  10. package/lib/index.es19.js +56 -0
  11. package/lib/index.es20.js +62 -0
  12. package/lib/index.es21.js +71 -0
  13. package/lib/index.es22.js +42 -0
  14. package/lib/index.es23.js +4 -0
  15. package/lib/index.es24.js +4 -0
  16. package/lib/index.es25.js +4 -0
  17. package/lib/index.es26.js +4 -0
  18. package/lib/index.es27.js +4 -0
  19. package/lib/index.es28.js +4 -0
  20. package/lib/index.es29.js +4 -0
  21. package/lib/index.es3.js +356 -0
  22. package/lib/index.es30.js +4 -0
  23. package/lib/index.es31.js +4 -0
  24. package/lib/index.es32.js +4 -0
  25. package/lib/index.es33.js +4 -0
  26. package/lib/index.es35.js +6 -0
  27. package/lib/index.es36.js +4 -0
  28. package/lib/index.es4.js +8 -0
  29. package/lib/index.es5.js +4 -0
  30. package/lib/index.es6.js +601 -0
  31. package/lib/index.es7.js +7 -0
  32. package/lib/index.es8.js +324 -0
  33. package/lib/index.es9.js +423 -0
  34. package/lib/style.css +1 -0
  35. package/package.json +2 -3
  36. package/lib/index10.es.js +0 -4
  37. package/lib/index11.es.js +0 -4
  38. package/lib/index12.es.js +0 -4
  39. package/lib/index13.es.js +0 -4
  40. package/lib/index14.es.js +0 -4
  41. package/lib/index15.es.js +0 -4
  42. package/lib/index16.es.js +0 -4
  43. package/lib/index17.es.js +0 -25
  44. package/lib/index18.es.js +0 -330
  45. package/lib/index19.es.js +0 -5
  46. package/lib/index2.es.js +0 -13
  47. package/lib/index20.es.js +0 -284
  48. package/lib/index22.es.js +0 -70
  49. package/lib/index24.es.js +0 -68
  50. package/lib/index26.es.js +0 -72
  51. package/lib/index27.es.js +0 -32
  52. package/lib/index28.es.js +0 -828
  53. package/lib/index29.es.js +0 -4
  54. package/lib/index30.es.js +0 -161
  55. package/lib/index31.es.js +0 -71
  56. package/lib/index33.es.js +0 -100
  57. package/lib/index34.es.js +0 -250
  58. package/lib/index35.es.js +0 -47
  59. package/lib/index36.es.js +0 -376
  60. package/lib/index37.es.js +0 -12
  61. package/lib/index38.es.js +0 -6
  62. package/lib/index5.es.js +0 -12387
  63. package/lib/index6.es.js +0 -4
  64. package/lib/index7.es.js +0 -4
  65. package/lib/index8.es.js +0 -4
  66. package/lib/index9.es.js +0 -4
  67. package/lib/react-kggraph.css +0 -2
package/lib/index36.es.js DELETED
@@ -1,376 +0,0 @@
1
- /* empty css */
2
- import { jsonStringify as e } from "./index17.es.js";
3
- import { handleCalcPath as t, resDetailData as n } from "./index18.es.js";
4
- import { GraphProvider as r } from "./index19.es.js";
5
- import { coseBilkentLayout as i, fixNodesToEdges as a } from "./index20.es.js";
6
- import o from "./index28.es.js";
7
- import { stepNext as s } from "./index29.es.js";
8
- import { edgeNodeStyles as c } from "./index30.es.js";
9
- import { menuItemsConfig as l } from "./index31.es.js";
10
- import u from "./index33.es.js";
11
- import d from "./index34.es.js";
12
- import f from "./index35.es.js";
13
- import { useEffect as p, useRef as m, useState as h } from "react";
14
- import g from "cytoscape";
15
- import _ from "cytoscape-cose-bilkent";
16
- import v from "cytoscape-cise";
17
- import y from "cytoscape-fcose";
18
- import b from "storm-layout";
19
- import { message as x } from "antd";
20
- import { jsx as S, jsxs as C } from "react/jsx-runtime";
21
- import w from "cytoscape-layout-utilities";
22
- g.use(w), g.use(v), g.use(y), g.use(b), g.use(_);
23
- var T = ({ data: _, getAllGraphData: v, searchType: y, highPathAnalysis: b = [], graphInfo: w }) => {
24
- let T = m(null), [E, D] = h([]), O = m(null), k = m(null), [A, j] = h(!1), [M, N] = h({}), [P, F] = h({}), [I, L] = h("cose-bilkent"), R = m(null), z = m(null), [B, V] = h(["", ""]), [H, U] = h({
25
- visible: !1,
26
- x: 0,
27
- y: 0,
28
- targetNode: null,
29
- bgColor: ""
30
- }), [W, G] = h({
31
- visible: !1,
32
- x: 0,
33
- y: 0,
34
- content: ""
35
- }), K = l({
36
- cyRef: O,
37
- setContextMenu: U,
38
- onPathAnalysis: k.current?.onPathAnalysis,
39
- setPathNodes: V
40
- });
41
- p(() => {
42
- b?.length > 1 && t(O, {
43
- pathNodes: b,
44
- isGrayed: !1
45
- });
46
- }, [e(b), e(E)]), p(() => {
47
- v?.({
48
- graphData: E,
49
- nodeStatic: M,
50
- relationStatic: P
51
- });
52
- }, [
53
- e(E),
54
- e(M),
55
- e(P)
56
- ]), p(() => {
57
- if (!T.current || O.current) return;
58
- let { elements: e, typeListObj: t, relationListObj: r } = n(_, {
59
- typeObj: M,
60
- relationObj: P,
61
- graphInfo: w
62
- });
63
- N(t), D(e), F(r), document.addEventListener("contextmenu", function(e) {
64
- e.preventDefault();
65
- });
66
- let o = g({
67
- container: T.current,
68
- elements: e,
69
- style: c({ elements: e }),
70
- autounselectify: !1,
71
- autolock: !1,
72
- layout: { name: "preset" }
73
- });
74
- if (O.current = o, w?.searchNodes?.length === 2) a(o, w.searchNodes[0], w.searchNodes[1]);
75
- else {
76
- let e = o.layout(i());
77
- e.run(), e.on("layoutstop", () => {
78
- o.fit(void 0, 50), o.center();
79
- });
80
- }
81
- return o.on("mouseover", "edge", (e) => {
82
- e.target.hasClass("path-edge") || e.target.style({
83
- "line-color": "#1890ff",
84
- "target-arrow-color": "#1890ff",
85
- opacity: .8
86
- });
87
- }), o.on("mouseout", "edge", (e) => {
88
- e.target.hasClass("path-edge") || e.target.style({
89
- "line-color": "#ccc",
90
- "target-arrow-color": "#ccc",
91
- opacity: 1
92
- });
93
- }), o.on("mouseover", "node", (e) => {
94
- let t = e.target;
95
- t.hasClass("selected") || t.addClass("hover");
96
- }), o.on("mouseover", "node", (e) => {
97
- let t = e.target, n = t.renderedPosition(), r = t.data("name") || "";
98
- t.addClass("hover"), G({
99
- visible: !0,
100
- x: n.x,
101
- y: n.y - 60,
102
- content: r
103
- });
104
- }), o.on("mouseout", "node", (e) => {
105
- e.target.removeClass("hover"), G((e) => ({
106
- ...e,
107
- visible: !1
108
- }));
109
- }), o.on("cxttap", "node", (e) => {
110
- e.preventDefault(), e.stopPropagation(), e.stopImmediatePropagation(), e.originalEvent && (e.originalEvent.preventDefault(), e.originalEvent.stopPropagation(), e.originalEvent.stopImmediatePropagation());
111
- let t = e.target, n = t.renderedPosition();
112
- console.log("renderedPos:::", t.data(), t.style("background-color")), U({
113
- visible: !0,
114
- x: n.x - 90,
115
- y: n.y - 90,
116
- targetNode: t,
117
- bgColor: t.style("background-color")
118
- });
119
- }), O.current = o, o.on("click", "node", (e) => {
120
- let t = e.target;
121
- o.nodes().removeClass("selected grayed highlighted"), o.edges().removeClass("selected grayed highlighted"), t.addClass("selected");
122
- let n = t.neighborhood().nodes().add(t), r = n.edgesWith(n);
123
- console.log("cy.nodes().not(relatedNodes):::", n), o.nodes().not(n).addClass("grayed"), o.edges().not(r).addClass("grayed"), n.addClass("highlighted"), r.addClass("highlighted");
124
- }), o.on("tap", (e) => {
125
- e.target === o && (U((e) => ({
126
- ...e,
127
- visible: !1
128
- })), o.nodes().removeClass("grayed highlighted highlight selected correlationStyle path-node level-highlight level-selected level-grayed"), o.edges().removeClass("grayed highlighted highlight selected correlationStyle path-edge level-highlightedge level-grayed"));
129
- }), () => {
130
- O.current &&= (O.current.destroy(), null);
131
- };
132
- }, []);
133
- let q = async (e) => {
134
- let { id: t, kgId: r } = e, a = O.current;
135
- if (!a) return;
136
- let o = a.$(`#${t}`);
137
- if (!o || o.length === 0) {
138
- console.error("当前节点不存在");
139
- return;
140
- }
141
- let c = a.nodes().filter((n) => n.data("parentId") ? (n.data("parentId") === t || n.data("idLabel") === `${t}-${n.data("name")}`) && n.data("zktype") === e.zktype : !1);
142
- if (c.length > 0) {
143
- let r = c.map((e) => e.id()), i = c.connectedEdges(), s = a.edges().filter((e) => e.data("source") === t && r.includes(e.data("target"))), l = a.edges().filter((e) => e.data("appendedBy") === t), u = i.merge(s).merge(l).filter((t) => t.data().zktype === e.zktype);
144
- c.animate({ style: { opacity: 0 } }, {
145
- duration: 200,
146
- complete: () => {
147
- a.remove(c), a.remove(u), D((i) => {
148
- let a = i.filter((n) => {
149
- let i = n.data.zktype;
150
- if (n.group === "nodes" && r.includes(n.data?.id) && i && i === e.zktype) return !1;
151
- if (n.group === "edges" && i && i === e.zktype) {
152
- let e = Array.from(l).map((e) => {
153
- let t = e.data();
154
- return `${t.source}-${t.target}-${t.label}`;
155
- }), r = n.data, i = e.includes(`${r.source}-${r.target}-${r.label}`), a = n.data?.appendedBy === t;
156
- return !i && !a;
157
- }
158
- return !0;
159
- }), { typeListObj: o, relationListObj: s } = n({}, {
160
- graphData: a,
161
- typeObj: {},
162
- relationObj: {},
163
- isOnlyStatic: !0
164
- });
165
- return N(o), F(s), a;
166
- }), o.data("appendedNodes", []), o.data("isExpanded", !1);
167
- }
168
- }), setTimeout(() => {
169
- o.removed() || (o.style("border-width", ""), o.style("border-color", ""));
170
- }, 300);
171
- } else {
172
- try {
173
- j(!0), x.open({
174
- type: "loading",
175
- content: "正在展开...",
176
- duration: 0
177
- });
178
- let { elements: c, typeListObj: l, relationListObj: u } = n((await s({
179
- uri: t,
180
- queryType: 1,
181
- kgId: r,
182
- zktype: e.zktype
183
- })).data, {
184
- graphData: E,
185
- typeObj: M,
186
- relationObj: P,
187
- zktype: e.zktype
188
- });
189
- if (N(l), F(u), console.log(555e3, c), !(c?.length > 0)) {
190
- x.warning("暂无数据"), setTimeout(() => {
191
- x.destroy();
192
- }, 2e3);
193
- return;
194
- }
195
- if (c?.length > 0) {
196
- let n = a.layoutUtilities({
197
- ...i(),
198
- idealEdgeLength: 80,
199
- offset: 30
200
- }), r = c.map((n) => n.group === "nodes" ? {
201
- ...n,
202
- style: {
203
- opacity: 0,
204
- width: 80,
205
- height: 80
206
- },
207
- data: {
208
- ...n.data,
209
- parentId: t,
210
- appendedBy: t,
211
- idLabel: t + "-" + n.data.label,
212
- zktype: e.zktype,
213
- isAppended: !0,
214
- baseWidth: 80,
215
- baseHeight: 80
216
- }
217
- } : {
218
- ...n,
219
- data: {
220
- ...n.data,
221
- appendedBy: t,
222
- zktype: e.zktype
223
- }
224
- }), s = a.add(r);
225
- D([...E, ...r]);
226
- let l = s.filter(":node"), u = l.map((e) => e.id());
227
- o.data("appendedNodes", u), o.data("isExpanded", !0);
228
- let d = a.nodes().difference(l);
229
- d.forEach((e) => e.lock()), n.placeNewNodes(l), a.layout({
230
- name: "cose-bilkent",
231
- randomize: !1,
232
- animate: !0,
233
- animationDuration: 500,
234
- fit: !1,
235
- nodeRepulsion: 1005e3,
236
- idealEdgeLength: 100,
237
- edgeElasticity: .3,
238
- numIter: 800,
239
- gravity: .6
240
- }).run(), setTimeout(() => {
241
- d.forEach((e) => e.unlock());
242
- }, 2e3), l.animate({ style: {
243
- opacity: 1,
244
- width: 20,
245
- height: 30
246
- } }, {
247
- duration: 400,
248
- easing: "ease-out",
249
- complete: () => {
250
- l.style("opacity", ""), l.style("width", ""), l.style("height", "");
251
- }
252
- }), setTimeout(() => {
253
- o.removed() || (o.style("border-width", ""), o.style("border-color", ""), a.center(o), a.zoom(a.zoom()));
254
- }, 600);
255
- } else console.log("没有找到相关节点数据");
256
- } catch (e) {
257
- console.error("请求接口失败:", e);
258
- }
259
- j(!1), x.destroy();
260
- }
261
- U({ visible: !1 });
262
- }, J = {
263
- expanded: "typed-literal",
264
- contract: "uri"
265
- }, Y = (e) => {
266
- if (console.log("handleMenuAction:::", e), H.targetNode) {
267
- let t = e.ids, n = H.targetNode.data();
268
- if (["expanded", "contract"].includes(t)) q({
269
- kgId: 3,
270
- ...n,
271
- zktype: J[t]
272
- });
273
- else if (t === "nodeInfo") {
274
- let e = H.targetNode, t = {
275
- id: e.id(),
276
- data: e.data(),
277
- position: e.position(),
278
- degree: e.degree(),
279
- inDegree: e.degree(!0),
280
- outDegree: e.degree(!1),
281
- classes: e.classes(),
282
- style: e.style()
283
- };
284
- R.current.open(t);
285
- } else if (t === "knowledgeCard") {
286
- let e = H.targetNode;
287
- z.current.open(e.data());
288
- }
289
- e.action(H.targetNode), U({
290
- visible: !1,
291
- x: 0,
292
- y: 0,
293
- targetNode: null
294
- });
295
- }
296
- };
297
- return /* @__PURE__ */ S(r, {
298
- value: {
299
- pathNodes: B,
300
- setPathNodes: V,
301
- graphInfo: w,
302
- graphData: E,
303
- layoutType: I,
304
- setLayoutType: L
305
- },
306
- children: /* @__PURE__ */ C("div", {
307
- className: "cytoscape-container",
308
- style: { position: "relative" },
309
- children: [
310
- /* @__PURE__ */ S("div", { className: "btn-group" }),
311
- /* @__PURE__ */ S(o, {
312
- ref: k,
313
- cyRef: O,
314
- graphInfo: w,
315
- initNodeScale: 1,
316
- cyContainerRef: T,
317
- typeObj: M,
318
- relationObj: P
319
- }),
320
- /* @__PURE__ */ C("div", {
321
- style: { position: "relative" },
322
- children: [
323
- /* @__PURE__ */ S("div", {
324
- ref: T,
325
- className: "cy-container"
326
- }),
327
- H.visible && H.targetNode && /* @__PURE__ */ S("div", {
328
- style: {
329
- position: "absolute",
330
- left: `${H.x}px`,
331
- top: `${H.y}px`,
332
- zIndex: 1e4,
333
- minWidth: "120px",
334
- padding: "4px 0",
335
- pointerEvents: "auto",
336
- width: "200px",
337
- height: "200px",
338
- overflow: "hidden"
339
- },
340
- onClick: (e) => e.stopPropagation(),
341
- children: /* @__PURE__ */ S(u, {
342
- items: K,
343
- centerImage: H?.targetNode?.data().image,
344
- onClick: (e) => Y(e)
345
- })
346
- }),
347
- W.visible && /* @__PURE__ */ S("div", {
348
- style: {
349
- position: "absolute",
350
- left: `${W.x}px`,
351
- top: `${W.y}px`,
352
- transform: "translateX(-50%)",
353
- backgroundColor: "rgba(0, 0, 0, 0.85)",
354
- color: "#fff",
355
- padding: "6px 12px",
356
- borderRadius: "4px",
357
- fontSize: "14px",
358
- whiteSpace: "nowrap",
359
- zIndex: 9999,
360
- pointerEvents: "none",
361
- maxWidth: "1000px",
362
- overflow: "hidden",
363
- textOverflow: "ellipsis"
364
- },
365
- children: W.content
366
- })
367
- ]
368
- }),
369
- /* @__PURE__ */ S(d, { ref: R }),
370
- /* @__PURE__ */ S(f, { ref: z })
371
- ]
372
- })
373
- });
374
- };
375
- //#endregion
376
- export { T as default };
package/lib/index37.es.js DELETED
@@ -1,12 +0,0 @@
1
- import { Button as e } from "antd";
2
- import { jsx as t } from "react/jsx-runtime";
3
- //#region src/components/Demo.tsx
4
- function n({ children: n, onClick: r }) {
5
- return /* @__PURE__ */ t(e, {
6
- onClick: r,
7
- type: "primary",
8
- children: n
9
- });
10
- }
11
- //#endregion
12
- export { n as default };
package/lib/index38.es.js DELETED
@@ -1,6 +0,0 @@
1
- //#region src/components/Graph/types.ts
2
- var e = /* @__PURE__ */ function(e) {
3
- return e.KNOWLEDGE = "knowledge", e.RELATION = "relation", e.ATTRIBUTE = "attribute", e.TIMELINE = "timeline", e;
4
- }({});
5
- //#endregion
6
- export { e as SearchType };