@medicine-wheel/graph-viz 0.17.9 → 0.17.11
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/README.md +18 -1
- package/dist/LineageWeb.d.ts +12 -5
- package/dist/LineageWeb.d.ts.map +1 -1
- package/dist/LineageWeb.js +289 -45
- package/dist/LineageWeb.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -1
- package/dist/index.js.map +1 -1
- package/dist/lineage-web.d.ts +15 -0
- package/dist/lineage-web.d.ts.map +1 -1
- package/dist/lineage-web.js +50 -0
- package/dist/lineage-web.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -126,8 +126,25 @@ import { LineageWeb } from '@medicine-wheel/graph-viz';
|
|
|
126
126
|
| `layout` | `DEFAULT_LINEAGE_WEB_LAYOUT` | Margins, band gap, head and foot room for arcs, minimum step and width |
|
|
127
127
|
| `startAt` | `'start'` | `'end'` opens scrolled to the newest episodes |
|
|
128
128
|
|
|
129
|
+
Moving and reading it by hand (jgwill/medicine-wheel#163):
|
|
130
|
+
|
|
131
|
+
| Gesture | What it does |
|
|
132
|
+
|---------|--------------|
|
|
133
|
+
| Drag the empty canvas (mouse) | Moves along time; a finger scrolls natively. A press without a drag clears the selection |
|
|
134
|
+
| − + Fit, Ctrl/⌘ + wheel, pinch | Zoom, keeping the moment under the pointer in place; Fit puts the whole span in the box |
|
|
135
|
+
| Hover or tap an arc | Lights it and its two ends; the strip names both episodes and shows the relation's words. A tap pins it |
|
|
136
|
+
| ← → | Step along time |
|
|
137
|
+
| ↑ ↓ | Choose one of the selected episode's relations; its words show and its other end scrolls into view |
|
|
138
|
+
| Enter | Follow the chosen relation, or open the selected episode |
|
|
139
|
+
| Esc | Let the relation go, then the selection |
|
|
140
|
+
| − + 0 | Zoom out, in, fit |
|
|
141
|
+
|
|
142
|
+
A new selection scrolls into view, the episode in focus and its relatives are labelled at any size,
|
|
143
|
+
and the band names stay at the left edge.
|
|
144
|
+
|
|
129
145
|
The geometry is exported without React: `visibleLineage`, `lineageNeighbourhood`,
|
|
130
|
-
`layoutLineageWeb`, `lineageArcPath`, `threadChains
|
|
146
|
+
`layoutLineageWeb`, `lineageArcPath`, `threadChains`, `lineageWebWidth`, `fitZoom`,
|
|
147
|
+
`zoomScrollLeft`, `stepAlongSpine`, `relationsAround`, `lineageEdgeKey`.
|
|
131
148
|
|
|
132
149
|
## License
|
|
133
150
|
|
package/dist/LineageWeb.d.ts
CHANGED
|
@@ -12,6 +12,13 @@
|
|
|
12
12
|
* The options bar chooses the whole chronicle or the selected episode's
|
|
13
13
|
* relatives, which kinds of relation to draw, and the thread chains.
|
|
14
14
|
* jgwill/medicine-wheel#162.
|
|
15
|
+
*
|
|
16
|
+
* Moved and read by hand (#163): drag the empty canvas along time; zoom with
|
|
17
|
+
* − + Fit, Ctrl/⌘ + wheel or a pinch, the moment under the pointer staying put;
|
|
18
|
+
* hover or tap an arc for the words that say why the relation holds; ← → step
|
|
19
|
+
* along time, ↑ ↓ choose a relation, Enter follows it or opens the episode,
|
|
20
|
+
* Esc steps back. A new selection scrolls into view, and the band names stay
|
|
21
|
+
* at the left edge.
|
|
15
22
|
*/
|
|
16
23
|
import React from 'react';
|
|
17
24
|
import { LINEAGE_BANDS, type LineageWebEdge, type LineageWebEpisode, type LineageWebLayoutConfig, type LineageWebView } from './lineage-web.js';
|
|
@@ -27,7 +34,7 @@ export interface LineageWebColors {
|
|
|
27
34
|
border: string;
|
|
28
35
|
/** The lit arcs, the active option, the selection ring. */
|
|
29
36
|
accent: string;
|
|
30
|
-
/** The
|
|
37
|
+
/** The ground of the band names and the strip. */
|
|
31
38
|
panel: string;
|
|
32
39
|
}
|
|
33
40
|
export declare const DEFAULT_LINEAGE_WEB_COLORS: LineageWebColors;
|
|
@@ -38,7 +45,7 @@ export interface LineageWebProps {
|
|
|
38
45
|
/** The selected episode. Pass it to control the selection; leave it out to let the web hold it. */
|
|
39
46
|
selected?: string | null;
|
|
40
47
|
onSelect?: (id: string | null) => void;
|
|
41
|
-
/** A second tap on the selected episode. */
|
|
48
|
+
/** A second tap on the selected episode, or Enter. */
|
|
42
49
|
onOpen?: (id: string) => void;
|
|
43
50
|
/** The episodes a search matched, or null when nothing is typed. */
|
|
44
51
|
matches?: ReadonlySet<string> | null;
|
|
@@ -50,17 +57,17 @@ export interface LineageWebProps {
|
|
|
50
57
|
onViewChange?: (view: LineageWebView) => void;
|
|
51
58
|
/** The options bar above the canvas. Default true. */
|
|
52
59
|
controls?: boolean;
|
|
53
|
-
/**
|
|
60
|
+
/** The strip under the canvas naming the episode or relation in focus. Default true. */
|
|
54
61
|
chip?: boolean;
|
|
55
62
|
colors?: Partial<LineageWebColors>;
|
|
56
63
|
/** Thread name → colour of its chain. */
|
|
57
64
|
threadColors?: Record<string, string>;
|
|
58
65
|
layout?: Partial<LineageWebLayoutConfig>;
|
|
59
|
-
/** Where the canvas opens when it is wider than its box. Default `start`. */
|
|
66
|
+
/** Where the canvas opens when it is wider than its box and nothing is selected. Default `start`. */
|
|
60
67
|
startAt?: 'start' | 'end';
|
|
61
68
|
/** Words for the band labels, e.g. `{ east: 'East · Waabinong' }`. */
|
|
62
69
|
bandLabels?: Partial<Record<(typeof LINEAGE_BANDS)[number], string>>;
|
|
63
|
-
/**
|
|
70
|
+
/** Labels beside the dots. `auto` (default): all when 40 or fewer are drawn, else the episode in focus and its relatives. */
|
|
64
71
|
labels?: 'auto' | 'always' | 'never';
|
|
65
72
|
style?: React.CSSProperties;
|
|
66
73
|
}
|
package/dist/LineageWeb.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LineageWeb.d.ts","sourceRoot":"","sources":["../src/LineageWeb.tsx"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"LineageWeb.d.ts","sourceRoot":"","sources":["../src/LineageWeb.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAgE,MAAM,OAAO,CAAC;AAErF,OAAO,EAGL,aAAa,EAWb,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,0BAA0B,EAAE,gBAWxC,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,wCAAwC;IACxC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,mGAAmG;IACnG,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACvC,sDAAsD;IACtD,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,oEAAoE;IACpE,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IACrC,6FAA6F;IAC7F,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAC3B,gFAAgF;IAChF,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACtC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IAC9C,sDAAsD;IACtD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wFAAwF;IACxF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACnC,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACzC,qGAAqG;IACrG,OAAO,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IAC1B,sEAAsE;IACtE,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACrE,6HAA6H;IAC7H,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACrC,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAQD,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,KAAK,EACL,QAAQ,EAAE,YAAY,EACtB,QAAQ,EACR,MAAM,EACN,OAAc,EACd,SAAiB,EACjB,IAAI,EAAE,QAAQ,EACd,WAAW,EACX,YAAY,EACZ,QAAe,EACf,IAAW,EACX,MAAM,EAAE,UAAU,EAClB,YAAiB,EACjB,MAAM,EAAE,UAAU,EAClB,OAAiB,EACjB,UAAe,EACf,MAAe,EACf,KAAK,GACN,EAAE,eAAe,qBA0lBjB"}
|
package/dist/LineageWeb.js
CHANGED
|
@@ -18,6 +18,13 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
18
18
|
* The options bar chooses the whole chronicle or the selected episode's
|
|
19
19
|
* relatives, which kinds of relation to draw, and the thread chains.
|
|
20
20
|
* jgwill/medicine-wheel#162.
|
|
21
|
+
*
|
|
22
|
+
* Moved and read by hand (#163): drag the empty canvas along time; zoom with
|
|
23
|
+
* − + Fit, Ctrl/⌘ + wheel or a pinch, the moment under the pointer staying put;
|
|
24
|
+
* hover or tap an arc for the words that say why the relation holds; ← → step
|
|
25
|
+
* along time, ↑ ↓ choose a relation, Enter follows it or opens the episode,
|
|
26
|
+
* Esc steps back. A new selection scrolls into view, and the band names stay
|
|
27
|
+
* at the left edge.
|
|
21
28
|
*/
|
|
22
29
|
const react_1 = require("react");
|
|
23
30
|
const lineage_web_js_1 = require("./lineage-web.js");
|
|
@@ -34,6 +41,10 @@ exports.DEFAULT_LINEAGE_WEB_COLORS = {
|
|
|
34
41
|
panel: 'var(--mw-card, #12122A)',
|
|
35
42
|
};
|
|
36
43
|
const FONT_MONO = 'ui-monospace, SFMono-Regular, Menlo, monospace';
|
|
44
|
+
const MAX_ZOOM = 8;
|
|
45
|
+
const KIND_LABEL = { continuation: 'continues from', relation: 'relates to' };
|
|
46
|
+
// useLayoutEffect warns during server rendering; the scroll it sets only matters in a browser.
|
|
47
|
+
const useIsoLayoutEffect = typeof window === 'undefined' ? react_1.useEffect : react_1.useLayoutEffect;
|
|
37
48
|
function LineageWeb({ episodes, edges, selected: selectedProp, onSelect, onOpen, matches = null, matchMode = 'kin', view: viewProp, defaultView, onViewChange, controls = true, chip = true, colors: colorsProp, threadColors = {}, layout: layoutProp, startAt = 'start', bandLabels = {}, labels = 'auto', style, }) {
|
|
38
49
|
const colors = { ...exports.DEFAULT_LINEAGE_WEB_COLORS, ...colorsProp };
|
|
39
50
|
const [ownSelected, setOwnSelected] = (0, react_1.useState)(null);
|
|
@@ -41,8 +52,18 @@ function LineageWeb({ episodes, edges, selected: selectedProp, onSelect, onOpen,
|
|
|
41
52
|
const [ownView, setOwnView] = (0, react_1.useState)({ ...lineage_web_js_1.DEFAULT_LINEAGE_VIEW, ...defaultView });
|
|
42
53
|
const view = viewProp ?? ownView;
|
|
43
54
|
const [hovered, setHovered] = (0, react_1.useState)(null);
|
|
55
|
+
const [hoveredEdge, setHoveredEdge] = (0, react_1.useState)(null);
|
|
56
|
+
const [pinnedEdge, setPinnedEdge] = (0, react_1.useState)(null);
|
|
57
|
+
const [zoom, setZoom] = (0, react_1.useState)(1);
|
|
58
|
+
const [dragging, setDragging] = (0, react_1.useState)(false);
|
|
59
|
+
const [keyboard, setKeyboard] = (0, react_1.useState)(false);
|
|
44
60
|
const scroller = (0, react_1.useRef)(null);
|
|
61
|
+
const drag = (0, react_1.useRef)(null);
|
|
62
|
+
const suppressClick = (0, react_1.useRef)(false);
|
|
63
|
+
const anchor = (0, react_1.useRef)(null);
|
|
64
|
+
const revealed = (0, react_1.useRef)(null);
|
|
45
65
|
const select = (id) => {
|
|
66
|
+
setPinnedEdge(null);
|
|
46
67
|
if (selectedProp === undefined)
|
|
47
68
|
setOwnSelected(id);
|
|
48
69
|
onSelect?.(id);
|
|
@@ -54,6 +75,9 @@ function LineageWeb({ episodes, edges, selected: selectedProp, onSelect, onOpen,
|
|
|
54
75
|
onViewChange?.(next);
|
|
55
76
|
};
|
|
56
77
|
const shown = (0, react_1.useMemo)(() => (0, lineage_web_js_1.visibleLineage)(episodes, edges, { view, focus: selected, matches, matchMode }), [episodes, edges, view, selected, matches, matchMode]);
|
|
78
|
+
const order = (0, react_1.useMemo)(() => shown.episodes.map((e) => e.id), [shown.episodes]);
|
|
79
|
+
const byId = (0, react_1.useMemo)(() => new Map(shown.episodes.map((e) => [e.id, e])), [shown.episodes]);
|
|
80
|
+
const edgeByKey = (0, react_1.useMemo)(() => new Map(shown.edges.map((e) => [(0, lineage_web_js_1.lineageEdgeKey)(e), e])), [shown.edges]);
|
|
57
81
|
// The canvas fills its box: `layout.minWidth` is a floor, the box's width the fill.
|
|
58
82
|
const [boxWidth, setBoxWidth] = (0, react_1.useState)(0);
|
|
59
83
|
(0, react_1.useEffect)(() => {
|
|
@@ -64,29 +88,88 @@ function LineageWeb({ episodes, edges, selected: selectedProp, onSelect, onOpen,
|
|
|
64
88
|
observer.observe(el);
|
|
65
89
|
return () => observer.disconnect();
|
|
66
90
|
}, []);
|
|
91
|
+
const base = { ...lineage_web_js_1.DEFAULT_LINEAGE_WEB_LAYOUT, ...layoutProp };
|
|
92
|
+
const box = boxWidth || base.minWidth;
|
|
93
|
+
const fit = (0, lineage_web_js_1.fitZoom)(shown.episodes.length, box, base);
|
|
94
|
+
const minZoom = Math.min(1, fit);
|
|
95
|
+
const maxZoom = Math.max(MAX_ZOOM, fit * MAX_ZOOM);
|
|
96
|
+
const z = Math.min(maxZoom, Math.max(minZoom, zoom));
|
|
67
97
|
const layout = (0, react_1.useMemo)(() => (0, lineage_web_js_1.layoutLineageWeb)(shown.episodes, {
|
|
68
98
|
...layoutProp,
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
99
|
+
minStep: base.minStep * z,
|
|
100
|
+
minWidth: Math.max(base.minWidth, boxWidth),
|
|
101
|
+
}),
|
|
102
|
+
// `base` is rebuilt each render from `layoutProp`; its fields are what matter.
|
|
103
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
104
|
+
[shown.episodes, layoutProp, boxWidth, z]);
|
|
105
|
+
const wider = layout.width > box + 1;
|
|
106
|
+
// Zooming keeps the moment under the pointer (or the box's middle) in place.
|
|
107
|
+
const zoomTo = (next, pointerX) => {
|
|
108
|
+
const target = Math.min(maxZoom, Math.max(minZoom, next));
|
|
109
|
+
if (Math.abs(target - z) < 1e-6)
|
|
110
|
+
return;
|
|
111
|
+
const el = scroller.current;
|
|
112
|
+
anchor.current = { pointerX: pointerX ?? (el?.clientWidth ?? box) / 2, scrollLeft: el?.scrollLeft ?? 0, oldWidth: layout.width };
|
|
113
|
+
setZoom(target);
|
|
114
|
+
};
|
|
115
|
+
// Zooming in starts from what is on screen: below `fit`, the canvas already fills the box.
|
|
116
|
+
const zoomBy = (factor, pointerX) => zoomTo((factor > 1 ? Math.max(z, fit) : z) * factor, pointerX);
|
|
117
|
+
const zoomByRef = (0, react_1.useRef)(zoomBy);
|
|
118
|
+
zoomByRef.current = zoomBy;
|
|
119
|
+
useIsoLayoutEffect(() => {
|
|
120
|
+
const a = anchor.current;
|
|
121
|
+
const el = scroller.current;
|
|
122
|
+
if (!a || !el)
|
|
123
|
+
return;
|
|
124
|
+
anchor.current = null;
|
|
125
|
+
el.scrollLeft = (0, lineage_web_js_1.zoomScrollLeft)(a.scrollLeft, a.pointerX, a.oldWidth, layout.width, base);
|
|
126
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
127
|
+
}, [layout.width]);
|
|
128
|
+
// Ctrl/⌘ + wheel (and a trackpad pinch, which arrives as one) zooms at the pointer.
|
|
129
|
+
// A plain wheel still scrolls the page. React's wheel listener is passive, so this one is added by hand.
|
|
130
|
+
(0, react_1.useEffect)(() => {
|
|
131
|
+
const el = scroller.current;
|
|
132
|
+
if (!el)
|
|
133
|
+
return;
|
|
134
|
+
const onWheel = (event) => {
|
|
135
|
+
if (!(event.ctrlKey || event.metaKey))
|
|
136
|
+
return;
|
|
137
|
+
event.preventDefault();
|
|
138
|
+
const rect = el.getBoundingClientRect();
|
|
139
|
+
zoomByRef.current(Math.exp(-event.deltaY * 0.0025), event.clientX - rect.left);
|
|
140
|
+
};
|
|
141
|
+
el.addEventListener('wheel', onWheel, { passive: false });
|
|
142
|
+
return () => el.removeEventListener('wheel', onWheel);
|
|
143
|
+
}, []);
|
|
144
|
+
// A new selection, or a new set of episodes, scrolls the selection into view.
|
|
145
|
+
// Zoom does not: it keeps its own anchor.
|
|
83
146
|
(0, react_1.useEffect)(() => {
|
|
84
147
|
const el = scroller.current;
|
|
85
|
-
if (el
|
|
148
|
+
if (!el)
|
|
149
|
+
return;
|
|
150
|
+
const key = `${selected ?? ''}|${order.length}|${order[0] ?? ''}`;
|
|
151
|
+
if (key === revealed.current)
|
|
152
|
+
return;
|
|
153
|
+
const first = revealed.current === null;
|
|
154
|
+
revealed.current = key;
|
|
155
|
+
const p = selected ? layout.positions.get(selected) : undefined;
|
|
156
|
+
if (p) {
|
|
157
|
+
const margin = 48;
|
|
158
|
+
if (p.x < el.scrollLeft + margin || p.x > el.scrollLeft + el.clientWidth - margin) {
|
|
159
|
+
el.scrollTo({ left: Math.max(0, p.x - el.clientWidth / 2), behavior: first ? 'auto' : 'smooth' });
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
else if (startAt === 'end') {
|
|
86
163
|
el.scrollLeft = el.scrollWidth;
|
|
87
|
-
|
|
88
|
-
|
|
164
|
+
}
|
|
165
|
+
}, [selected, order, layout, startAt]);
|
|
166
|
+
// What is in focus: a hovered episode, else a hovered or pinned relation, else the selection.
|
|
167
|
+
const edgeKeyInFocus = hovered ? null : (hoveredEdge ?? pinnedEdge);
|
|
168
|
+
const edgeInFocus = edgeKeyInFocus ? edgeByKey.get(edgeKeyInFocus) ?? null : null;
|
|
169
|
+
const focus = edgeInFocus ? null : (hovered ?? selected);
|
|
89
170
|
const near = (0, react_1.useMemo)(() => {
|
|
171
|
+
if (edgeInFocus)
|
|
172
|
+
return new Set([edgeInFocus.from, edgeInFocus.to]);
|
|
90
173
|
if (!focus || !byId.has(focus))
|
|
91
174
|
return null;
|
|
92
175
|
const set = new Set([focus]);
|
|
@@ -97,72 +180,233 @@ function LineageWeb({ episodes, edges, selected: selectedProp, onSelect, onOpen,
|
|
|
97
180
|
set.add(e.from);
|
|
98
181
|
}
|
|
99
182
|
return set;
|
|
100
|
-
}, [focus, byId, shown.edges]);
|
|
183
|
+
}, [edgeInFocus, focus, byId, shown.edges]);
|
|
184
|
+
const anyFocus = near !== null;
|
|
185
|
+
// A month label that would overlap the one before it is left out.
|
|
186
|
+
const monthLabels = (0, react_1.useMemo)(() => {
|
|
187
|
+
const kept = [];
|
|
188
|
+
for (const m of layout.months) {
|
|
189
|
+
if (!kept.length || m.x - kept[kept.length - 1].x >= 56)
|
|
190
|
+
kept.push(m);
|
|
191
|
+
}
|
|
192
|
+
return kept;
|
|
193
|
+
}, [layout.months]);
|
|
194
|
+
const chains = (0, react_1.useMemo)(() => (view.threads ? (0, lineage_web_js_1.threadChains)(shown.episodes) : []), [shown.episodes, view.threads]);
|
|
195
|
+
const hasThreads = (0, react_1.useMemo)(() => episodes.some((e) => e.thread), [episodes]);
|
|
101
196
|
const colorOf = (direction) => direction && lineage_web_js_1.LINEAGE_BANDS.includes(direction)
|
|
102
197
|
? colors[direction]
|
|
103
198
|
: colors.undirected;
|
|
104
199
|
const tap = (id) => {
|
|
105
|
-
if (
|
|
200
|
+
if (suppressClick.current)
|
|
201
|
+
return;
|
|
202
|
+
if (selected === id && !pinnedEdge)
|
|
106
203
|
onOpen?.(id);
|
|
107
204
|
else
|
|
108
205
|
select(id);
|
|
109
206
|
};
|
|
110
|
-
const
|
|
111
|
-
|
|
207
|
+
const scrollIntoView = (id) => {
|
|
208
|
+
const el = scroller.current;
|
|
209
|
+
const p = layout.positions.get(id);
|
|
210
|
+
if (!el || !p)
|
|
211
|
+
return;
|
|
212
|
+
if (p.x < el.scrollLeft + 48 || p.x > el.scrollLeft + el.clientWidth - 48) {
|
|
213
|
+
el.scrollTo({ left: Math.max(0, p.x - el.clientWidth / 2), behavior: 'smooth' });
|
|
214
|
+
}
|
|
215
|
+
};
|
|
216
|
+
// ── Drag the empty canvas along time (a mouse; a finger already scrolls) ──
|
|
217
|
+
const onPointerDown = (event) => {
|
|
218
|
+
setKeyboard(false);
|
|
219
|
+
if (event.pointerType !== 'mouse' || event.button !== 0)
|
|
220
|
+
return;
|
|
221
|
+
if (event.target.closest?.('[data-episode]'))
|
|
222
|
+
return;
|
|
223
|
+
const el = scroller.current;
|
|
224
|
+
if (!el)
|
|
225
|
+
return;
|
|
226
|
+
drag.current = { x: event.clientX, left: el.scrollLeft, moved: false, pointer: event.pointerId };
|
|
227
|
+
};
|
|
228
|
+
const onPointerMove = (event) => {
|
|
229
|
+
const d = drag.current;
|
|
230
|
+
const el = scroller.current;
|
|
231
|
+
if (!d || !el)
|
|
232
|
+
return;
|
|
233
|
+
const dx = event.clientX - d.x;
|
|
234
|
+
if (!d.moved && Math.abs(dx) > 4) {
|
|
235
|
+
d.moved = true;
|
|
236
|
+
el.setPointerCapture?.(d.pointer);
|
|
237
|
+
setDragging(true);
|
|
238
|
+
setHovered(null);
|
|
239
|
+
setHoveredEdge(null);
|
|
240
|
+
}
|
|
241
|
+
if (d.moved)
|
|
242
|
+
el.scrollLeft = d.left - dx;
|
|
243
|
+
};
|
|
244
|
+
const endDrag = () => {
|
|
245
|
+
const d = drag.current;
|
|
246
|
+
drag.current = null;
|
|
247
|
+
if (!d?.moved)
|
|
248
|
+
return;
|
|
249
|
+
setDragging(false);
|
|
250
|
+
// The click that ends a drag is not a click on the canvas.
|
|
251
|
+
suppressClick.current = true;
|
|
252
|
+
setTimeout(() => (suppressClick.current = false), 0);
|
|
253
|
+
};
|
|
254
|
+
// ── Keys: walk the lineage ──
|
|
255
|
+
const onKeyDown = (event) => {
|
|
256
|
+
const current = selected && byId.has(selected) ? selected : null;
|
|
257
|
+
switch (event.key) {
|
|
258
|
+
case 'ArrowRight':
|
|
259
|
+
case 'ArrowLeft': {
|
|
260
|
+
const next = (0, lineage_web_js_1.stepAlongSpine)(order, current, event.key === 'ArrowRight' ? 1 : -1);
|
|
261
|
+
if (next)
|
|
262
|
+
select(next);
|
|
263
|
+
break;
|
|
264
|
+
}
|
|
265
|
+
case 'ArrowDown':
|
|
266
|
+
case 'ArrowUp': {
|
|
267
|
+
if (!current)
|
|
268
|
+
return;
|
|
269
|
+
const keys = (0, lineage_web_js_1.relationsAround)(current, shown.edges, order).map(lineage_web_js_1.lineageEdgeKey);
|
|
270
|
+
if (!keys.length)
|
|
271
|
+
break;
|
|
272
|
+
const at = pinnedEdge ? keys.indexOf(pinnedEdge) : -1;
|
|
273
|
+
const next = event.key === 'ArrowDown' ? (at + 1) % keys.length : at <= 0 ? keys.length - 1 : at - 1;
|
|
274
|
+
setPinnedEdge(keys[next]);
|
|
275
|
+
const e = edgeByKey.get(keys[next]);
|
|
276
|
+
if (e)
|
|
277
|
+
scrollIntoView(e.from === current ? e.to : e.from);
|
|
278
|
+
break;
|
|
279
|
+
}
|
|
280
|
+
case 'Enter': {
|
|
281
|
+
if (current && edgeInFocus && (edgeInFocus.from === current || edgeInFocus.to === current)) {
|
|
282
|
+
select(edgeInFocus.from === current ? edgeInFocus.to : edgeInFocus.from);
|
|
283
|
+
}
|
|
284
|
+
else if (current) {
|
|
285
|
+
onOpen?.(current);
|
|
286
|
+
}
|
|
287
|
+
else
|
|
288
|
+
return;
|
|
289
|
+
break;
|
|
290
|
+
}
|
|
291
|
+
case 'Escape':
|
|
292
|
+
if (pinnedEdge)
|
|
293
|
+
setPinnedEdge(null);
|
|
294
|
+
else if (selected)
|
|
295
|
+
select(null);
|
|
296
|
+
else
|
|
297
|
+
return;
|
|
298
|
+
break;
|
|
299
|
+
case '+':
|
|
300
|
+
case '=':
|
|
301
|
+
zoomBy(1.5);
|
|
302
|
+
break;
|
|
303
|
+
case '-':
|
|
304
|
+
case '_':
|
|
305
|
+
zoomBy(1 / 1.5);
|
|
306
|
+
break;
|
|
307
|
+
case '0':
|
|
308
|
+
zoomTo(fit);
|
|
309
|
+
break;
|
|
310
|
+
default:
|
|
311
|
+
return;
|
|
312
|
+
}
|
|
313
|
+
// The keys lead now: a pointer resting on a dot or an arc no longer overrides them.
|
|
314
|
+
setHovered(null);
|
|
315
|
+
setHoveredEdge(null);
|
|
316
|
+
setKeyboard(true);
|
|
317
|
+
event.preventDefault();
|
|
318
|
+
};
|
|
319
|
+
const showAllLabels = labels === 'always' || (labels === 'auto' && shown.episodes.length <= 40);
|
|
320
|
+
const labelled = (id) => labels !== 'never' && (showAllLabels || id === selected || (near?.has(id) ?? false));
|
|
112
321
|
const relatives = shown.found ? shown.episodes.length - shown.found.size : 0;
|
|
113
322
|
const summary = shown.found
|
|
114
323
|
? `${shown.found.size} found · ${relatives} related · ${shown.edges.length} relations`
|
|
115
324
|
: `${shown.episodes.length} episodes · ${shown.edges.length} relations`;
|
|
116
|
-
const
|
|
325
|
+
const active = !edgeInFocus && focus ? byId.get(focus) ?? null : null;
|
|
326
|
+
const option = (on, enabled = true) => ({
|
|
117
327
|
padding: '3px 10px',
|
|
118
328
|
borderRadius: 999,
|
|
119
329
|
fontSize: 12,
|
|
120
330
|
fontFamily: 'inherit',
|
|
121
|
-
cursor: 'pointer',
|
|
331
|
+
cursor: enabled ? 'pointer' : 'default',
|
|
122
332
|
background: 'transparent',
|
|
123
333
|
color: on ? colors.text : colors.muted,
|
|
124
334
|
border: `1px solid ${on ? colors.accent : colors.border}`,
|
|
125
335
|
fontWeight: on ? 700 : 500,
|
|
126
336
|
whiteSpace: 'nowrap',
|
|
337
|
+
opacity: enabled ? 1 : 0.4,
|
|
127
338
|
});
|
|
128
|
-
const
|
|
129
|
-
|
|
130
|
-
|
|
339
|
+
const separator = (0, jsx_runtime_1.jsx)("span", { style: { width: 1, height: 16, background: colors.border, margin: '0 4px' } });
|
|
340
|
+
const mark = (e, fallback) => ((0, jsx_runtime_1.jsx)("span", { style: { fontFamily: FONT_MONO, fontWeight: 700, color: colorOf(e?.direction) }, children: e?.label ?? fallback }));
|
|
341
|
+
return ((0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', flexDirection: 'column', gap: 8, minWidth: 0, ...style }, children: [controls && ((0, jsx_runtime_1.jsxs)("div", { role: "toolbar", "aria-label": "Lineage view", style: { display: 'flex', gap: 6, flexWrap: 'wrap', alignItems: 'center', fontSize: 12, color: colors.muted }, children: [(0, jsx_runtime_1.jsx)("button", { type: "button", "aria-pressed": view.scope === 'all', style: option(view.scope === 'all'), onClick: () => changeView({ scope: 'all' }), children: "Whole chronicle" }), (0, jsx_runtime_1.jsx)("button", { type: "button", "aria-pressed": view.scope === 'around', style: option(view.scope === 'around'), onClick: () => changeView({ scope: 'around' }), title: "The selected episode and the episodes related to it", children: "Around the selected episode" }), (0, jsx_runtime_1.jsx)("button", { type: "button", style: option(view.depth === 2), "aria-pressed": view.depth === 2, onClick: () => changeView({ depth: view.depth === 2 ? 1 : 2 }), title: "How far relatives reach, around an episode and in a search", children: view.depth === 2 ? '2 steps' : '1 step' }), separator, ['continuation', 'relation'].map((kind) => ((0, jsx_runtime_1.jsxs)("button", { type: "button", "aria-pressed": view.kinds[kind], style: option(view.kinds[kind]), onClick: () => changeView({ kinds: { ...view.kinds, [kind]: !view.kinds[kind] } }), children: [(0, jsx_runtime_1.jsx)("svg", { width: 18, height: 8, "aria-hidden": true, style: { display: 'inline-block', marginRight: 6, verticalAlign: 'middle' }, children: (0, jsx_runtime_1.jsx)("line", { x1: 1, y1: 4, x2: 17, y2: 4, stroke: "currentColor", strokeWidth: 1.6, strokeDasharray: kind === 'relation' ? '3 3' : undefined }) }), KIND_LABEL[kind]] }, kind))), hasThreads && ((0, jsx_runtime_1.jsx)("button", { type: "button", "aria-pressed": view.threads, style: option(view.threads), onClick: () => changeView({ threads: !view.threads }), children: "threads" })), separator, (0, jsx_runtime_1.jsxs)("span", { role: "group", "aria-label": "Zoom", style: { display: 'inline-flex', gap: 4 }, children: [(0, jsx_runtime_1.jsx)("button", { type: "button", "aria-label": "Zoom out", title: "Zoom out (\u2212)", disabled: !wider, style: option(false, wider), onClick: () => zoomBy(1 / 1.5), children: "\u2212" }), (0, jsx_runtime_1.jsx)("button", { type: "button", "aria-label": "Zoom in", title: "Zoom in (+)", disabled: z >= maxZoom, style: option(false, z < maxZoom), onClick: () => zoomBy(1.5), children: "+" }), (0, jsx_runtime_1.jsx)("button", { type: "button", title: "The whole span in the box (0)", disabled: !wider, style: option(false, wider), onClick: () => zoomTo(fit), children: "Fit" })] }), (0, jsx_runtime_1.jsx)("span", { style: { marginLeft: 'auto', fontFamily: FONT_MONO, fontSize: 11 }, children: summary })] })), (0, jsx_runtime_1.jsxs)("div", { role: "group", "aria-label": "Lineage web. Left and right arrows step along time, up and down choose a relation, Enter follows it or opens the episode, Escape steps back, minus, plus and 0 zoom.", tabIndex: 0, onKeyDown: onKeyDown, onBlur: () => setKeyboard(false), style: {
|
|
342
|
+
position: 'relative',
|
|
343
|
+
minWidth: 0,
|
|
344
|
+
outline: keyboard ? `2px solid ${colors.accent}` : 'none',
|
|
345
|
+
outlineOffset: 2,
|
|
346
|
+
borderRadius: 4,
|
|
347
|
+
}, children: [(0, jsx_runtime_1.jsx)("div", { ref: scroller, onPointerDown: onPointerDown, onPointerMove: onPointerMove, onPointerUp: endDrag, onPointerCancel: endDrag, style: { overflowX: 'auto', cursor: dragging ? 'grabbing' : wider ? 'grab' : 'default', userSelect: 'none' }, children: (0, jsx_runtime_1.jsxs)("svg", { width: layout.width, height: layout.height, viewBox: `0 0 ${layout.width} ${layout.height}`, role: "img", "aria-label": `${summary}, in chronicle order`, style: { display: 'block', maxWidth: 'none' }, onClick: (event) => {
|
|
348
|
+
if (suppressClick.current || event.target !== event.currentTarget)
|
|
349
|
+
return;
|
|
350
|
+
if (pinnedEdge)
|
|
351
|
+
setPinnedEdge(null);
|
|
352
|
+
else
|
|
131
353
|
select(null);
|
|
132
|
-
}, children: [lineage_web_js_1.LINEAGE_BANDS.map((band) => ((0, jsx_runtime_1.
|
|
354
|
+
}, children: [lineage_web_js_1.LINEAGE_BANDS.map((band) => ((0, jsx_runtime_1.jsx)("line", { x1: 0, x2: layout.width, y1: layout.bandY[band], y2: layout.bandY[band], stroke: colors.border, strokeWidth: 1, strokeDasharray: "2 8", pointerEvents: "none" }, band))), monthLabels.map((m) => ((0, jsx_runtime_1.jsx)("text", { x: m.x, y: layout.height - 7, textAnchor: m.x > layout.width - 60 ? 'end' : 'start', fontSize: 10, fontFamily: FONT_MONO, fill: colors.muted, pointerEvents: "none", children: m.label }, m.label))), chains.map((c) => {
|
|
133
355
|
const a = layout.positions.get(c.from);
|
|
134
356
|
const b = layout.positions.get(c.to);
|
|
135
357
|
if (!a || !b)
|
|
136
358
|
return null;
|
|
137
|
-
return ((0, jsx_runtime_1.jsx)("line", { x1: a.x, y1: a.y, x2: b.x, y2: b.y, stroke: threadColors[c.thread] ?? colors.muted, strokeWidth: 0.6, opacity:
|
|
359
|
+
return ((0, jsx_runtime_1.jsx)("line", { x1: a.x, y1: a.y, x2: b.x, y2: b.y, stroke: threadColors[c.thread] ?? colors.muted, strokeWidth: 0.6, opacity: anyFocus ? 0.08 : 0.2, pointerEvents: "none" }, `t:${c.from}:${c.to}`));
|
|
138
360
|
}), shown.edges.map((e, i) => {
|
|
139
361
|
const a = layout.positions.get(e.from);
|
|
140
362
|
const b = layout.positions.get(e.to);
|
|
141
363
|
if (!a || !b)
|
|
142
364
|
return null;
|
|
143
|
-
const
|
|
144
|
-
const
|
|
145
|
-
|
|
365
|
+
const key = (0, lineage_web_js_1.lineageEdgeKey)(e);
|
|
366
|
+
const lit = edgeInFocus ? key === edgeKeyInFocus : focus !== null && (e.from === focus || e.to === focus);
|
|
367
|
+
const d = (0, lineage_web_js_1.lineageArcPath)(a, b, e.kind, layout);
|
|
368
|
+
return ((0, jsx_runtime_1.jsxs)("g", { children: [(0, jsx_runtime_1.jsx)("path", { d: d, fill: "none", stroke: lit ? colors.accent : colorOf(byId.get(e.from)?.direction), strokeWidth: lit ? (key === edgeKeyInFocus ? 2.6 : 2) : 1.2, strokeDasharray: e.kind === 'relation' ? '4 3' : undefined, opacity: lit ? 1 : anyFocus ? 0.1 : e.kind === 'continuation' ? 0.55 : 0.4, pointerEvents: "none" }), (0, jsx_runtime_1.jsx)("path", { "data-edge": true, d: d, fill: "none", stroke: "transparent", strokeWidth: 12, pointerEvents: "stroke", style: { cursor: 'pointer' }, onMouseEnter: () => !drag.current?.moved && setHoveredEdge(key), onMouseLeave: () => setHoveredEdge(null), onClick: (event) => {
|
|
369
|
+
event.stopPropagation();
|
|
370
|
+
if (suppressClick.current)
|
|
371
|
+
return;
|
|
372
|
+
setPinnedEdge((current) => (current === key ? null : key));
|
|
373
|
+
}, children: (0, jsx_runtime_1.jsx)("title", { children: `${byId.get(e.from)?.label ?? e.from} ${KIND_LABEL[e.kind]} ${byId.get(e.to)?.label ?? e.to}${e.words ? ` — ${e.words}` : ''}` }) })] }, `${key}:${i}`));
|
|
146
374
|
}), shown.episodes.map((episode) => {
|
|
147
375
|
const p = layout.positions.get(episode.id);
|
|
148
376
|
const color = colorOf(episode.direction);
|
|
149
377
|
const relative = shown.found !== null && !shown.found.has(episode.id);
|
|
150
378
|
const dim = shown.faded.has(episode.id) || (near !== null && !near.has(episode.id));
|
|
151
379
|
const isSelected = episode.id === selected;
|
|
152
|
-
|
|
380
|
+
const isFocus = episode.id === focus || (edgeInFocus !== null && near?.has(episode.id));
|
|
381
|
+
const atRight = p.x > layout.width - 48;
|
|
382
|
+
return ((0, jsx_runtime_1.jsxs)("g", { "data-episode": true, transform: `translate(${p.x} ${p.y})`, style: { cursor: 'pointer' }, opacity: dim ? 0.25 : 1, onClick: () => tap(episode.id), onMouseEnter: () => !drag.current?.moved && setHovered(episode.id), onMouseLeave: () => setHovered(null), children: [(0, jsx_runtime_1.jsx)("title", { children: `${episode.label} · ${episode.title ?? episode.id}${relative ? ' (related)' : ''}` }), (0, jsx_runtime_1.jsx)("circle", { r: 10, fill: "transparent" }), isFocus && (0, jsx_runtime_1.jsx)("circle", { r: 11, fill: color, opacity: 0.22 }), relative ? ((0, jsx_runtime_1.jsx)("circle", { r: 4.5, fill: "none", stroke: color, strokeWidth: 1.6 })) : ((0, jsx_runtime_1.jsx)("circle", { r: isSelected ? 6 : 4, fill: color })), isSelected && (0, jsx_runtime_1.jsx)("circle", { r: 8.5, fill: "none", stroke: colors.text, strokeWidth: 1.4 }), labelled(episode.id) && (
|
|
153
383
|
// Near the right edge the label sits to the left of its dot, inside the canvas.
|
|
154
|
-
(0, jsx_runtime_1.jsx)("text", { x:
|
|
155
|
-
})] }) }),
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
384
|
+
(0, jsx_runtime_1.jsx)("text", { x: atRight ? -7 : 7, y: -8, textAnchor: atRight ? 'end' : 'start', fontSize: 10, fontFamily: FONT_MONO, fill: isFocus || isSelected ? colors.text : colors.muted, pointerEvents: "none", children: episode.label }))] }, episode.id));
|
|
385
|
+
})] }) }), (0, jsx_runtime_1.jsx)("div", { "aria-hidden": true, style: { position: 'absolute', left: 0, top: 0, pointerEvents: 'none' }, children: lineage_web_js_1.LINEAGE_BANDS.map((band) => ((0, jsx_runtime_1.jsx)("div", { style: {
|
|
386
|
+
position: 'absolute',
|
|
387
|
+
left: 6,
|
|
388
|
+
top: layout.bandY[band] - 33,
|
|
389
|
+
fontSize: 11,
|
|
390
|
+
lineHeight: '14px',
|
|
391
|
+
fontFamily: FONT_MONO,
|
|
392
|
+
color: colors[band],
|
|
393
|
+
background: colors.panel,
|
|
394
|
+
padding: '1px 5px',
|
|
395
|
+
borderRadius: 4,
|
|
396
|
+
whiteSpace: 'nowrap',
|
|
397
|
+
}, children: bandLabels[band] ?? band }, band))) })] }), chip && ((0, jsx_runtime_1.jsx)("div", { "aria-live": "polite", style: {
|
|
398
|
+
minHeight: 42,
|
|
399
|
+
display: 'flex',
|
|
400
|
+
flexWrap: 'wrap',
|
|
401
|
+
alignItems: 'baseline',
|
|
402
|
+
columnGap: 10,
|
|
403
|
+
rowGap: 2,
|
|
404
|
+
padding: '6px 4px 4px',
|
|
405
|
+
borderTop: `1px solid ${colors.border}`,
|
|
406
|
+
borderLeft: `3px solid ${edgeInFocus ? colors.accent : active ? colorOf(active.direction) : 'transparent'}`,
|
|
407
|
+
paddingLeft: 10,
|
|
408
|
+
fontSize: 11,
|
|
409
|
+
color: colors.muted,
|
|
410
|
+
}, children: edgeInFocus ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [mark(byId.get(edgeInFocus.from), edgeInFocus.from), (0, jsx_runtime_1.jsx)("span", { style: { fontSize: 13, fontWeight: 700, color: colors.text }, children: byId.get(edgeInFocus.from)?.title ?? edgeInFocus.from }), (0, jsx_runtime_1.jsx)("span", { style: { fontStyle: 'italic' }, children: KIND_LABEL[edgeInFocus.kind] }), mark(byId.get(edgeInFocus.to), edgeInFocus.to), (0, jsx_runtime_1.jsx)("span", { style: { fontSize: 13, fontWeight: 700, color: colors.text }, children: byId.get(edgeInFocus.to)?.title ?? edgeInFocus.to }), (0, jsx_runtime_1.jsx)("span", { style: { flexBasis: '100%', fontSize: 12.5, lineHeight: 1.45, color: edgeInFocus.words ? colors.text : colors.muted }, children: edgeInFocus.words ?? 'No words say why this relation holds yet.' }), pinnedEdge && !hoveredEdge && ((0, jsx_runtime_1.jsx)("span", { style: { flexBasis: '100%' }, children: "Enter follows it \u00B7 Esc or a tap on the canvas lets it go" }))] })) : active ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [mark(active, active.id), active.date && (0, jsx_runtime_1.jsx)("span", { style: { fontFamily: FONT_MONO }, children: active.date }), (0, jsx_runtime_1.jsx)("span", { style: { fontSize: 13.5, fontWeight: 800, lineHeight: 1.25, color: colors.text }, children: active.title ?? active.id }), active.caption && (0, jsx_runtime_1.jsx)("span", { children: active.caption }), shown.found && !shown.found.has(active.id) && (0, jsx_runtime_1.jsx)("span", { children: "related to an episode the search found" })] })) : ((0, jsx_runtime_1.jsx)("span", { children: "Hover or tap an episode to name it, again to open it; hover an arc for why it holds. Drag the canvas along time; Ctrl + wheel or \u2212 + to zoom; arrow keys walk the lineage." })) }))] }));
|
|
167
411
|
}
|
|
168
412
|
//# sourceMappingURL=LineageWeb.js.map
|
package/dist/LineageWeb.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LineageWeb.js","sourceRoot":"","sources":["../src/LineageWeb.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LineageWeb.js","sourceRoot":"","sources":["../src/LineageWeb.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;AAoHb,gCA8mBC;;AAhuBD;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,iCAAqF;AAErF,qDAkB0B;AAkBb,QAAA,0BAA0B,GAAqB;IAC1D,IAAI,EAAE,6BAA6B;IACnC,KAAK,EAAE,8BAA8B;IACrC,IAAI,EAAE,6BAA6B;IACnC,KAAK,EAAE,8BAA8B;IACrC,UAAU,EAAE,0BAA0B;IACtC,IAAI,EAAE,uBAAuB;IAC7B,KAAK,EAAE,0BAA0B;IACjC,MAAM,EAAE,2BAA2B;IACnC,MAAM,EAAE,4BAA4B;IACpC,KAAK,EAAE,yBAAyB;CACjC,CAAC;AAoCF,MAAM,SAAS,GAAG,gDAAgD,CAAC;AACnE,MAAM,QAAQ,GAAG,CAAC,CAAC;AACnB,MAAM,UAAU,GAAoC,EAAE,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC;AAC/G,+FAA+F;AAC/F,MAAM,kBAAkB,GAAG,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,iBAAS,CAAC,CAAC,CAAC,uBAAe,CAAC;AAEvF,SAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,KAAK,EACL,QAAQ,EAAE,YAAY,EACtB,QAAQ,EACR,MAAM,EACN,OAAO,GAAG,IAAI,EACd,SAAS,GAAG,KAAK,EACjB,IAAI,EAAE,QAAQ,EACd,WAAW,EACX,YAAY,EACZ,QAAQ,GAAG,IAAI,EACf,IAAI,GAAG,IAAI,EACX,MAAM,EAAE,UAAU,EAClB,YAAY,GAAG,EAAE,EACjB,MAAM,EAAE,UAAU,EAClB,OAAO,GAAG,OAAO,EACjB,UAAU,GAAG,EAAE,EACf,MAAM,GAAG,MAAM,EACf,KAAK,GACW;IAChB,MAAM,MAAM,GAAG,EAAE,GAAG,kCAA0B,EAAE,GAAG,UAAU,EAAE,CAAC;IAChE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,EAAgB,IAAI,CAAC,CAAC;IACpE,MAAM,QAAQ,GAAG,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC;IACzE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAiB,EAAE,GAAG,qCAAoB,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC;IACpG,MAAM,IAAI,GAAG,QAAQ,IAAI,OAAO,CAAC;IACjC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAgB,IAAI,CAAC,CAAC;IAC5D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,EAAgB,IAAI,CAAC,CAAC;IACpE,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAgB,IAAI,CAAC,CAAC;IAClE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;IACpC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAChD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,IAAA,cAAM,EAAsE,IAAI,CAAC,CAAC;IAC/F,MAAM,aAAa,GAAG,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,IAAA,cAAM,EAAoE,IAAI,CAAC,CAAC;IAC/F,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAgB,IAAI,CAAC,CAAC;IAE7C,MAAM,MAAM,GAAG,CAAC,EAAiB,EAAE,EAAE;QACnC,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,IAAI,YAAY,KAAK,SAAS;YAAE,cAAc,CAAC,EAAE,CAAC,CAAC;QACnD,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,CAAC,KAA8B,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;QAC7E,IAAI,CAAC,QAAQ;YAAE,UAAU,CAAC,IAAI,CAAC,CAAC;QAChC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC,CAAC;IAEF,MAAM,KAAK,GAAG,IAAA,eAAO,EACnB,GAAG,EAAE,CAAC,IAAA,+BAAc,EAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,EACpF,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CACtD,CAAC;IACF,MAAM,KAAK,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/E,MAAM,IAAI,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5F,MAAM,SAAS,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAA,+BAAc,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAExG,oFAAoF;IACpF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;IAC5C,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,EAAE,IAAI,OAAO,cAAc,KAAK,WAAW;YAAE,OAAO;QACzD,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnG,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACrB,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,IAAI,GAAG,EAAE,GAAG,2CAA0B,EAAE,GAAG,UAAU,EAAE,CAAC;IAC9D,MAAM,GAAG,GAAG,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;IACtC,MAAM,GAAG,GAAG,IAAA,wBAAO,EAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACjC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,GAAG,QAAQ,CAAC,CAAC;IACnD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,IAAA,eAAO,EACpB,GAAG,EAAE,CACH,IAAA,iCAAgB,EAAC,KAAK,CAAC,QAAQ,EAAE;QAC/B,GAAG,UAAU;QACb,OAAO,EAAE,IAAI,CAAC,OAAO,GAAG,CAAC;QACzB,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC;KAC5C,CAAC;IACJ,+EAA+E;IAC/E,uDAAuD;IACvD,CAAC,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,CAC1C,CAAC;IACF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,GAAG,GAAG,GAAG,CAAC,CAAC;IAErC,6EAA6E;IAC7E,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,QAAiB,EAAE,EAAE;QACjD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAC1D,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI;YAAE,OAAO;QACxC,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC5B,MAAM,CAAC,OAAO,GAAG,EAAE,QAAQ,EAAE,QAAQ,IAAI,CAAC,EAAE,EAAE,WAAW,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;QACjI,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC,CAAC;IACF,2FAA2F;IAC3F,MAAM,MAAM,GAAG,CAAC,MAAc,EAAE,QAAiB,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,QAAQ,CAAC,CAAC;IACrH,MAAM,SAAS,GAAG,IAAA,cAAM,EAAC,MAAM,CAAC,CAAC;IACjC,SAAS,CAAC,OAAO,GAAG,MAAM,CAAC;IAE3B,kBAAkB,CAAC,GAAG,EAAE;QACtB,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;QACzB,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO;QACtB,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;QACtB,EAAE,CAAC,UAAU,GAAG,IAAA,+BAAc,EAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACzF,uDAAuD;IACzD,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnB,oFAAoF;IACpF,yGAAyG;IACzG,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,MAAM,OAAO,GAAG,CAAC,KAAiB,EAAE,EAAE;YACpC,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC;gBAAE,OAAO;YAC9C,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC;YACxC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QACjF,CAAC,CAAC;QACF,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1D,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,8EAA8E;IAC9E,0CAA0C;IAC1C,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,MAAM,GAAG,GAAG,GAAG,QAAQ,IAAI,EAAE,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAClE,IAAI,GAAG,KAAK,QAAQ,CAAC,OAAO;YAAE,OAAO;QACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,KAAK,IAAI,CAAC;QACxC,QAAQ,CAAC,OAAO,GAAG,GAAG,CAAC;QACvB,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAChE,IAAI,CAAC,EAAE,CAAC;YACN,MAAM,MAAM,GAAG,EAAE,CAAC;YAClB,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,WAAW,GAAG,MAAM,EAAE,CAAC;gBAClF,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YACpG,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;YAC7B,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,WAAW,CAAC;QACjC,CAAC;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEvC,8FAA8F;IAC9F,MAAM,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,UAAU,CAAC,CAAC;IACpE,MAAM,WAAW,GAAG,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAClF,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,QAAQ,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;QACxB,IAAI,WAAW;YAAE,OAAO,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;QACpE,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7B,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC5B,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK;gBAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,CAAC,CAAC,EAAE,KAAK,KAAK;gBAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG,IAAI,KAAK,IAAI,CAAC;IAE/B,kEAAkE;IAClE,MAAM,WAAW,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;QAC/B,MAAM,IAAI,GAAyB,EAAE,CAAC;QACtC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC9B,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;gBAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACpB,MAAM,MAAM,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,6BAAY,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACjH,MAAM,UAAU,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE7E,MAAM,OAAO,GAAG,CAAC,SAAkB,EAAE,EAAE,CACrC,SAAS,IAAK,8BAAmC,CAAC,QAAQ,CAAC,SAAS,CAAC;QACnE,CAAC,CAAC,MAAM,CAAC,SAA2C,CAAC;QACrD,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;IAExB,MAAM,GAAG,GAAG,CAAC,EAAU,EAAE,EAAE;QACzB,IAAI,aAAa,CAAC,OAAO;YAAE,OAAO;QAClC,IAAI,QAAQ,KAAK,EAAE,IAAI,CAAC,UAAU;YAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;;YAC5C,MAAM,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,EAAU,EAAE,EAAE;QACpC,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC5B,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;YAAE,OAAO;QACtB,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,WAAW,GAAG,EAAE,EAAE,CAAC;YAC1E,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QACnF,CAAC;IACH,CAAC,CAAC;IAEF,6EAA6E;IAC7E,MAAM,aAAa,GAAG,CAAC,KAAyC,EAAE,EAAE;QAClE,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,IAAI,KAAK,CAAC,WAAW,KAAK,OAAO,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAChE,IAAK,KAAK,CAAC,MAAkB,CAAC,OAAO,EAAE,CAAC,gBAAgB,CAAC;YAAE,OAAO;QAClE,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IACnG,CAAC,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,KAAyC,EAAE,EAAE;QAClE,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;QACvB,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO;QACtB,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC;YACf,EAAE,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAClC,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,UAAU,CAAC,IAAI,CAAC,CAAC;YACjB,cAAc,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,CAAC,KAAK;YAAE,EAAE,CAAC,UAAU,GAAG,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;IAC3C,CAAC,CAAC;IACF,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,CAAC,EAAE,KAAK;YAAE,OAAO;QACtB,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,2DAA2D;QAC3D,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;QAC7B,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC,CAAC;IAEF,+BAA+B;IAC/B,MAAM,SAAS,GAAG,CAAC,KAA0C,EAAE,EAAE;QAC/D,MAAM,OAAO,GAAG,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QACjE,QAAQ,KAAK,CAAC,GAAG,EAAE,CAAC;YAClB,KAAK,YAAY,CAAC;YAClB,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,IAAI,GAAG,IAAA,+BAAc,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjF,IAAI,IAAI;oBAAE,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvB,MAAM;YACR,CAAC;YACD,KAAK,WAAW,CAAC;YACjB,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,IAAI,CAAC,OAAO;oBAAE,OAAO;gBACrB,MAAM,IAAI,GAAG,IAAA,gCAAe,EAAC,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,+BAAc,CAAC,CAAC;gBAC9E,IAAI,CAAC,IAAI,CAAC,MAAM;oBAAE,MAAM;gBACxB,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACtD,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBACrG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC1B,MAAM,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACpC,IAAI,CAAC;oBAAE,cAAc,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC1D,MAAM;YACR,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,IAAI,OAAO,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,OAAO,IAAI,WAAW,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;oBAC3F,MAAM,CAAC,WAAW,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBAC3E,CAAC;qBAAM,IAAI,OAAO,EAAE,CAAC;oBACnB,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC;gBACpB,CAAC;;oBAAM,OAAO;gBACd,MAAM;YACR,CAAC;YACD,KAAK,QAAQ;gBACX,IAAI,UAAU;oBAAE,aAAa,CAAC,IAAI,CAAC,CAAC;qBAC/B,IAAI,QAAQ;oBAAE,MAAM,CAAC,IAAI,CAAC,CAAC;;oBAC3B,OAAO;gBACZ,MAAM;YACR,KAAK,GAAG,CAAC;YACT,KAAK,GAAG;gBACN,MAAM,CAAC,GAAG,CAAC,CAAC;gBACZ,MAAM;YACR,KAAK,GAAG,CAAC;YACT,KAAK,GAAG;gBACN,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;gBAChB,MAAM;YACR,KAAK,GAAG;gBACN,MAAM,CAAC,GAAG,CAAC,CAAC;gBACZ,MAAM;YACR;gBACE,OAAO;QACX,CAAC;QACD,oFAAoF;QACpF,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,cAAc,CAAC,IAAI,CAAC,CAAC;QACrB,WAAW,CAAC,IAAI,CAAC,CAAC;QAClB,KAAK,CAAC,cAAc,EAAE,CAAC;IACzB,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IAChG,MAAM,QAAQ,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,MAAM,KAAK,OAAO,IAAI,CAAC,aAAa,IAAI,EAAE,KAAK,QAAQ,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;IACtH,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7E,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK;QACzB,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,YAAY,SAAS,cAAc,KAAK,CAAC,KAAK,CAAC,MAAM,YAAY;QACtF,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,eAAe,KAAK,CAAC,KAAK,CAAC,MAAM,YAAY,CAAC;IAC1E,MAAM,MAAM,GAAG,CAAC,WAAW,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAEtE,MAAM,MAAM,GAAG,CAAC,EAAW,EAAE,OAAO,GAAG,IAAI,EAAuB,EAAE,CAAC,CAAC;QACpE,OAAO,EAAE,UAAU;QACnB,YAAY,EAAE,GAAG;QACjB,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QACvC,UAAU,EAAE,aAAa;QACzB,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK;QACtC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE;QACzD,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;QAC1B,UAAU,EAAE,QAAQ;QACpB,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;KAC3B,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,iCAAM,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAI,CAAC;IACxG,MAAM,IAAI,GAAG,CAAC,CAAgC,EAAE,QAAgB,EAAE,EAAE,CAAC,CACnE,iCAAM,KAAK,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,YAAG,CAAC,EAAE,KAAK,IAAI,QAAQ,GAAQ,CACrH,CAAC;IAEF,OAAO,CACL,iCAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,aACpF,QAAQ,IAAI,CACX,iCACE,IAAI,EAAC,SAAS,gBACH,cAAc,EACzB,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,aAE7G,mCAAQ,IAAI,EAAC,QAAQ,kBAAe,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,gCAEjI,EACT,mCACE,IAAI,EAAC,QAAQ,kBACC,IAAI,CAAC,KAAK,KAAK,QAAQ,EACrC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,EACtC,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAC9C,KAAK,EAAC,qDAAqD,4CAGpD,EACT,mCACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC,kBACjB,IAAI,CAAC,KAAK,KAAK,CAAC,EAC9B,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAC9D,KAAK,EAAC,4DAA4D,YAEjE,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,GACjC,EACR,SAAS,EACR,CAAC,cAAc,EAAE,UAAU,CAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACrD,oCAEE,IAAI,EAAC,QAAQ,kBACC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAC9B,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAC/B,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,aAElF,gCAAK,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,uBAAc,KAAK,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,YAChH,iCAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,EAAC,cAAc,EAAC,WAAW,EAAE,GAAG,EAAE,eAAe,EAAE,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,GAAI,GACnI,EACL,UAAU,CAAC,IAAI,CAAC,KATZ,IAAI,CAUF,CACV,CAAC,EACD,UAAU,IAAI,CACb,mCAAQ,IAAI,EAAC,QAAQ,kBAAe,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,wBAE3H,CACV,EACA,SAAS,EACV,kCAAM,IAAI,EAAC,OAAO,gBAAY,MAAM,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE,aAC5E,mCAAQ,IAAI,EAAC,QAAQ,gBAAY,UAAU,EAAC,KAAK,EAAC,mBAAc,EAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,uBAErI,EACT,mCAAQ,IAAI,EAAC,QAAQ,gBAAY,SAAS,EAAC,KAAK,EAAC,aAAa,EAAC,QAAQ,EAAE,CAAC,IAAI,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,kBAE3I,EACT,mCAAQ,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAC,+BAA+B,EAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,oBAE5H,IACJ,EACP,iCAAM,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAG,OAAO,GAAQ,IACtF,CACP,EAED,iCACE,IAAI,EAAC,OAAO,gBACD,sKAAsK,EACjL,QAAQ,EAAE,CAAC,EACX,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EAChC,KAAK,EAAE;oBACL,QAAQ,EAAE,UAAU;oBACpB,QAAQ,EAAE,CAAC;oBACX,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM;oBACzD,aAAa,EAAE,CAAC;oBAChB,YAAY,EAAE,CAAC;iBAChB,aAED,gCACE,GAAG,EAAE,QAAQ,EACb,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,OAAO,EACpB,eAAe,EAAE,OAAO,EACxB,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,YAE5G,iCACE,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EACrB,OAAO,EAAE,OAAO,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,EAC/C,IAAI,EAAC,KAAK,gBACE,GAAG,OAAO,sBAAsB,EAC5C,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAC7C,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gCACjB,IAAI,aAAa,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,aAAa;oCAAE,OAAO;gCAC1E,IAAI,UAAU;oCAAE,aAAa,CAAC,IAAI,CAAC,CAAC;;oCAC/B,MAAM,CAAC,IAAI,CAAC,CAAC;4BACpB,CAAC,aAEA,8BAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAC3B,iCAEE,EAAE,EAAE,CAAC,EACL,EAAE,EAAE,MAAM,CAAC,KAAK,EAChB,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EACtB,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EACrB,WAAW,EAAE,CAAC,EACd,eAAe,EAAC,KAAK,EACrB,aAAa,EAAC,MAAM,IARf,IAAI,CAST,CACH,CAAC,EAED,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACtB,iCAEE,CAAC,EAAE,CAAC,CAAC,CAAC,EACN,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,EACpB,UAAU,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EACrD,QAAQ,EAAE,EAAE,EACZ,UAAU,EAAE,SAAS,EACrB,IAAI,EAAE,MAAM,CAAC,KAAK,EAClB,aAAa,EAAC,MAAM,YAEnB,CAAC,CAAC,KAAK,IATH,CAAC,CAAC,KAAK,CAUP,CACR,CAAC,EAED,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oCAChB,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oCACvC,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oCACrC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;wCAAE,OAAO,IAAI,CAAC;oCAC1B,OAAO,CACL,iCAEE,EAAE,EAAE,CAAC,CAAC,CAAC,EACP,EAAE,EAAE,CAAC,CAAC,CAAC,EACP,EAAE,EAAE,CAAC,CAAC,CAAC,EACP,EAAE,EAAE,CAAC,CAAC,CAAC,EACP,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,EAC9C,WAAW,EAAE,GAAG,EAChB,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAC9B,aAAa,EAAC,MAAM,IARf,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,EAAE,CAS1B,CACH,CAAC;gCACJ,CAAC,CAAC,EAED,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oCACxB,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oCACvC,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oCACrC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;wCAAE,OAAO,IAAI,CAAC;oCAC1B,MAAM,GAAG,GAAG,IAAA,+BAAc,EAAC,CAAC,CAAC,CAAC;oCAC9B,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,cAAc,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC;oCAC1G,MAAM,CAAC,GAAG,IAAA,+BAAc,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;oCAC/C,OAAO,CACL,0CACE,iCACE,CAAC,EAAE,CAAC,EACJ,IAAI,EAAC,MAAM,EACX,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,EAClE,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAC3D,eAAe,EAAE,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAC1D,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAC1E,aAAa,EAAC,MAAM,GACpB,EAEF,oDAEE,CAAC,EAAE,CAAC,EACJ,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,aAAa,EACpB,WAAW,EAAE,EAAE,EACf,aAAa,EAAC,QAAQ,EACtB,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAC5B,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,cAAc,CAAC,GAAG,CAAC,EAC/D,YAAY,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,EACxC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oDACjB,KAAK,CAAC,eAAe,EAAE,CAAC;oDACxB,IAAI,aAAa,CAAC,OAAO;wDAAE,OAAO;oDAClC,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gDAC7D,CAAC,YAED,4CAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,IAAI,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,GAAS,GAC1I,KA5BD,GAAG,GAAG,IAAI,CAAC,EAAE,CA6BjB,CACL,CAAC;gCACJ,CAAC,CAAC,EAED,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;oCAC9B,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAE,CAAC;oCAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oCACzC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oCACtE,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;oCACpF,MAAM,UAAU,GAAG,OAAO,CAAC,EAAE,KAAK,QAAQ,CAAC;oCAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;oCACxF,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;oCACxC,OAAO,CACL,qDAGE,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EACrC,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAC5B,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EACvB,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAC9B,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,EAClE,YAAY,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,aAEpC,4CAAQ,GAAG,OAAO,CAAC,KAAK,MAAM,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,GAAS,EAEnG,mCAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,EAAC,aAAa,GAAG,EACnC,OAAO,IAAI,mCAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,GAAI,EACxD,QAAQ,CAAC,CAAC,CAAC,CACV,mCAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,EAAC,MAAM,EAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,GAAI,CAChE,CAAC,CAAC,CAAC,CACF,mCAAQ,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,GAAI,CAC/C,EACA,UAAU,IAAI,mCAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,EAAC,MAAM,EAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,GAAI,EACnF,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI;4CACvB,gFAAgF;4CAChF,iCACE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACnB,CAAC,EAAE,CAAC,CAAC,EACL,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EACrC,QAAQ,EAAE,EAAE,EACZ,UAAU,EAAE,SAAS,EACrB,IAAI,EAAE,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EACxD,aAAa,EAAC,MAAM,YAEnB,OAAO,CAAC,KAAK,GACT,CACR,KAhCI,OAAO,CAAC,EAAE,CAiCb,CACL,CAAC;gCACJ,CAAC,CAAC,IACE,GACF,EAGN,qDAAiB,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,YACrF,8BAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAC3B,gCAEE,KAAK,EAAE;gCACL,QAAQ,EAAE,UAAU;gCACpB,IAAI,EAAE,CAAC;gCACP,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;gCAC5B,QAAQ,EAAE,EAAE;gCACZ,UAAU,EAAE,MAAM;gCAClB,UAAU,EAAE,SAAS;gCACrB,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC;gCACnB,UAAU,EAAE,MAAM,CAAC,KAAK;gCACxB,OAAO,EAAE,SAAS;gCAClB,YAAY,EAAE,CAAC;gCACf,UAAU,EAAE,QAAQ;6BACrB,YAEA,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,IAfpB,IAAI,CAgBL,CACP,CAAC,GACE,IACF,EAIL,IAAI,IAAI,CACP,6CACY,QAAQ,EAClB,KAAK,EAAE;oBACL,SAAS,EAAE,EAAE;oBACb,OAAO,EAAE,MAAM;oBACf,QAAQ,EAAE,MAAM;oBAChB,UAAU,EAAE,UAAU;oBACtB,SAAS,EAAE,EAAE;oBACb,MAAM,EAAE,CAAC;oBACT,OAAO,EAAE,aAAa;oBACtB,SAAS,EAAE,aAAa,MAAM,CAAC,MAAM,EAAE;oBACvC,UAAU,EAAE,aACV,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,aACrE,EAAE;oBACF,WAAW,EAAE,EAAE;oBACf,QAAQ,EAAE,EAAE;oBACZ,KAAK,EAAE,MAAM,CAAC,KAAK;iBACpB,YAEA,WAAW,CAAC,CAAC,CAAC,CACb,6DACG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,EACnD,iCAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,YAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,WAAW,CAAC,IAAI,GAAQ,EAClI,iCAAM,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAG,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,GAAQ,EAC1E,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,EAC/C,iCAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,YAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,KAAK,IAAI,WAAW,CAAC,EAAE,GAAQ,EAC9H,iCAAM,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,YACxH,WAAW,CAAC,KAAK,IAAI,2CAA2C,GAC5D,EACN,UAAU,IAAI,CAAC,WAAW,IAAI,CAC7B,iCAAM,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,8EAAiE,CACpG,IACA,CACJ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CACX,6DACG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,EACvB,MAAM,CAAC,IAAI,IAAI,iCAAM,KAAK,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,YAAG,MAAM,CAAC,IAAI,GAAQ,EAC5E,iCAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,YAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,GAAQ,EACzH,MAAM,CAAC,OAAO,IAAI,2CAAO,MAAM,CAAC,OAAO,GAAQ,EAC/C,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,sFAAmD,IACjG,CACJ,CAAC,CAAC,CAAC,CACF,+NAGO,CACR,GACG,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
export { MedicineWheelGraph } from './MedicineWheelGraph.js';
|
|
11
11
|
export { LineageWeb, DEFAULT_LINEAGE_WEB_COLORS } from './LineageWeb.js';
|
|
12
12
|
export type { LineageWebProps, LineageWebColors } from './LineageWeb.js';
|
|
13
|
-
export { DEFAULT_LINEAGE_VIEW, DEFAULT_LINEAGE_WEB_LAYOUT, LINEAGE_BANDS, layoutLineageWeb, lineageArcPath, lineageNeighbourhood, threadChains, visibleLineage, } from './lineage-web.js';
|
|
13
|
+
export { DEFAULT_LINEAGE_VIEW, DEFAULT_LINEAGE_WEB_LAYOUT, LINEAGE_BANDS, fitZoom, layoutLineageWeb, lineageArcPath, lineageEdgeKey, lineageNeighbourhood, lineageWebWidth, relationsAround, stepAlongSpine, threadChains, visibleLineage, zoomScrollLeft, } from './lineage-web.js';
|
|
14
14
|
export type { LineageBand, LineageEdgeKind, LineageWebEdge, LineageWebEpisode, LineageWebLayout, LineageWebLayoutConfig, LineageWebView, VisibleLineage, VisibleLineageOptions, } from './lineage-web.js';
|
|
15
15
|
export type { MWGraphNode, MWGraphNodePosition, MWGraphNodePositions, MWGraphLink, MWGraphData, LinkStyle, LayoutMode, WheelLayoutConfig, MedicineWheelGraphProps, QuadrantGeometry, } from './types.js';
|
|
16
16
|
export { applyLineageLayout, DEFAULT_LINEAGE_LAYOUT, } from './lineage-layout.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AACzE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAGzE,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EACpB,YAAY,EACZ,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,WAAW,EACX,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,cAAc,EACd,cAAc,EACd,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,WAAW,EACX,mBAAmB,EACnB,oBAAoB,EACpB,WAAW,EACX,WAAW,EACX,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAEpF,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,GACf,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AACzE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAGzE,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,aAAa,EACb,OAAO,EACP,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,cAAc,EACd,YAAY,EACZ,cAAc,EACd,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,WAAW,EACX,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,cAAc,EACd,cAAc,EACd,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,WAAW,EACX,mBAAmB,EACnB,oBAAoB,EACpB,WAAW,EACX,WAAW,EACX,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAEpF,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,GACf,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,eAAe,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* @packageDocumentation
|
|
10
10
|
*/
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.toMermaidDiagram = exports.toCeremonyTimelineData = exports.toDirectionWheelData = exports.toReciprocityFlowDiagram = exports.toKinshipGraphLayout = exports.buildGraphData = exports.relationsToGraphLinks = exports.edgesToGraphLinks = exports.nodesToGraphNodes = exports.constrainToWheel = exports.directionForPoint = exports.directionLabelPosition = exports.curvedLinkPath = exports.quadrantArcPath = exports.getQuadrantGeometries = exports.DEFAULT_LAYOUT = exports.applyWheelLayout = exports.DEFAULT_LINEAGE_LAYOUT = exports.applyLineageLayout = exports.visibleLineage = exports.threadChains = exports.lineageNeighbourhood = exports.lineageArcPath = exports.layoutLineageWeb = exports.LINEAGE_BANDS = exports.DEFAULT_LINEAGE_WEB_LAYOUT = exports.DEFAULT_LINEAGE_VIEW = exports.DEFAULT_LINEAGE_WEB_COLORS = exports.LineageWeb = exports.MedicineWheelGraph = void 0;
|
|
12
|
+
exports.toMermaidDiagram = exports.toCeremonyTimelineData = exports.toDirectionWheelData = exports.toReciprocityFlowDiagram = exports.toKinshipGraphLayout = exports.buildGraphData = exports.relationsToGraphLinks = exports.edgesToGraphLinks = exports.nodesToGraphNodes = exports.constrainToWheel = exports.directionForPoint = exports.directionLabelPosition = exports.curvedLinkPath = exports.quadrantArcPath = exports.getQuadrantGeometries = exports.DEFAULT_LAYOUT = exports.applyWheelLayout = exports.DEFAULT_LINEAGE_LAYOUT = exports.applyLineageLayout = exports.zoomScrollLeft = exports.visibleLineage = exports.threadChains = exports.stepAlongSpine = exports.relationsAround = exports.lineageWebWidth = exports.lineageNeighbourhood = exports.lineageEdgeKey = exports.lineageArcPath = exports.layoutLineageWeb = exports.fitZoom = exports.LINEAGE_BANDS = exports.DEFAULT_LINEAGE_WEB_LAYOUT = exports.DEFAULT_LINEAGE_VIEW = exports.DEFAULT_LINEAGE_WEB_COLORS = exports.LineageWeb = exports.MedicineWheelGraph = void 0;
|
|
13
13
|
// ── Component ───────────────────────────────────────────────────────────────
|
|
14
14
|
var MedicineWheelGraph_js_1 = require("./MedicineWheelGraph.js");
|
|
15
15
|
Object.defineProperty(exports, "MedicineWheelGraph", { enumerable: true, get: function () { return MedicineWheelGraph_js_1.MedicineWheelGraph; } });
|
|
@@ -21,11 +21,17 @@ var lineage_web_js_1 = require("./lineage-web.js");
|
|
|
21
21
|
Object.defineProperty(exports, "DEFAULT_LINEAGE_VIEW", { enumerable: true, get: function () { return lineage_web_js_1.DEFAULT_LINEAGE_VIEW; } });
|
|
22
22
|
Object.defineProperty(exports, "DEFAULT_LINEAGE_WEB_LAYOUT", { enumerable: true, get: function () { return lineage_web_js_1.DEFAULT_LINEAGE_WEB_LAYOUT; } });
|
|
23
23
|
Object.defineProperty(exports, "LINEAGE_BANDS", { enumerable: true, get: function () { return lineage_web_js_1.LINEAGE_BANDS; } });
|
|
24
|
+
Object.defineProperty(exports, "fitZoom", { enumerable: true, get: function () { return lineage_web_js_1.fitZoom; } });
|
|
24
25
|
Object.defineProperty(exports, "layoutLineageWeb", { enumerable: true, get: function () { return lineage_web_js_1.layoutLineageWeb; } });
|
|
25
26
|
Object.defineProperty(exports, "lineageArcPath", { enumerable: true, get: function () { return lineage_web_js_1.lineageArcPath; } });
|
|
27
|
+
Object.defineProperty(exports, "lineageEdgeKey", { enumerable: true, get: function () { return lineage_web_js_1.lineageEdgeKey; } });
|
|
26
28
|
Object.defineProperty(exports, "lineageNeighbourhood", { enumerable: true, get: function () { return lineage_web_js_1.lineageNeighbourhood; } });
|
|
29
|
+
Object.defineProperty(exports, "lineageWebWidth", { enumerable: true, get: function () { return lineage_web_js_1.lineageWebWidth; } });
|
|
30
|
+
Object.defineProperty(exports, "relationsAround", { enumerable: true, get: function () { return lineage_web_js_1.relationsAround; } });
|
|
31
|
+
Object.defineProperty(exports, "stepAlongSpine", { enumerable: true, get: function () { return lineage_web_js_1.stepAlongSpine; } });
|
|
27
32
|
Object.defineProperty(exports, "threadChains", { enumerable: true, get: function () { return lineage_web_js_1.threadChains; } });
|
|
28
33
|
Object.defineProperty(exports, "visibleLineage", { enumerable: true, get: function () { return lineage_web_js_1.visibleLineage; } });
|
|
34
|
+
Object.defineProperty(exports, "zoomScrollLeft", { enumerable: true, get: function () { return lineage_web_js_1.zoomScrollLeft; } });
|
|
29
35
|
// ── Layout Engine ───────────────────────────────────────────────────────────
|
|
30
36
|
var lineage_layout_js_1 = require("./lineage-layout.js");
|
|
31
37
|
Object.defineProperty(exports, "applyLineageLayout", { enumerable: true, get: function () { return lineage_layout_js_1.applyLineageLayout; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH,+EAA+E;AAC/E,iEAA6D;AAApD,2HAAA,kBAAkB,OAAA;AAC3B,iDAAyE;AAAhE,2GAAA,UAAU,OAAA;AAAE,2HAAA,0BAA0B,OAAA;AAG/C,+EAA+E;AAC/E,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH,+EAA+E;AAC/E,iEAA6D;AAApD,2HAAA,kBAAkB,OAAA;AAC3B,iDAAyE;AAAhE,2GAAA,UAAU,OAAA;AAAE,2HAAA,0BAA0B,OAAA;AAG/C,+EAA+E;AAC/E,mDAe0B;AAdxB,sHAAA,oBAAoB,OAAA;AACpB,4HAAA,0BAA0B,OAAA;AAC1B,+GAAA,aAAa,OAAA;AACb,yGAAA,OAAO,OAAA;AACP,kHAAA,gBAAgB,OAAA;AAChB,gHAAA,cAAc,OAAA;AACd,gHAAA,cAAc,OAAA;AACd,sHAAA,oBAAoB,OAAA;AACpB,iHAAA,eAAe,OAAA;AACf,iHAAA,eAAe,OAAA;AACf,gHAAA,cAAc,OAAA;AACd,8GAAA,YAAY,OAAA;AACZ,gHAAA,cAAc,OAAA;AACd,gHAAA,cAAc,OAAA;AA4BhB,+EAA+E;AAC/E,yDAG6B;AAF3B,uHAAA,kBAAkB,OAAA;AAClB,2HAAA,sBAAsB,OAAA;AAIxB,yCASqB;AARnB,6GAAA,gBAAgB,OAAA;AAChB,2GAAA,cAAc,OAAA;AACd,kHAAA,qBAAqB,OAAA;AACrB,4GAAA,eAAe,OAAA;AACf,2GAAA,cAAc,OAAA;AACd,mHAAA,sBAAsB,OAAA;AACtB,8GAAA,iBAAiB,OAAA;AACjB,6GAAA,gBAAgB,OAAA;AAGlB,+EAA+E;AAC/E,iDAKyB;AAJvB,kHAAA,iBAAiB,OAAA;AACjB,kHAAA,iBAAiB,OAAA;AACjB,sHAAA,qBAAqB,OAAA;AACrB,+GAAA,cAAc,OAAA;AAahB,6CAMuB;AALrB,mHAAA,oBAAoB,OAAA;AACpB,uHAAA,wBAAwB,OAAA;AACxB,mHAAA,oBAAoB,OAAA;AACpB,qHAAA,sBAAsB,OAAA;AACtB,+GAAA,gBAAgB,OAAA"}
|
package/dist/lineage-web.d.ts
CHANGED
|
@@ -135,4 +135,19 @@ export declare function threadChains(episodes: readonly LineageWebEpisode[]): Ar
|
|
|
135
135
|
to: string;
|
|
136
136
|
thread: string;
|
|
137
137
|
}>;
|
|
138
|
+
/** The canvas width for `count` episodes at `zoom`, never narrower than `boxWidth`. */
|
|
139
|
+
export declare function lineageWebWidth(count: number, zoom: number, boxWidth: number, config?: Partial<LineageWebLayoutConfig>): number;
|
|
140
|
+
/** The zoom at which `count` episodes fill `boxWidth` exactly: the whole span in view. */
|
|
141
|
+
export declare function fitZoom(count: number, boxWidth: number, config?: Partial<LineageWebLayoutConfig>): number;
|
|
142
|
+
/**
|
|
143
|
+
* Where to scroll after the canvas changed width, so the point at `pointerX`
|
|
144
|
+
* (measured from the box's left edge) shows the same moment on the spine.
|
|
145
|
+
*/
|
|
146
|
+
export declare function zoomScrollLeft(scrollLeft: number, pointerX: number, oldWidth: number, newWidth: number, config?: Partial<LineageWebLayoutConfig>): number;
|
|
147
|
+
/** The next or previous episode along the spine; from nothing, the first or the last. */
|
|
148
|
+
export declare function stepAlongSpine(order: readonly string[], current: string | null, step: 1 | -1): string | null;
|
|
149
|
+
/** An episode's relations, ordered by where the episode at the other end sits on the spine. */
|
|
150
|
+
export declare function relationsAround(id: string, edges: readonly LineageWebEdge[], order: readonly string[]): LineageWebEdge[];
|
|
151
|
+
/** A key for an edge that survives a change of view: its id, or its two ends and kind. */
|
|
152
|
+
export declare function lineageEdgeKey(e: LineageWebEdge): string;
|
|
138
153
|
//# sourceMappingURL=lineage-web.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lineage-web.d.ts","sourceRoot":"","sources":["../src/lineage-web.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,6FAA6F;AAC7F,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,UAAU,CAAC;AAE1D,eAAO,MAAM,aAAa,6CAA8C,CAAC;AACzE,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzD,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sFAAsF;IACtF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,eAAe,CAAC;IACtB,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,sEAAsE;IACtE,KAAK,EAAE,KAAK,GAAG,QAAQ,CAAC;IACxB,uEAAuE;IACvE,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC;IACb,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IACxC,+BAA+B;IAC/B,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,oBAAoB,EAAE,cAKlC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,EACvB,KAAK,EAAE,SAAS,cAAc,EAAE,EAChC,KAAK,SAAI,GACR,GAAG,CAAC,MAAM,CAAC,CAsBb;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,cAAc,CAAC;IACrB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,oEAAoE;IACpE,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IACrC;;;OAGG;IACH,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,2FAA2F;IAC3F,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAC1B,4DAA4D;IAC5D,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACpB;AAED,qFAAqF;AACrF,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,SAAS,iBAAiB,EAAE,EACtC,KAAK,EAAE,SAAS,cAAc,EAAE,EAChC,EAAE,IAAI,EAAE,KAAY,EAAE,OAAc,EAAE,SAAiB,EAAE,EAAE,qBAAqB,GAC/E,cAAc,CA+BhB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IACjB,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,QAAQ,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,yFAAyF;IACzF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,0BAA0B,EAAE,sBAUxC,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjD,KAAK,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACnC,+CAA+C;IAC/C,MAAM,EAAE,KAAK,CAAC;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5C,MAAM,EAAE,sBAAsB,CAAC;CAChC;AAED,yDAAyD;AACzD,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,SAAS,iBAAiB,EAAE,EACtC,MAAM,GAAE,OAAO,CAAC,sBAAsB,CAAM,GAC3C,gBAAgB,CAkClB;AAWD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,CAAC,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAC3B,CAAC,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAC3B,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC,GAC5D,MAAM,CA6BR;AAED,8DAA8D;AAC9D,wBAAgB,YAAY,CAAC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,GAAG,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAUxH"}
|
|
1
|
+
{"version":3,"file":"lineage-web.d.ts","sourceRoot":"","sources":["../src/lineage-web.ts"],"names":[],"mappings":"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"}
|
package/dist/lineage-web.js
CHANGED
|
@@ -21,6 +21,12 @@ exports.visibleLineage = visibleLineage;
|
|
|
21
21
|
exports.layoutLineageWeb = layoutLineageWeb;
|
|
22
22
|
exports.lineageArcPath = lineageArcPath;
|
|
23
23
|
exports.threadChains = threadChains;
|
|
24
|
+
exports.lineageWebWidth = lineageWebWidth;
|
|
25
|
+
exports.fitZoom = fitZoom;
|
|
26
|
+
exports.zoomScrollLeft = zoomScrollLeft;
|
|
27
|
+
exports.stepAlongSpine = stepAlongSpine;
|
|
28
|
+
exports.relationsAround = relationsAround;
|
|
29
|
+
exports.lineageEdgeKey = lineageEdgeKey;
|
|
24
30
|
exports.LINEAGE_BANDS = ['east', 'south', 'west', 'north'];
|
|
25
31
|
exports.DEFAULT_LINEAGE_VIEW = {
|
|
26
32
|
scope: 'all',
|
|
@@ -191,4 +197,48 @@ function threadChains(episodes) {
|
|
|
191
197
|
}
|
|
192
198
|
return chains;
|
|
193
199
|
}
|
|
200
|
+
// ── Moving through the web by hand (#163) ───────────────────────────────────
|
|
201
|
+
/** The canvas width for `count` episodes at `zoom`, never narrower than `boxWidth`. */
|
|
202
|
+
function lineageWebWidth(count, zoom, boxWidth, config = {}) {
|
|
203
|
+
const cfg = { ...exports.DEFAULT_LINEAGE_WEB_LAYOUT, ...config };
|
|
204
|
+
const span = Math.max(0, count - 1) * cfg.minStep * zoom;
|
|
205
|
+
return Math.max(cfg.minWidth, boxWidth, cfg.marginL + cfg.marginR + span);
|
|
206
|
+
}
|
|
207
|
+
/** The zoom at which `count` episodes fill `boxWidth` exactly: the whole span in view. */
|
|
208
|
+
function fitZoom(count, boxWidth, config = {}) {
|
|
209
|
+
const cfg = { ...exports.DEFAULT_LINEAGE_WEB_LAYOUT, ...config };
|
|
210
|
+
const span = Math.max(1, count - 1) * cfg.minStep;
|
|
211
|
+
return Math.max(0.01, (boxWidth - cfg.marginL - cfg.marginR) / span);
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Where to scroll after the canvas changed width, so the point at `pointerX`
|
|
215
|
+
* (measured from the box's left edge) shows the same moment on the spine.
|
|
216
|
+
*/
|
|
217
|
+
function zoomScrollLeft(scrollLeft, pointerX, oldWidth, newWidth, config = {}) {
|
|
218
|
+
const cfg = { ...exports.DEFAULT_LINEAGE_WEB_LAYOUT, ...config };
|
|
219
|
+
const inner = (w) => Math.max(1, w - cfg.marginL - cfg.marginR);
|
|
220
|
+
const fraction = (scrollLeft + pointerX - cfg.marginL) / inner(oldWidth);
|
|
221
|
+
return Math.max(0, cfg.marginL + fraction * inner(newWidth) - pointerX);
|
|
222
|
+
}
|
|
223
|
+
/** The next or previous episode along the spine; from nothing, the first or the last. */
|
|
224
|
+
function stepAlongSpine(order, current, step) {
|
|
225
|
+
if (order.length === 0)
|
|
226
|
+
return null;
|
|
227
|
+
const at = current === null ? -1 : order.indexOf(current);
|
|
228
|
+
if (at === -1)
|
|
229
|
+
return step === 1 ? order[0] : order[order.length - 1];
|
|
230
|
+
return order[Math.min(order.length - 1, Math.max(0, at + step))];
|
|
231
|
+
}
|
|
232
|
+
/** An episode's relations, ordered by where the episode at the other end sits on the spine. */
|
|
233
|
+
function relationsAround(id, edges, order) {
|
|
234
|
+
const position = new Map(order.map((other, i) => [other, i]));
|
|
235
|
+
const other = (e) => (e.from === id ? e.to : e.from);
|
|
236
|
+
return edges
|
|
237
|
+
.filter((e) => (e.from === id || e.to === id) && e.from !== e.to)
|
|
238
|
+
.sort((a, b) => (position.get(other(a)) ?? 0) - (position.get(other(b)) ?? 0));
|
|
239
|
+
}
|
|
240
|
+
/** A key for an edge that survives a change of view: its id, or its two ends and kind. */
|
|
241
|
+
function lineageEdgeKey(e) {
|
|
242
|
+
return e.id ?? `${e.from}:${e.kind}:${e.to}`;
|
|
243
|
+
}
|
|
194
244
|
//# sourceMappingURL=lineage-web.js.map
|
package/dist/lineage-web.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lineage-web.js","sourceRoot":"","sources":["../src/lineage-web.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lineage-web.js","sourceRoot":"","sources":["../src/lineage-web.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@medicine-wheel/graph-viz",
|
|
3
|
-
"version": "0.17.
|
|
3
|
+
"version": "0.17.11",
|
|
4
4
|
"description": "Medicine Wheel graph visualization — circular layout with four-direction node positioning, ceremony-aware edges, and OCAP® indicators",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"directory": "src/graph-viz"
|
|
48
48
|
},
|
|
49
49
|
"dependencies": {
|
|
50
|
-
"@medicine-wheel/ontology-core": "^0.17.
|
|
50
|
+
"@medicine-wheel/ontology-core": "^0.17.11"
|
|
51
51
|
},
|
|
52
52
|
"peerDependencies": {
|
|
53
53
|
"react": ">=18.0.0",
|