graphsight 0.3.0__tar.gz → 0.3.1__tar.gz
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.
- {graphsight-0.3.0/graphsight.egg-info → graphsight-0.3.1}/PKG-INFO +41 -13
- {graphsight-0.3.0 → graphsight-0.3.1}/README.md +40 -12
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight/__init__.py +1 -1
- graphsight-0.3.0/graphsight/dist/assets/arc-Bsma0Xbp.js → graphsight-0.3.1/graphsight/dist/assets/arc-DGOsvhEX.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/architectureDiagram-3BPJPVTR-4Qdi8s0q.js → graphsight-0.3.1/graphsight/dist/assets/architectureDiagram-3BPJPVTR-CbMqmqRH.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/blockDiagram-GPEHLZMM-Dp7Miq3n.js → graphsight-0.3.1/graphsight/dist/assets/blockDiagram-GPEHLZMM-CDyJXpDM.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/c4Diagram-AAUBKEIU-D1G27yOy.js → graphsight-0.3.1/graphsight/dist/assets/c4Diagram-AAUBKEIU-CDIS2dj-.js +1 -1
- graphsight-0.3.1/graphsight/dist/assets/channel-DKZXqgRh.js +1 -0
- graphsight-0.3.0/graphsight/dist/assets/chunk-2J33WTMH-DpBo35Ip.js → graphsight-0.3.1/graphsight/dist/assets/chunk-2J33WTMH-DF0wXQ_q.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/chunk-4BX2VUAB-DEs5iyI1.js → graphsight-0.3.1/graphsight/dist/assets/chunk-4BX2VUAB-C6Xwj9Pr.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/chunk-55IACEB6-Bku3rt2s.js → graphsight-0.3.1/graphsight/dist/assets/chunk-55IACEB6-BjGYIYUH.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/chunk-727SXJPM-DzVVvz6q.js → graphsight-0.3.1/graphsight/dist/assets/chunk-727SXJPM-wS8WwDXi.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/chunk-AQP2D5EJ-CuvszdZE.js → graphsight-0.3.1/graphsight/dist/assets/chunk-AQP2D5EJ-MY0fo7mx.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/chunk-FMBD7UC4-BHq1ED1I.js → graphsight-0.3.1/graphsight/dist/assets/chunk-FMBD7UC4-CNVgh_MP.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/chunk-ND2GUHAM-QDS6cCnX.js → graphsight-0.3.1/graphsight/dist/assets/chunk-ND2GUHAM-r3utGEk6.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/chunk-QZHKN3VN-BpvSoQs2.js → graphsight-0.3.1/graphsight/dist/assets/chunk-QZHKN3VN-CRKapwff.js +1 -1
- graphsight-0.3.1/graphsight/dist/assets/classDiagram-4FO5ZUOK-DvcSHvlU.js +1 -0
- graphsight-0.3.1/graphsight/dist/assets/classDiagram-v2-Q7XG4LA2-DvcSHvlU.js +1 -0
- graphsight-0.3.0/graphsight/dist/assets/cose-bilkent-S5V4N54A-CeiajIUk.js → graphsight-0.3.1/graphsight/dist/assets/cose-bilkent-S5V4N54A-D8A0GZYU.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/dagre-BM42HDAG-C83dZHfH.js → graphsight-0.3.1/graphsight/dist/assets/dagre-BM42HDAG-CdY1GieV.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/diagram-2AECGRRQ-Ch3rS7R6.js → graphsight-0.3.1/graphsight/dist/assets/diagram-2AECGRRQ-BmpqIsY_.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/diagram-5GNKFQAL-BmkDW3-M.js → graphsight-0.3.1/graphsight/dist/assets/diagram-5GNKFQAL-CGucdtV7.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/diagram-KO2AKTUF-Bmc4Hn_O.js → graphsight-0.3.1/graphsight/dist/assets/diagram-KO2AKTUF-D8UClmZ6.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/diagram-LMA3HP47-vfKcGnnt.js → graphsight-0.3.1/graphsight/dist/assets/diagram-LMA3HP47-BbUB7zIV.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/diagram-OG6HWLK6-CsDKFBDx.js → graphsight-0.3.1/graphsight/dist/assets/diagram-OG6HWLK6-BLKvQFD6.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/erDiagram-TEJ5UH35-CL6QLPh6.js → graphsight-0.3.1/graphsight/dist/assets/erDiagram-TEJ5UH35-DhE3Yfeq.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/flowDiagram-I6XJVG4X-Dht1jxSH.js → graphsight-0.3.1/graphsight/dist/assets/flowDiagram-I6XJVG4X-BoPzRdHF.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/ganttDiagram-6RSMTGT7-Mrh5sBuC.js → graphsight-0.3.1/graphsight/dist/assets/ganttDiagram-6RSMTGT7-Cn2HPQDn.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/gitGraphDiagram-PVQCEYII-C_to9mh-.js → graphsight-0.3.1/graphsight/dist/assets/gitGraphDiagram-PVQCEYII-e5mkpbyX.js +1 -1
- graphsight-0.3.1/graphsight/dist/assets/index-BAt7CdVk.css +1 -0
- graphsight-0.3.0/graphsight/dist/assets/index-BA3uz4Sh.js → graphsight-0.3.1/graphsight/dist/assets/index-Bi1lliDA.js +70 -70
- graphsight-0.3.0/graphsight/dist/assets/infoDiagram-5YYISTIA-BfyE9D1p.js → graphsight-0.3.1/graphsight/dist/assets/infoDiagram-5YYISTIA-DRkiL_DQ.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/ishikawaDiagram-YF4QCWOH-DljFoVr4.js → graphsight-0.3.1/graphsight/dist/assets/ishikawaDiagram-YF4QCWOH-_FUPaFzj.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/journeyDiagram-JHISSGLW-DhfKGdiA.js → graphsight-0.3.1/graphsight/dist/assets/journeyDiagram-JHISSGLW-BC6uAFP5.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/kanban-definition-UN3LZRKU-BtP5uFd_.js → graphsight-0.3.1/graphsight/dist/assets/kanban-definition-UN3LZRKU-X9H1Bevu.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/linear-E6Djxe1M.js → graphsight-0.3.1/graphsight/dist/assets/linear-L4AgCZnM.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/mermaid.core-Cr4Ida0l.js → graphsight-0.3.1/graphsight/dist/assets/mermaid.core-B4Rsz1_K.js +4 -4
- graphsight-0.3.0/graphsight/dist/assets/mindmap-definition-RKZ34NQL-DKsVzrC_.js → graphsight-0.3.1/graphsight/dist/assets/mindmap-definition-RKZ34NQL-BggN-jLg.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/pieDiagram-4H26LBE5-BLFeYvt8.js → graphsight-0.3.1/graphsight/dist/assets/pieDiagram-4H26LBE5-MXE68O6T.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/quadrantDiagram-W4KKPZXB-TOEOxf98.js → graphsight-0.3.1/graphsight/dist/assets/quadrantDiagram-W4KKPZXB-lrEZKCVn.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/requirementDiagram-4Y6WPE33-lxDExpHS.js → graphsight-0.3.1/graphsight/dist/assets/requirementDiagram-4Y6WPE33-BFFGZPL_.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/sankeyDiagram-5OEKKPKP-Bt3RdNXe.js → graphsight-0.3.1/graphsight/dist/assets/sankeyDiagram-5OEKKPKP-D2rDi26n.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/sequenceDiagram-3UESZ5HK-DJG0iUc8.js → graphsight-0.3.1/graphsight/dist/assets/sequenceDiagram-3UESZ5HK-Bit_NcSO.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/stateDiagram-AJRCARHV-a8qXFzmk.js → graphsight-0.3.1/graphsight/dist/assets/stateDiagram-AJRCARHV-yUP1OLyV.js +1 -1
- graphsight-0.3.1/graphsight/dist/assets/stateDiagram-v2-BHNVJYJU-CtmFDByB.js +1 -0
- graphsight-0.3.0/graphsight/dist/assets/timeline-definition-PNZ67QCA-D-vuX4Ci.js → graphsight-0.3.1/graphsight/dist/assets/timeline-definition-PNZ67QCA-DNKkG3d7.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/vennDiagram-CIIHVFJN-Cv9onzjp.js → graphsight-0.3.1/graphsight/dist/assets/vennDiagram-CIIHVFJN-C7xsmX66.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/wardley-L42UT6IY-D4ojyCVU.js → graphsight-0.3.1/graphsight/dist/assets/wardley-L42UT6IY-rz2LOAhR.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/wardleyDiagram-YWT4CUSO-Ck3lasbB.js → graphsight-0.3.1/graphsight/dist/assets/wardleyDiagram-YWT4CUSO-_1bS5QK8.js +1 -1
- graphsight-0.3.0/graphsight/dist/assets/xychartDiagram-2RQKCTM6-Dy1S4t9K.js → graphsight-0.3.1/graphsight/dist/assets/xychartDiagram-2RQKCTM6-CVODa8Gv.js +1 -1
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight/dist/index.html +2 -2
- {graphsight-0.3.0 → graphsight-0.3.1/graphsight.egg-info}/PKG-INFO +41 -13
- graphsight-0.3.1/graphsight.egg-info/SOURCES.txt +69 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/pyproject.toml +1 -1
- graphsight-0.3.0/graphsight/dist/assets/channel-B61HT7Gu.js +0 -1
- graphsight-0.3.0/graphsight/dist/assets/classDiagram-4FO5ZUOK-9u34qdAk.js +0 -1
- graphsight-0.3.0/graphsight/dist/assets/classDiagram-v2-Q7XG4LA2-9u34qdAk.js +0 -1
- graphsight-0.3.0/graphsight/dist/assets/index-DR9ElM14.css +0 -1
- graphsight-0.3.0/graphsight/dist/assets/stateDiagram-v2-BHNVJYJU-C1SCEn23.js +0 -1
- graphsight-0.3.0/graphsight.egg-info/SOURCES.txt +0 -69
- {graphsight-0.3.0 → graphsight-0.3.1}/LICENSE +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/MANIFEST.in +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight/cli.py +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight/dist/assets/cytoscape.esm-DTSO7Bv0.js +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight/dist/assets/defaultLocale-DX6XiGOO.js +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight/dist/assets/graph-CAnANduQ.js +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight/dist/assets/init-Gi6I4Gst.js +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight/dist/assets/katex-C5jXJg4s.js +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight/dist/assets/layout-DGIYPm2g.js +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight/dist/assets/ordinal-Cboi1Yqb.js +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight/dist/favicon.svg +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight/server.py +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight.egg-info/dependency_links.txt +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight.egg-info/entry_points.txt +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/graphsight.egg-info/top_level.txt +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/setup.cfg +0 -0
- {graphsight-0.3.0 → graphsight-0.3.1}/tests/test_server.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: graphsight
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.1
|
|
4
4
|
Summary: See why your AI agent retrieved what it did — interactive graph viewer for agent retrieval traces. One command, zero dependencies, nothing leaves your machine.
|
|
5
5
|
Author: Arush Karnatak
|
|
6
6
|
License: MIT
|
|
@@ -28,20 +28,42 @@ Dynamic: license-file
|
|
|
28
28
|
[](https://pypi.org/project/graphsight/)
|
|
29
29
|
[](https://github.com/Kcodess2807/graphsight/blob/main/graphsight/LICENSE)
|
|
30
30
|
|
|
31
|
-
**See
|
|
31
|
+
**See which retrieved documents your agent actually used — and which it ignored.**
|
|
32
32
|
|
|
33
|
-
Your agent answered a question. Which documents did it actually pull?
|
|
34
|
-
|
|
35
|
-
you dig through logs
|
|
36
|
-
**interactive graph in your browser** — one command, zero dependencies,
|
|
33
|
+
Your agent answered a question. Which documents did it actually pull? Which
|
|
34
|
+
of those did the answer come from? What scores did they get, and how are they
|
|
35
|
+
connected? Most stacks make you dig through logs. Graphsight renders the run
|
|
36
|
+
as an **interactive graph in your browser** — one command, zero dependencies,
|
|
37
37
|
nothing leaves your machine.
|
|
38
38
|
|
|
39
|
+

|
|
40
|
+
|
|
41
|
+
*A real run. `PR #101` scored **0.910** — the highest of anything retrieved — and the answer
|
|
42
|
+
never used it. `PR #412` scored **0.340** and is the one that answered.*
|
|
43
|
+
|
|
39
44
|
```bash
|
|
40
45
|
pip install graphsight
|
|
41
46
|
graphsight path/to/trace_state.json
|
|
42
47
|
```
|
|
43
48
|
|
|
44
|
-
##
|
|
49
|
+
## Retrieved vs. used
|
|
50
|
+
|
|
51
|
+
The signal that isn't in your logs. When a trace carries the final answer,
|
|
52
|
+
every retrieved item is scored by lexical overlap against it and rendered
|
|
53
|
+
either **highlighted** (surfaced in the answer) or **dimmed** with the label
|
|
54
|
+
*"retrieved, unused."* That splits the two classic retrieval failures at a
|
|
55
|
+
glance:
|
|
56
|
+
|
|
57
|
+
- **Right document retrieved, ignored by the model** → a dimmed node with a
|
|
58
|
+
high retrieval score. Your retriever worked; your prompt or context order
|
|
59
|
+
didn't.
|
|
60
|
+
- **Wrong document trusted** → a highlighted node that shouldn't be.
|
|
61
|
+
|
|
62
|
+
The overlap is a lexical heuristic, labeled as such (threshold 0.2). No LLM
|
|
63
|
+
re-reads your evidence, and no score is invented — a trace with no answer
|
|
64
|
+
attached makes no usage claims at all.
|
|
65
|
+
|
|
66
|
+
## What else you get
|
|
45
67
|
|
|
46
68
|
- **Every retrieved item as a typed node** — PR, Service, Person, Ticket,
|
|
47
69
|
Document, Repo, Library, Team, Tool — with its retrieval score.
|
|
@@ -86,10 +108,13 @@ graphsight .graphsight/
|
|
|
86
108
|
|
|
87
109
|
The [graphsight-langgraph](https://pypi.org/project/graphsight-langgraph/)
|
|
88
110
|
`capture()` helper appends every agent run there automatically, so your
|
|
89
|
-
debugging history accumulates with zero ceremony
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
111
|
+
debugging history accumulates with zero ceremony — no setup, no database.
|
|
112
|
+
|
|
113
|
+
Because the history is a directory of plain files, you can **compare two
|
|
114
|
+
runs side by side**: what the retrieval returned before a prompt change and
|
|
115
|
+
after it, which items appeared or vanished, and which flipped between used
|
|
116
|
+
and ignored. That is usually the fastest way to answer "what did my edit
|
|
117
|
+
actually do to retrieval?"
|
|
93
118
|
|
|
94
119
|
## Sharing traces with your team
|
|
95
120
|
|
|
@@ -122,8 +147,11 @@ producers:
|
|
|
122
147
|
graphsight graphsight_out/trace_state.json
|
|
123
148
|
```
|
|
124
149
|
|
|
125
|
-
- **The
|
|
126
|
-
of
|
|
150
|
+
- **The Graphsight graph-memory engine** — the backend this project grew out
|
|
151
|
+
of: GitHub events become a live knowledge graph with typed, timestamped
|
|
152
|
+
edges (`AUTHORED`, `RESOLVES`, `TOUCHES`), queried by a hybrid
|
|
153
|
+
vector + graph router. Its `/api/trace` responses are the same shape. See
|
|
154
|
+
the [main repository](https://github.com/Kcodess2807/graphsight).
|
|
127
155
|
|
|
128
156
|
Adapters for LlamaIndex and raw OpenTelemetry spans are planned; all
|
|
129
157
|
producers emit the same schema and render in this same viewer.
|
|
@@ -4,20 +4,42 @@
|
|
|
4
4
|
[](https://pypi.org/project/graphsight/)
|
|
5
5
|
[](https://github.com/Kcodess2807/graphsight/blob/main/graphsight/LICENSE)
|
|
6
6
|
|
|
7
|
-
**See
|
|
7
|
+
**See which retrieved documents your agent actually used — and which it ignored.**
|
|
8
8
|
|
|
9
|
-
Your agent answered a question. Which documents did it actually pull?
|
|
10
|
-
|
|
11
|
-
you dig through logs
|
|
12
|
-
**interactive graph in your browser** — one command, zero dependencies,
|
|
9
|
+
Your agent answered a question. Which documents did it actually pull? Which
|
|
10
|
+
of those did the answer come from? What scores did they get, and how are they
|
|
11
|
+
connected? Most stacks make you dig through logs. Graphsight renders the run
|
|
12
|
+
as an **interactive graph in your browser** — one command, zero dependencies,
|
|
13
13
|
nothing leaves your machine.
|
|
14
14
|
|
|
15
|
+

|
|
16
|
+
|
|
17
|
+
*A real run. `PR #101` scored **0.910** — the highest of anything retrieved — and the answer
|
|
18
|
+
never used it. `PR #412` scored **0.340** and is the one that answered.*
|
|
19
|
+
|
|
15
20
|
```bash
|
|
16
21
|
pip install graphsight
|
|
17
22
|
graphsight path/to/trace_state.json
|
|
18
23
|
```
|
|
19
24
|
|
|
20
|
-
##
|
|
25
|
+
## Retrieved vs. used
|
|
26
|
+
|
|
27
|
+
The signal that isn't in your logs. When a trace carries the final answer,
|
|
28
|
+
every retrieved item is scored by lexical overlap against it and rendered
|
|
29
|
+
either **highlighted** (surfaced in the answer) or **dimmed** with the label
|
|
30
|
+
*"retrieved, unused."* That splits the two classic retrieval failures at a
|
|
31
|
+
glance:
|
|
32
|
+
|
|
33
|
+
- **Right document retrieved, ignored by the model** → a dimmed node with a
|
|
34
|
+
high retrieval score. Your retriever worked; your prompt or context order
|
|
35
|
+
didn't.
|
|
36
|
+
- **Wrong document trusted** → a highlighted node that shouldn't be.
|
|
37
|
+
|
|
38
|
+
The overlap is a lexical heuristic, labeled as such (threshold 0.2). No LLM
|
|
39
|
+
re-reads your evidence, and no score is invented — a trace with no answer
|
|
40
|
+
attached makes no usage claims at all.
|
|
41
|
+
|
|
42
|
+
## What else you get
|
|
21
43
|
|
|
22
44
|
- **Every retrieved item as a typed node** — PR, Service, Person, Ticket,
|
|
23
45
|
Document, Repo, Library, Team, Tool — with its retrieval score.
|
|
@@ -62,10 +84,13 @@ graphsight .graphsight/
|
|
|
62
84
|
|
|
63
85
|
The [graphsight-langgraph](https://pypi.org/project/graphsight-langgraph/)
|
|
64
86
|
`capture()` helper appends every agent run there automatically, so your
|
|
65
|
-
debugging history accumulates with zero ceremony
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
87
|
+
debugging history accumulates with zero ceremony — no setup, no database.
|
|
88
|
+
|
|
89
|
+
Because the history is a directory of plain files, you can **compare two
|
|
90
|
+
runs side by side**: what the retrieval returned before a prompt change and
|
|
91
|
+
after it, which items appeared or vanished, and which flipped between used
|
|
92
|
+
and ignored. That is usually the fastest way to answer "what did my edit
|
|
93
|
+
actually do to retrieval?"
|
|
69
94
|
|
|
70
95
|
## Sharing traces with your team
|
|
71
96
|
|
|
@@ -98,8 +123,11 @@ producers:
|
|
|
98
123
|
graphsight graphsight_out/trace_state.json
|
|
99
124
|
```
|
|
100
125
|
|
|
101
|
-
- **The
|
|
102
|
-
of
|
|
126
|
+
- **The Graphsight graph-memory engine** — the backend this project grew out
|
|
127
|
+
of: GitHub events become a live knowledge graph with typed, timestamped
|
|
128
|
+
edges (`AUTHORED`, `RESOLVES`, `TOUCHES`), queried by a hybrid
|
|
129
|
+
vector + graph router. Its `/api/trace` responses are the same shape. See
|
|
130
|
+
the [main repository](https://github.com/Kcodess2807/graphsight).
|
|
103
131
|
|
|
104
132
|
Adapters for LlamaIndex and raw OpenTelemetry spans are planned; all
|
|
105
133
|
producers emit the same schema and render in this same viewer.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as ln,a0 as an,a1 as G,a2 as q,a3 as z,a4 as un,a5 as y,a6 as tn,a7 as K,a8 as _,a9 as rn,aa as o,ab as on,ac as sn,ad as fn}from"./mermaid.core-
|
|
1
|
+
import{$ as ln,a0 as an,a1 as G,a2 as q,a3 as z,a4 as un,a5 as y,a6 as tn,a7 as K,a8 as _,a9 as rn,aa as o,ab as on,ac as sn,ad as fn}from"./mermaid.core-B4Rsz1_K.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,I,D,v,A,B,a){var O=I-l,i=D-h,n=B-v,d=a-A,u=d*O-n*i;if(!(u*u<y))return u=(n*(h-A)-d*(l-v))/u,[l+u*O,h+u*i]}function V(l,h,I,D,v,A,B){var a=l-I,O=h-D,i=(B?A:-A)/K(a*a+O*O),n=i*O,d=-i*a,u=l+n,s=h+d,f=I+n,c=D+d,C=(u+f)/2,t=(s+c)/2,m=f-u,g=c-s,R=m*m+g*g,T=v-A,P=u*c-f*s,S=(g<0?-1:1)*K(on(0,T*T*R-P*P)),$=(P*g-m*S)/R,j=(-P*m-g*S)/R,w=(P*g+m*S)/R,p=(-P*m+g*S)/R,x=$-C,e=j-t,r=w-C,F=p-t;return x*x+e*e>r*r+F*F&&($=w,j=p),{cx:$,cy:j,x01:-n,y01:-d,x11:$*(v/T-1),y11:j*(v/T-1)}}function hn(){var l=cn,h=yn,I=z(0),D=null,v=gn,A=dn,B=mn,a=null,O=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-un,c=A.apply(this,arguments)-un,C=rn(c-f),t=c>f;if(a||(a=n=O()),s<u&&(d=s,s=u,u=d),!(s>y))a.moveTo(0,0);else if(C>tn-y)a.moveTo(s*G(f),s*q(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*G(c),u*q(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,R=f,T=c,P=C,S=C,$=B.apply(this,arguments)/2,j=$>y&&(D?+D.apply(this,arguments):K(u*u+s*s)),w=_(rn(s-u)/2,+I.apply(this,arguments)),p=w,x=w,e,r;if(j>y){var F=sn(j/u*q($)),L=sn(j/s*q($));(P-=F*2)>y?(F*=t?1:-1,R+=F,T-=F):(P=0,R=T=(f+c)/2),(S-=L*2)>y?(L*=t?1:-1,m+=L,g-=L):(S=0,m=g=(f+c)/2)}var H=s*G(m),J=s*q(m),M=u*G(T),N=u*q(T);if(w>y){var Q=s*G(g),U=s*q(g),W=u*G(R),X=u*q(R),E;if(C<an)if(E=pn(H,J,W,X,Q,U,M,N)){var Y=H-E[0],Z=J-E[1],b=Q-E[0],k=U-E[1],nn=1/q(fn((Y*b+Z*k)/(K(Y*Y+Z*Z)*K(b*b+k*k)))/2),en=K(E[0]*E[0]+E[1]*E[1]);p=_(w,(u-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}S>y?x>y?(e=V(W,X,H,J,s,x,t),r=V(Q,U,M,N,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),a.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(a.moveTo(H,J),a.arc(0,0,s,m,g,!t)):a.moveTo(H,J),!(u>y)||!(P>y)?a.lineTo(M,N):p>y?(e=V(M,N,Q,U,u,-p,t),r=V(H,J,W,X,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),a.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):a.arc(0,0,u,T,R,t)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +A.apply(this,arguments))/2-an/2;return[G(d)*n,q(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:z(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:z(+n),i):h},i.cornerRadius=function(n){return arguments.length?(I=typeof n=="function"?n:z(+n),i):I},i.padRadius=function(n){return arguments.length?(D=n==null?null:typeof n=="function"?n:z(+n),i):D},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:z(+n),i):v},i.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:z(+n),i):A},i.padAngle=function(n){return arguments.length?(B=typeof n=="function"?n:z(+n),i):B},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};
|