@manya-os/weave 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -23
- package/LICENSE +21 -21
- package/README.md +252 -252
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +49 -49
package/CHANGELOG.md
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
All notable changes to `@manya/weave` are documented here.
|
|
4
|
-
Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Adheres to [SemVer](https://semver.org/).
|
|
5
|
-
|
|
6
|
-
## [1.0.0] — 2024-01-15
|
|
7
|
-
### Added
|
|
8
|
-
- Initial release.
|
|
9
|
-
- `Graph` class with directed/undirected modes, add/remove nodes & edges, O(1) adjacency queries, in/out degree, neighbors, predecessors, successors.
|
|
10
|
-
- Cycle detection (DFS-based for directed, union-find for undirected).
|
|
11
|
-
- Topological sort (Kahn's algorithm, deterministic).
|
|
12
|
-
- Connected components and BFS depths.
|
|
13
|
-
- Layout algorithms: `forceDirected` (Fruchterman-Reingold, seeded), `hierarchical` (longest-path layering), `radial` (concentric rings), `grid` (regular grid).
|
|
14
|
-
- Seeded PRNG (`mulberry32`) for deterministic layouts.
|
|
15
|
-
- Filtering: `filterByLabel`, `filterByType`, `filterByEdgeType`, `filterByComponent`, `filterByDepth`, `filterByProperty`, `filterNodes`, `filterEdges`.
|
|
16
|
-
- Search: `search` (exact text), `fuzzySearch` (Levenshtein token similarity), `bfsPath` (shortest unweighted), `dijkstra` (shortest weighted). Plus `levenshtein` and `similarity` primitives.
|
|
17
|
-
- Exporters: `toJSON`, `toDot` (Graphviz), `toMermaid` (Mermaid flowchart), `toSVG` (basic positional).
|
|
18
|
-
- `renderToSVG` with configurable `RenderConfig` (colors, sizes, labels, arrow markers).
|
|
19
|
-
- Topology tracking: `takeSnapshot`, `diffSnapshots`, `TopologyTracker` with rolling history.
|
|
20
|
-
- Interactive primitives: `SelectionModel`, `Viewport`, `applyViewport`, `inverseViewport`, `panTo`, `zoomAt`.
|
|
21
|
-
- Typed error hierarchy: `WeaveError`, `GraphError`, `LayoutError`, `ExportError`.
|
|
22
|
-
- Structured logging with secret scrubbing (`ConsoleLogger`, `SilentLogger`).
|
|
23
|
-
- Comprehensive unit test suite (105 tests).
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to `@manya-os/weave` are documented here.
|
|
4
|
+
Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Adheres to [SemVer](https://semver.org/).
|
|
5
|
+
|
|
6
|
+
## [1.0.0] — 2024-01-15
|
|
7
|
+
### Added
|
|
8
|
+
- Initial release.
|
|
9
|
+
- `Graph` class with directed/undirected modes, add/remove nodes & edges, O(1) adjacency queries, in/out degree, neighbors, predecessors, successors.
|
|
10
|
+
- Cycle detection (DFS-based for directed, union-find for undirected).
|
|
11
|
+
- Topological sort (Kahn's algorithm, deterministic).
|
|
12
|
+
- Connected components and BFS depths.
|
|
13
|
+
- Layout algorithms: `forceDirected` (Fruchterman-Reingold, seeded), `hierarchical` (longest-path layering), `radial` (concentric rings), `grid` (regular grid).
|
|
14
|
+
- Seeded PRNG (`mulberry32`) for deterministic layouts.
|
|
15
|
+
- Filtering: `filterByLabel`, `filterByType`, `filterByEdgeType`, `filterByComponent`, `filterByDepth`, `filterByProperty`, `filterNodes`, `filterEdges`.
|
|
16
|
+
- Search: `search` (exact text), `fuzzySearch` (Levenshtein token similarity), `bfsPath` (shortest unweighted), `dijkstra` (shortest weighted). Plus `levenshtein` and `similarity` primitives.
|
|
17
|
+
- Exporters: `toJSON`, `toDot` (Graphviz), `toMermaid` (Mermaid flowchart), `toSVG` (basic positional).
|
|
18
|
+
- `renderToSVG` with configurable `RenderConfig` (colors, sizes, labels, arrow markers).
|
|
19
|
+
- Topology tracking: `takeSnapshot`, `diffSnapshots`, `TopologyTracker` with rolling history.
|
|
20
|
+
- Interactive primitives: `SelectionModel`, `Viewport`, `applyViewport`, `inverseViewport`, `panTo`, `zoomAt`.
|
|
21
|
+
- Typed error hierarchy: `WeaveError`, `GraphError`, `LayoutError`, `ExportError`.
|
|
22
|
+
- Structured logging with secret scrubbing (`ConsoleLogger`, `SilentLogger`).
|
|
23
|
+
- Comprehensive unit test suite (105 tests).
|
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
Apache License
|
|
3
|
-
Version 2.0, January 2004
|
|
4
|
-
http://www.apache.org/licenses/
|
|
5
|
-
|
|
6
|
-
Copyright 2024 Manya Hael Foundation. All rights reserved.
|
|
7
|
-
|
|
8
|
-
Conceived, directed, and owned by Uviwe Menyiwe (Azura Daemon),
|
|
9
|
-
founder of the Manya Hael Foundation.
|
|
10
|
-
|
|
11
|
-
Licensed under the Apache License, Version 2.0 (the "License");
|
|
12
|
-
you may not use this file except in compliance with the License.
|
|
13
|
-
You may obtain a copy of the License at
|
|
14
|
-
|
|
15
|
-
http://www.apache.org/licenses/LICENSE-2.0
|
|
16
|
-
|
|
17
|
-
Unless required by applicable law or agreed to in writing, software
|
|
18
|
-
distributed under the License is distributed on an "AS IS" BASIS,
|
|
19
|
-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
20
|
-
See the License for the specific language governing permissions and
|
|
21
|
-
limitations under the License.
|
|
1
|
+
|
|
2
|
+
Apache License
|
|
3
|
+
Version 2.0, January 2004
|
|
4
|
+
http://www.apache.org/licenses/
|
|
5
|
+
|
|
6
|
+
Copyright 2024 Manya Hael Foundation. All rights reserved.
|
|
7
|
+
|
|
8
|
+
Conceived, directed, and owned by Uviwe Menyiwe (Azura Daemon),
|
|
9
|
+
founder of the Manya Hael Foundation.
|
|
10
|
+
|
|
11
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
12
|
+
you may not use this file except in compliance with the License.
|
|
13
|
+
You may obtain a copy of the License at
|
|
14
|
+
|
|
15
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
16
|
+
|
|
17
|
+
Unless required by applicable law or agreed to in writing, software
|
|
18
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
19
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
20
|
+
See the License for the specific language governing permissions and
|
|
21
|
+
limitations under the License.
|
package/README.md
CHANGED
|
@@ -1,252 +1,252 @@
|
|
|
1
|
-
# @manya/weave
|
|
2
|
-
|
|
3
|
-
> Interactive visualization substrate for the MANYA Intelligence OS — dependency graphs, knowledge graphs, event flows, architecture diagrams, live system topology, and pan/zoom exploration with multi-format export.
|
|
4
|
-
|
|
5
|
-
`@manya/weave` is the visualization engine of the **MANYA Intelligence OS** — a sovereign, modular, local-first intelligence operating system conceived, directed, and owned by **Uviwe Menyiwe (Azura Daemon)**, founder of the **Manya Hael Foundation**.
|
|
6
|
-
|
|
7
|
-
The package provides an in-memory directed/undirected graph model with cycle detection and topological sort, four deterministic layout algorithms (force-directed, hierarchical, radial, grid), graph filtering by label/type/component/depth, text and fuzzy search with BFS and Dijkstra path finding, export to JSON / Graphviz DOT / Mermaid / SVG, a configurable SVG renderer with arrow markers and labels, a live topology tracker with structural diffing, and interactive primitives (selection model, pan/zoom viewport).
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## Vision
|
|
12
|
-
|
|
13
|
-
The Manya Hael Foundation stewards the MANYA Intelligence OS as a long-horizon, mission-driven project. `@manya/weave` extends that sovereignty into the visualization domain: **your graphs, your layouts, your topology history — yours alone.**
|
|
14
|
-
|
|
15
|
-
- **Sovereign.** No network calls, no DOM dependency, no external rendering service. Pure TypeScript that runs in Node or in the browser.
|
|
16
|
-
- **Deterministic.** Every layout algorithm accepts a numeric seed and produces byte-identical output for byte-identical input.
|
|
17
|
-
- **Honest.** No magic "auto-layout oracle" — algorithms are simple, well-known, and explicit. Force-directed uses Fruchterman-Reingold with a seeded PRNG.
|
|
18
|
-
- **Exportable.** One graph, four formats (JSON, DOT, Mermaid, SVG) plus a full-featured SVG renderer.
|
|
19
|
-
- **Composable.** Filter, search, layout, render — each step is a pure function on an immutable graph snapshot.
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
## Features
|
|
24
|
-
|
|
25
|
-
| Area | What you get |
|
|
26
|
-
| --- | --- |
|
|
27
|
-
| **Graph model** | `Graph` class with directed/undirected modes, add/remove nodes & edges, O(1) adjacency queries, in/out degree, neighbors, predecessors, successors. |
|
|
28
|
-
| **Algorithms** | Cycle detection (DFS for directed, union-find for undirected), topological sort (Kahn's, deterministic), connected components, BFS depths. |
|
|
29
|
-
| **Layouts** | `forceDirected` (Fruchterman-Reingold, seeded), `hierarchical` (longest-path layering), `radial` (concentric rings), `grid` (regular grid). All return `Map<nodeId, {x, y}>`. |
|
|
30
|
-
| **Filtering** | By label predicate, by node type, by edge type, by connected component, by BFS depth-from-root, by property predicate, plus generic `filterNodes`/`filterEdges`. |
|
|
31
|
-
| **Search** | Exact text search across labels/types/properties, fuzzy search with Levenshtein-based token scoring, BFS shortest path, Dijkstra weighted shortest path. |
|
|
32
|
-
| **Export** | `toJSON`, `toDot` (Graphviz), `toMermaid` (Mermaid flowchart), `toSVG` (basic positional). |
|
|
33
|
-
| **Render** | `renderToSVG` with `RenderConfig` (width, height, nodeRadius, fontSize, colors, showLabels), arrow markers for directed graphs, edge label rendering. |
|
|
34
|
-
| **Topology** | `TopologySnapshot`, `diffSnapshots` for added/removed nodes & edges, `TopologyTracker` with rolling history and `diff()`. |
|
|
35
|
-
| **Interactive** | `SelectionModel` (toggle/select/clear nodes & edges), `Viewport` (centerX/centerY/zoom), `applyViewport`/`inverseViewport`/`panTo`/`zoomAt`. |
|
|
36
|
-
| **Logging** | `Logger` interface, `ConsoleLogger` with secret-scrubbing, `SilentLogger`. |
|
|
37
|
-
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
## Install
|
|
41
|
-
|
|
42
|
-
```bash
|
|
43
|
-
npm install @manya/weave
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
Requires Node.js 18+. No external runtime dependencies — only Node built-ins.
|
|
47
|
-
|
|
48
|
-
---
|
|
49
|
-
|
|
50
|
-
## Quick start
|
|
51
|
-
|
|
52
|
-
### 1. Build and lay out a dependency graph
|
|
53
|
-
|
|
54
|
-
```ts
|
|
55
|
-
import { createGraph, hierarchical, renderToSVG } from '@manya/weave';
|
|
56
|
-
|
|
57
|
-
const graph = createGraph(
|
|
58
|
-
[
|
|
59
|
-
{ id: 'web', label: 'Web Client', type: 'service' },
|
|
60
|
-
{ id: 'api', label: 'API Gateway', type: 'service' },
|
|
61
|
-
{ id: 'auth', label: 'Auth Service', type: 'service' },
|
|
62
|
-
{ id: 'db', label: 'Database', type: 'db' },
|
|
63
|
-
],
|
|
64
|
-
[
|
|
65
|
-
{ id: 'e1', source: 'web', target: 'api', label: 'calls' },
|
|
66
|
-
{ id: 'e2', source: 'api', target: 'auth', label: 'verifies' },
|
|
67
|
-
{ id: 'e3', source: 'api', target: 'db', label: 'queries' },
|
|
68
|
-
],
|
|
69
|
-
true, // directed
|
|
70
|
-
);
|
|
71
|
-
|
|
72
|
-
const layout = hierarchical(graph, { width: 800, height: 600 });
|
|
73
|
-
const svg = renderToSVG(graph, layout, { nodeColor: '#5b8def' });
|
|
74
|
-
console.log(svg); // full <svg>...</svg> document
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
### 2. Detect cycles and topologically sort
|
|
78
|
-
|
|
79
|
-
```ts
|
|
80
|
-
import { createGraph } from '@manya/weave';
|
|
81
|
-
|
|
82
|
-
const dag = createGraph(
|
|
83
|
-
[{ id: 'a', label: 'A' }, { id: 'b', label: 'B' }, { id: 'c', label: 'C' }],
|
|
84
|
-
[
|
|
85
|
-
{ id: 'e1', source: 'a', target: 'b' },
|
|
86
|
-
{ id: 'e2', source: 'b', target: 'c' },
|
|
87
|
-
],
|
|
88
|
-
true,
|
|
89
|
-
);
|
|
90
|
-
|
|
91
|
-
console.log(dag.hasCycle()); // false
|
|
92
|
-
console.log(dag.topologicalSort()); // ['a', 'b', 'c']
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
### 3. Filter, search, and find the shortest path
|
|
96
|
-
|
|
97
|
-
```ts
|
|
98
|
-
import { createGraph, filterByType, search, bfsPath, dijkstra } from '@manya/weave';
|
|
99
|
-
|
|
100
|
-
const graph = createGraph(
|
|
101
|
-
[
|
|
102
|
-
{ id: 'auth', label: 'Auth', type: 'service' },
|
|
103
|
-
{ id: 'billing', label: 'Billing', type: 'service' },
|
|
104
|
-
{ id: 'db', label: 'DB', type: 'db' },
|
|
105
|
-
],
|
|
106
|
-
[
|
|
107
|
-
{ id: 'e1', source: 'auth', target: 'db', weight: 1 },
|
|
108
|
-
{ id: 'e2', source: 'billing', target: 'db', weight: 5 },
|
|
109
|
-
],
|
|
110
|
-
false,
|
|
111
|
-
);
|
|
112
|
-
|
|
113
|
-
const services = filterByType(graph, 'service'); // 2 nodes, 0 edges (db dropped)
|
|
114
|
-
const hits = search(graph, 'DB'); // [{ nodeId: 'db', score: 1, matchedField: 'label' }]
|
|
115
|
-
const path = bfsPath(graph, 'auth', 'db'); // ['auth', 'db']
|
|
116
|
-
const shortest = dijkstra(graph, 'billing', 'db'); // { path: ['billing', 'db'], distance: 5 }
|
|
117
|
-
```
|
|
118
|
-
|
|
119
|
-
### 4. Track live topology over time
|
|
120
|
-
|
|
121
|
-
```ts
|
|
122
|
-
import { createGraph, TopologyTracker } from '@manya/weave';
|
|
123
|
-
|
|
124
|
-
const tracker = new TopologyTracker(10);
|
|
125
|
-
const v1 = createGraph(
|
|
126
|
-
[{ id: 'api', label: 'API' }, { id: 'db', label: 'DB' }],
|
|
127
|
-
[{ id: 'e1', source: 'api', target: 'db' }],
|
|
128
|
-
);
|
|
129
|
-
tracker.snapshot(v1, '2024-01-01T00:00:00Z');
|
|
130
|
-
|
|
131
|
-
const v2 = v1.clone();
|
|
132
|
-
v2.addNode({ id: 'cache', label: 'Cache' });
|
|
133
|
-
v2.addEdge({ id: 'e2', source: 'api', target: 'cache' });
|
|
134
|
-
tracker.snapshot(v2, '2024-01-01T00:01:00Z');
|
|
135
|
-
|
|
136
|
-
const diff = tracker.diff()!;
|
|
137
|
-
console.log(diff.addedNodes.map(n => n.id)); // ['cache']
|
|
138
|
-
console.log(diff.addedEdges.map(e => e.id)); // ['e2']
|
|
139
|
-
console.log(diff.removedNodes); // []
|
|
140
|
-
```
|
|
141
|
-
|
|
142
|
-
### 5. Export to Graphviz DOT, Mermaid, and JSON
|
|
143
|
-
|
|
144
|
-
```ts
|
|
145
|
-
import { createGraph, toDot, toMermaid, toJSON } from '@manya/weave';
|
|
146
|
-
|
|
147
|
-
const g = createGraph(
|
|
148
|
-
[{ id: 'a', label: 'Alpha' }, { id: 'b', label: 'Beta' }],
|
|
149
|
-
[{ id: 'e1', source: 'a', target: 'b', label: 'calls' }],
|
|
150
|
-
true,
|
|
151
|
-
);
|
|
152
|
-
|
|
153
|
-
console.log(toDot(g)); // digraph G { ... "a" -> "b" [label="calls"]; }
|
|
154
|
-
console.log(toMermaid(g)); // flowchart TD \n a["Alpha"] \n b["Beta"] \n a -- "calls" --> b
|
|
155
|
-
console.log(toJSON(g)); // { "directed": true, "nodes": [...], "edges": [...] }
|
|
156
|
-
```
|
|
157
|
-
|
|
158
|
-
---
|
|
159
|
-
|
|
160
|
-
## Configuration
|
|
161
|
-
|
|
162
|
-
### `RenderConfig`
|
|
163
|
-
|
|
164
|
-
```ts
|
|
165
|
-
export interface RenderConfig {
|
|
166
|
-
width: number; // SVG width, default 800
|
|
167
|
-
height: number; // SVG height, default 600
|
|
168
|
-
nodeRadius: number; // node circle radius, default 18
|
|
169
|
-
fontSize: number; // label font size, default 12
|
|
170
|
-
nodeColor: string; // node fill, default '#6ba8d6'
|
|
171
|
-
edgeColor: string; // edge stroke, default '#888888'
|
|
172
|
-
backgroundColor: string; // canvas fill, default '#ffffff'
|
|
173
|
-
showLabels: boolean; // render node & edge labels, default true
|
|
174
|
-
}
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
Pass a partial config to `renderToSVG` — unspecified fields fall back to `DEFAULT_RENDER_CONFIG` via `mergeRenderConfig`.
|
|
178
|
-
|
|
179
|
-
### Layout options
|
|
180
|
-
|
|
181
|
-
All layouts accept `{ width?, height?, padding? }`. Additionally:
|
|
182
|
-
|
|
183
|
-
| Function | Extra options |
|
|
184
|
-
| --- | --- |
|
|
185
|
-
| `forceDirected` | `iterations?`, `seed?`, `idealLength?`, `repulsion?` |
|
|
186
|
-
| `hierarchical` | `layerGap?`, `nodeGap?`, `root?` |
|
|
187
|
-
| `radial` | `root?`, `ringGap?` |
|
|
188
|
-
| `grid` | `columns?`, `cellWidth?`, `cellHeight?` |
|
|
189
|
-
|
|
190
|
-
### `Viewport`
|
|
191
|
-
|
|
192
|
-
```ts
|
|
193
|
-
export interface Viewport {
|
|
194
|
-
centerX: number;
|
|
195
|
-
centerY: number;
|
|
196
|
-
zoom: number; // must be > 0
|
|
197
|
-
}
|
|
198
|
-
```
|
|
199
|
-
|
|
200
|
-
`applyViewport(point, viewport)` returns `{ x: (point.x - centerX) * zoom, y: (point.y - centerY) * zoom }`. `inverseViewport` is the inverse. `panTo(graphPoint, screenPoint, zoom)` builds a viewport anchoring a graph point at a screen point. `zoomAt(viewport, anchorScreenPoint, factor)` zooms while keeping an anchor point fixed.
|
|
201
|
-
|
|
202
|
-
---
|
|
203
|
-
|
|
204
|
-
## Extending
|
|
205
|
-
|
|
206
|
-
### Add a custom layout algorithm
|
|
207
|
-
|
|
208
|
-
```ts
|
|
209
|
-
import type { Graph } from '@manya/weave';
|
|
210
|
-
import type { Layout, Point } from '@manya/weave';
|
|
211
|
-
|
|
212
|
-
export function circular(graph: Graph, radius = 200): Layout {
|
|
213
|
-
const layout = new Map<string, Point>();
|
|
214
|
-
const ids = graph.nodes.map(n => n.id).sort();
|
|
215
|
-
const step = (2 * Math.PI) / ids.length;
|
|
216
|
-
ids.forEach((id, i) => {
|
|
217
|
-
layout.set(id, { x: radius * Math.cos(i * step), y: radius * Math.sin(i * step) });
|
|
218
|
-
});
|
|
219
|
-
return layout;
|
|
220
|
-
}
|
|
221
|
-
```
|
|
222
|
-
|
|
223
|
-
Layouts return a plain `Map<NodeID, Point>`, so custom algorithms drop in seamlessly with `renderToSVG`, `toSVG`, and any downstream consumer.
|
|
224
|
-
|
|
225
|
-
---
|
|
226
|
-
|
|
227
|
-
## Security notes
|
|
228
|
-
|
|
229
|
-
- **Local-only.** No data leaves the host process. No DOM, no network, no telemetry.
|
|
230
|
-
- **No secrets in logs.** `token`, `secret`, `apiKey`, `password`, `credentials`, `cookie` fields are scrubbed by `scrubMetadata`.
|
|
231
|
-
- **Safe SVG output.** `renderToSVG` and `toSVG` XML-escape all label text. Do not embed untrusted user input as raw SVG attributes without additional sanitization.
|
|
232
|
-
- **Reproducibility.** Identical inputs + identical seeds → identical outputs.
|
|
233
|
-
|
|
234
|
-
For threat models, see [SECURITY.md](./SECURITY.md) and the root [SECURITY.md](../../SECURITY.md).
|
|
235
|
-
|
|
236
|
-
---
|
|
237
|
-
|
|
238
|
-
## Documentation
|
|
239
|
-
|
|
240
|
-
- [docs/API.md](./docs/API.md) — full TypeScript API reference.
|
|
241
|
-
- [CHANGELOG.md](./CHANGELOG.md) — release history.
|
|
242
|
-
- [CONTRIBUTING.md](./CONTRIBUTING.md) — package-specific contributor notes.
|
|
243
|
-
- [SECURITY.md](./SECURITY.md) — package-specific security surface.
|
|
244
|
-
- [LICENSE](./LICENSE) — Apache-2.0.
|
|
245
|
-
|
|
246
|
-
---
|
|
247
|
-
|
|
248
|
-
## License
|
|
249
|
-
|
|
250
|
-
Apache-2.0. Copyright 2024 Manya Hael Foundation. All rights reserved.
|
|
251
|
-
|
|
252
|
-
Conceived, directed, and owned by **Uviwe Menyiwe (Azura Daemon)**, founder of the Manya Hael Foundation.
|
|
1
|
+
# @manya-os/weave
|
|
2
|
+
|
|
3
|
+
> Interactive visualization substrate for the MANYA Intelligence OS — dependency graphs, knowledge graphs, event flows, architecture diagrams, live system topology, and pan/zoom exploration with multi-format export.
|
|
4
|
+
|
|
5
|
+
`@manya-os/weave` is the visualization engine of the **MANYA Intelligence OS** — a sovereign, modular, local-first intelligence operating system conceived, directed, and owned by **Uviwe Menyiwe (Azura Daemon)**, founder of the **Manya Hael Foundation**.
|
|
6
|
+
|
|
7
|
+
The package provides an in-memory directed/undirected graph model with cycle detection and topological sort, four deterministic layout algorithms (force-directed, hierarchical, radial, grid), graph filtering by label/type/component/depth, text and fuzzy search with BFS and Dijkstra path finding, export to JSON / Graphviz DOT / Mermaid / SVG, a configurable SVG renderer with arrow markers and labels, a live topology tracker with structural diffing, and interactive primitives (selection model, pan/zoom viewport).
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Vision
|
|
12
|
+
|
|
13
|
+
The Manya Hael Foundation stewards the MANYA Intelligence OS as a long-horizon, mission-driven project. `@manya-os/weave` extends that sovereignty into the visualization domain: **your graphs, your layouts, your topology history — yours alone.**
|
|
14
|
+
|
|
15
|
+
- **Sovereign.** No network calls, no DOM dependency, no external rendering service. Pure TypeScript that runs in Node or in the browser.
|
|
16
|
+
- **Deterministic.** Every layout algorithm accepts a numeric seed and produces byte-identical output for byte-identical input.
|
|
17
|
+
- **Honest.** No magic "auto-layout oracle" — algorithms are simple, well-known, and explicit. Force-directed uses Fruchterman-Reingold with a seeded PRNG.
|
|
18
|
+
- **Exportable.** One graph, four formats (JSON, DOT, Mermaid, SVG) plus a full-featured SVG renderer.
|
|
19
|
+
- **Composable.** Filter, search, layout, render — each step is a pure function on an immutable graph snapshot.
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Features
|
|
24
|
+
|
|
25
|
+
| Area | What you get |
|
|
26
|
+
| --- | --- |
|
|
27
|
+
| **Graph model** | `Graph` class with directed/undirected modes, add/remove nodes & edges, O(1) adjacency queries, in/out degree, neighbors, predecessors, successors. |
|
|
28
|
+
| **Algorithms** | Cycle detection (DFS for directed, union-find for undirected), topological sort (Kahn's, deterministic), connected components, BFS depths. |
|
|
29
|
+
| **Layouts** | `forceDirected` (Fruchterman-Reingold, seeded), `hierarchical` (longest-path layering), `radial` (concentric rings), `grid` (regular grid). All return `Map<nodeId, {x, y}>`. |
|
|
30
|
+
| **Filtering** | By label predicate, by node type, by edge type, by connected component, by BFS depth-from-root, by property predicate, plus generic `filterNodes`/`filterEdges`. |
|
|
31
|
+
| **Search** | Exact text search across labels/types/properties, fuzzy search with Levenshtein-based token scoring, BFS shortest path, Dijkstra weighted shortest path. |
|
|
32
|
+
| **Export** | `toJSON`, `toDot` (Graphviz), `toMermaid` (Mermaid flowchart), `toSVG` (basic positional). |
|
|
33
|
+
| **Render** | `renderToSVG` with `RenderConfig` (width, height, nodeRadius, fontSize, colors, showLabels), arrow markers for directed graphs, edge label rendering. |
|
|
34
|
+
| **Topology** | `TopologySnapshot`, `diffSnapshots` for added/removed nodes & edges, `TopologyTracker` with rolling history and `diff()`. |
|
|
35
|
+
| **Interactive** | `SelectionModel` (toggle/select/clear nodes & edges), `Viewport` (centerX/centerY/zoom), `applyViewport`/`inverseViewport`/`panTo`/`zoomAt`. |
|
|
36
|
+
| **Logging** | `Logger` interface, `ConsoleLogger` with secret-scrubbing, `SilentLogger`. |
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## Install
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
npm install @manya-os/weave
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Requires Node.js 18+. No external runtime dependencies — only Node built-ins.
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Quick start
|
|
51
|
+
|
|
52
|
+
### 1. Build and lay out a dependency graph
|
|
53
|
+
|
|
54
|
+
```ts
|
|
55
|
+
import { createGraph, hierarchical, renderToSVG } from '@manya-os/weave';
|
|
56
|
+
|
|
57
|
+
const graph = createGraph(
|
|
58
|
+
[
|
|
59
|
+
{ id: 'web', label: 'Web Client', type: 'service' },
|
|
60
|
+
{ id: 'api', label: 'API Gateway', type: 'service' },
|
|
61
|
+
{ id: 'auth', label: 'Auth Service', type: 'service' },
|
|
62
|
+
{ id: 'db', label: 'Database', type: 'db' },
|
|
63
|
+
],
|
|
64
|
+
[
|
|
65
|
+
{ id: 'e1', source: 'web', target: 'api', label: 'calls' },
|
|
66
|
+
{ id: 'e2', source: 'api', target: 'auth', label: 'verifies' },
|
|
67
|
+
{ id: 'e3', source: 'api', target: 'db', label: 'queries' },
|
|
68
|
+
],
|
|
69
|
+
true, // directed
|
|
70
|
+
);
|
|
71
|
+
|
|
72
|
+
const layout = hierarchical(graph, { width: 800, height: 600 });
|
|
73
|
+
const svg = renderToSVG(graph, layout, { nodeColor: '#5b8def' });
|
|
74
|
+
console.log(svg); // full <svg>...</svg> document
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### 2. Detect cycles and topologically sort
|
|
78
|
+
|
|
79
|
+
```ts
|
|
80
|
+
import { createGraph } from '@manya-os/weave';
|
|
81
|
+
|
|
82
|
+
const dag = createGraph(
|
|
83
|
+
[{ id: 'a', label: 'A' }, { id: 'b', label: 'B' }, { id: 'c', label: 'C' }],
|
|
84
|
+
[
|
|
85
|
+
{ id: 'e1', source: 'a', target: 'b' },
|
|
86
|
+
{ id: 'e2', source: 'b', target: 'c' },
|
|
87
|
+
],
|
|
88
|
+
true,
|
|
89
|
+
);
|
|
90
|
+
|
|
91
|
+
console.log(dag.hasCycle()); // false
|
|
92
|
+
console.log(dag.topologicalSort()); // ['a', 'b', 'c']
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### 3. Filter, search, and find the shortest path
|
|
96
|
+
|
|
97
|
+
```ts
|
|
98
|
+
import { createGraph, filterByType, search, bfsPath, dijkstra } from '@manya-os/weave';
|
|
99
|
+
|
|
100
|
+
const graph = createGraph(
|
|
101
|
+
[
|
|
102
|
+
{ id: 'auth', label: 'Auth', type: 'service' },
|
|
103
|
+
{ id: 'billing', label: 'Billing', type: 'service' },
|
|
104
|
+
{ id: 'db', label: 'DB', type: 'db' },
|
|
105
|
+
],
|
|
106
|
+
[
|
|
107
|
+
{ id: 'e1', source: 'auth', target: 'db', weight: 1 },
|
|
108
|
+
{ id: 'e2', source: 'billing', target: 'db', weight: 5 },
|
|
109
|
+
],
|
|
110
|
+
false,
|
|
111
|
+
);
|
|
112
|
+
|
|
113
|
+
const services = filterByType(graph, 'service'); // 2 nodes, 0 edges (db dropped)
|
|
114
|
+
const hits = search(graph, 'DB'); // [{ nodeId: 'db', score: 1, matchedField: 'label' }]
|
|
115
|
+
const path = bfsPath(graph, 'auth', 'db'); // ['auth', 'db']
|
|
116
|
+
const shortest = dijkstra(graph, 'billing', 'db'); // { path: ['billing', 'db'], distance: 5 }
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
### 4. Track live topology over time
|
|
120
|
+
|
|
121
|
+
```ts
|
|
122
|
+
import { createGraph, TopologyTracker } from '@manya-os/weave';
|
|
123
|
+
|
|
124
|
+
const tracker = new TopologyTracker(10);
|
|
125
|
+
const v1 = createGraph(
|
|
126
|
+
[{ id: 'api', label: 'API' }, { id: 'db', label: 'DB' }],
|
|
127
|
+
[{ id: 'e1', source: 'api', target: 'db' }],
|
|
128
|
+
);
|
|
129
|
+
tracker.snapshot(v1, '2024-01-01T00:00:00Z');
|
|
130
|
+
|
|
131
|
+
const v2 = v1.clone();
|
|
132
|
+
v2.addNode({ id: 'cache', label: 'Cache' });
|
|
133
|
+
v2.addEdge({ id: 'e2', source: 'api', target: 'cache' });
|
|
134
|
+
tracker.snapshot(v2, '2024-01-01T00:01:00Z');
|
|
135
|
+
|
|
136
|
+
const diff = tracker.diff()!;
|
|
137
|
+
console.log(diff.addedNodes.map(n => n.id)); // ['cache']
|
|
138
|
+
console.log(diff.addedEdges.map(e => e.id)); // ['e2']
|
|
139
|
+
console.log(diff.removedNodes); // []
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
### 5. Export to Graphviz DOT, Mermaid, and JSON
|
|
143
|
+
|
|
144
|
+
```ts
|
|
145
|
+
import { createGraph, toDot, toMermaid, toJSON } from '@manya-os/weave';
|
|
146
|
+
|
|
147
|
+
const g = createGraph(
|
|
148
|
+
[{ id: 'a', label: 'Alpha' }, { id: 'b', label: 'Beta' }],
|
|
149
|
+
[{ id: 'e1', source: 'a', target: 'b', label: 'calls' }],
|
|
150
|
+
true,
|
|
151
|
+
);
|
|
152
|
+
|
|
153
|
+
console.log(toDot(g)); // digraph G { ... "a" -> "b" [label="calls"]; }
|
|
154
|
+
console.log(toMermaid(g)); // flowchart TD \n a["Alpha"] \n b["Beta"] \n a -- "calls" --> b
|
|
155
|
+
console.log(toJSON(g)); // { "directed": true, "nodes": [...], "edges": [...] }
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
## Configuration
|
|
161
|
+
|
|
162
|
+
### `RenderConfig`
|
|
163
|
+
|
|
164
|
+
```ts
|
|
165
|
+
export interface RenderConfig {
|
|
166
|
+
width: number; // SVG width, default 800
|
|
167
|
+
height: number; // SVG height, default 600
|
|
168
|
+
nodeRadius: number; // node circle radius, default 18
|
|
169
|
+
fontSize: number; // label font size, default 12
|
|
170
|
+
nodeColor: string; // node fill, default '#6ba8d6'
|
|
171
|
+
edgeColor: string; // edge stroke, default '#888888'
|
|
172
|
+
backgroundColor: string; // canvas fill, default '#ffffff'
|
|
173
|
+
showLabels: boolean; // render node & edge labels, default true
|
|
174
|
+
}
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
Pass a partial config to `renderToSVG` — unspecified fields fall back to `DEFAULT_RENDER_CONFIG` via `mergeRenderConfig`.
|
|
178
|
+
|
|
179
|
+
### Layout options
|
|
180
|
+
|
|
181
|
+
All layouts accept `{ width?, height?, padding? }`. Additionally:
|
|
182
|
+
|
|
183
|
+
| Function | Extra options |
|
|
184
|
+
| --- | --- |
|
|
185
|
+
| `forceDirected` | `iterations?`, `seed?`, `idealLength?`, `repulsion?` |
|
|
186
|
+
| `hierarchical` | `layerGap?`, `nodeGap?`, `root?` |
|
|
187
|
+
| `radial` | `root?`, `ringGap?` |
|
|
188
|
+
| `grid` | `columns?`, `cellWidth?`, `cellHeight?` |
|
|
189
|
+
|
|
190
|
+
### `Viewport`
|
|
191
|
+
|
|
192
|
+
```ts
|
|
193
|
+
export interface Viewport {
|
|
194
|
+
centerX: number;
|
|
195
|
+
centerY: number;
|
|
196
|
+
zoom: number; // must be > 0
|
|
197
|
+
}
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
`applyViewport(point, viewport)` returns `{ x: (point.x - centerX) * zoom, y: (point.y - centerY) * zoom }`. `inverseViewport` is the inverse. `panTo(graphPoint, screenPoint, zoom)` builds a viewport anchoring a graph point at a screen point. `zoomAt(viewport, anchorScreenPoint, factor)` zooms while keeping an anchor point fixed.
|
|
201
|
+
|
|
202
|
+
---
|
|
203
|
+
|
|
204
|
+
## Extending
|
|
205
|
+
|
|
206
|
+
### Add a custom layout algorithm
|
|
207
|
+
|
|
208
|
+
```ts
|
|
209
|
+
import type { Graph } from '@manya-os/weave';
|
|
210
|
+
import type { Layout, Point } from '@manya-os/weave';
|
|
211
|
+
|
|
212
|
+
export function circular(graph: Graph, radius = 200): Layout {
|
|
213
|
+
const layout = new Map<string, Point>();
|
|
214
|
+
const ids = graph.nodes.map(n => n.id).sort();
|
|
215
|
+
const step = (2 * Math.PI) / ids.length;
|
|
216
|
+
ids.forEach((id, i) => {
|
|
217
|
+
layout.set(id, { x: radius * Math.cos(i * step), y: radius * Math.sin(i * step) });
|
|
218
|
+
});
|
|
219
|
+
return layout;
|
|
220
|
+
}
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
Layouts return a plain `Map<NodeID, Point>`, so custom algorithms drop in seamlessly with `renderToSVG`, `toSVG`, and any downstream consumer.
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## Security notes
|
|
228
|
+
|
|
229
|
+
- **Local-only.** No data leaves the host process. No DOM, no network, no telemetry.
|
|
230
|
+
- **No secrets in logs.** `token`, `secret`, `apiKey`, `password`, `credentials`, `cookie` fields are scrubbed by `scrubMetadata`.
|
|
231
|
+
- **Safe SVG output.** `renderToSVG` and `toSVG` XML-escape all label text. Do not embed untrusted user input as raw SVG attributes without additional sanitization.
|
|
232
|
+
- **Reproducibility.** Identical inputs + identical seeds → identical outputs.
|
|
233
|
+
|
|
234
|
+
For threat models, see [SECURITY.md](./SECURITY.md) and the root [SECURITY.md](../../SECURITY.md).
|
|
235
|
+
|
|
236
|
+
---
|
|
237
|
+
|
|
238
|
+
## Documentation
|
|
239
|
+
|
|
240
|
+
- [docs/API.md](./docs/API.md) — full TypeScript API reference.
|
|
241
|
+
- [CHANGELOG.md](./CHANGELOG.md) — release history.
|
|
242
|
+
- [CONTRIBUTING.md](./CONTRIBUTING.md) — package-specific contributor notes.
|
|
243
|
+
- [SECURITY.md](./SECURITY.md) — package-specific security surface.
|
|
244
|
+
- [LICENSE](./LICENSE) — Apache-2.0.
|
|
245
|
+
|
|
246
|
+
---
|
|
247
|
+
|
|
248
|
+
## License
|
|
249
|
+
|
|
250
|
+
Apache-2.0. Copyright 2024 Manya Hael Foundation. All rights reserved.
|
|
251
|
+
|
|
252
|
+
Conceived, directed, and owned by **Uviwe Menyiwe (Azura Daemon)**, founder of the Manya Hael Foundation.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../node_modules/typescript/lib/lib.scripthost.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/typescript/lib/lib.es2022.full.d.ts","../src/errors.ts","../src/types.ts","../src/logging.ts","../src/graph/graph.ts","../src/layout/layout.ts","../src/filter/filter.ts","../src/search/search.ts","../src/export/exporter.ts","../src/render/renderer.ts","../src/topology/topology.ts","../src/interactive/interactive.ts","../src/index.ts","../src/export/index.ts","../src/filter/index.ts","../src/graph/index.ts","../src/interactive/index.ts","../src/layout/index.ts","../src/render/index.ts","../src/search/index.ts","../src/topology/index.ts","../../../node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__generator/index.d.ts","../../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../../node_modules/@types/babel__template/index.d.ts","../../../node_modules/@types/babel__traverse/index.d.ts","../../../node_modules/@types/babel__core/index.d.ts","../../../node_modules/@types/estree/index.d.ts","../../../node_modules/@types/node/compatibility/disposable.d.ts","../../../node_modules/@types/node/compatibility/indexable.d.ts","../../../node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/@types/node/compatibility/index.d.ts","../../../node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../node_modules/@types/node/web-globals/domexception.d.ts","../../../node_modules/@types/node/web-globals/events.d.ts","../../../node_modules/undici-types/header.d.ts","../../../node_modules/undici-types/readable.d.ts","../../../node_modules/undici-types/file.d.ts","../../../node_modules/undici-types/fetch.d.ts","../../../node_modules/undici-types/formdata.d.ts","../../../node_modules/undici-types/connector.d.ts","../../../node_modules/undici-types/client.d.ts","../../../node_modules/undici-types/errors.d.ts","../../../node_modules/undici-types/dispatcher.d.ts","../../../node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/undici-types/global-origin.d.ts","../../../node_modules/undici-types/pool-stats.d.ts","../../../node_modules/undici-types/pool.d.ts","../../../node_modules/undici-types/handlers.d.ts","../../../node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/undici-types/agent.d.ts","../../../node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/undici-types/mock-agent.d.ts","../../../node_modules/undici-types/mock-client.d.ts","../../../node_modules/undici-types/mock-pool.d.ts","../../../node_modules/undici-types/mock-errors.d.ts","../../../node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/undici-types/retry-handler.d.ts","../../../node_modules/undici-types/retry-agent.d.ts","../../../node_modules/undici-types/api.d.ts","../../../node_modules/undici-types/interceptors.d.ts","../../../node_modules/undici-types/util.d.ts","../../../node_modules/undici-types/cookies.d.ts","../../../node_modules/undici-types/patch.d.ts","../../../node_modules/undici-types/websocket.d.ts","../../../node_modules/undici-types/eventsource.d.ts","../../../node_modules/undici-types/filereader.d.ts","../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/undici-types/content-type.d.ts","../../../node_modules/undici-types/cache.d.ts","../../../node_modules/undici-types/index.d.ts","../../../node_modules/@types/node/web-globals/fetch.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.generated.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/readline/promises.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/sea.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/@types/node/stream/web.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/test.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/index.d.ts","../../../node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../../node_modules/@types/istanbul-lib-report/index.d.ts","../../../node_modules/@types/istanbul-reports/index.d.ts","../../../node_modules/@jest/expect-utils/build/index.d.ts","../../../node_modules/chalk/index.d.ts","../../../node_modules/@sinclair/typebox/typebox.d.ts","../../../node_modules/@jest/schemas/build/index.d.ts","../../../node_modules/pretty-format/build/index.d.ts","../../../node_modules/jest-diff/build/index.d.ts","../../../node_modules/jest-matcher-utils/build/index.d.ts","../../../node_modules/expect/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts","../../../node_modules/@types/json-schema/index.d.ts","../../../node_modules/pg-types/index.d.ts","../../../node_modules/pg-protocol/dist/messages.d.ts","../../../node_modules/pg-protocol/dist/serializer.d.ts","../../../node_modules/pg-protocol/dist/parser.d.ts","../../../node_modules/pg-protocol/dist/index.d.ts","../../../node_modules/@types/pg/lib/type-overrides.d.ts","../../../node_modules/@types/pg/index.d.ts","../../../node_modules/@types/resolve/index.d.ts","../../../node_modules/@types/stack-utils/index.d.ts","../../../node_modules/@types/yargs-parser/index.d.ts","../../../node_modules/@types/yargs/index.d.ts"],"fileIdsList":[[84,96,142],[96,142],[96,142,197],[84,85,86,87,88,96,142],[84,86,96,142],[96,142,154,190],[96,142,192],[96,142,193],[96,142,199,202],[96,139,142],[96,141,142],[142],[96,142,147,175],[96,142,143,148,153,161,172,183],[96,142,143,144,153,161],[91,92,93,96,142],[96,142,145,184],[96,142,146,147,154,162],[96,142,147,172,180],[96,142,148,150,153,161],[96,141,142,149],[96,142,150,151],[96,142,152,153],[96,141,142,153],[96,142,153,154,155,172,183],[96,142,153,154,155,168,172,175],[96,142,150,153,156,161,172,183],[96,142,153,154,156,157,161,172,180,183],[96,142,156,158,172,180,183],[94,95,96,97,98,99,100,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189],[96,142,153,159],[96,142,160,183,188],[96,142,150,153,161,172],[96,142,162],[96,142,163],[96,141,142,164],[96,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189],[96,142,166],[96,142,167],[96,142,153,168,169],[96,142,168,170,184,186],[96,142,153,172,173,175],[96,142,174,175],[96,142,172,173],[96,142,175],[96,142,176],[96,139,142,172,177],[96,142,153,178,179],[96,142,178,179],[96,142,147,161,172,180],[96,142,181],[96,142,161,182],[96,142,156,167,183],[96,142,147,184],[96,142,172,185],[96,142,160,186],[96,142,187],[96,137,142],[96,137,142,153,155,164,172,175,183,186,188],[96,142,172,189],[96,142,153,172,180,190,205,206,209,210,211],[96,142,211],[96,142,214],[96,142,195,201],[96,142,199],[96,142,196,200],[96,142,206,207,208],[96,142,172,206],[96,142,198],[96,109,113,142,183],[96,109,142,172,183],[96,104,142],[96,106,109,142,180,183],[96,142,161,180],[96,142,190],[96,104,142,190],[96,106,109,142,161,183],[96,101,102,105,108,142,153,172,183],[96,109,116,142],[96,101,107,142],[96,109,130,131,142],[96,105,109,142,175,183,190],[96,130,142,190],[96,103,104,142,190],[96,109,142],[96,103,104,105,106,107,108,109,110,111,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,131,132,133,134,135,136,142],[96,109,124,142],[96,109,116,117,142],[96,107,109,117,118,142],[96,108,142],[96,101,104,109,142],[96,109,113,117,118,142],[96,113,142],[96,107,109,112,142,183],[96,101,106,109,116,142],[96,142,172],[96,104,109,130,142,188,190],[64,65,67,96,142],[71,96,142],[65,67,96,142],[69,96,142],[64,65,96,142],[67,96,142],[64,65,66,67,68,69,70,71,72,73,74,96,142],[74,96,142],[65,96,142],[68,96,142],[72,96,142],[70,96,142],[73,96,142]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7a3c8b952931daebdfc7a2897c53c0a1c73624593fa070e46bd537e64dcd20a","affectsGlobalScope":true,"impliedFormat":1},{"version":"80e18897e5884b6723488d4f5652167e7bb5024f946743134ecc4aa4ee731f89","affectsGlobalScope":true,"impliedFormat":1},{"version":"cd034f499c6cdca722b60c04b5b1b78e058487a7085a8e0d6fb50809947ee573","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"3cbad9a1ba4453443026ed38e4b8be018abb26565fa7c944376463ad9df07c41","impliedFormat":1},{"version":"5d6323bde124a72be2c3233e5bc9e1f1d02b2e6b7ef8255483abbe2200860a3e","signature":"e6acaf02fcf4ccaec340bf8bde95f303a2410ebc02b0675ed9eb40df29555e3d"},{"version":"5f18dcf4aa06902f120d9f2a7ae46ff6542152d9525d629caea540936cd8cb6d","signature":"71b101a2a6d6bf2e116e0d2196653a991fdd30840461f66a90f3987e7766b9d4"},{"version":"8c0e1e317afeb70aee44ff6d0d7dd8880d8ba564c79382e5101f264209c9afae","signature":"7f2e9e686b81f16b598c2494674ee0bf000e171fde2be5ed7e37b3b80fd7bdb3"},{"version":"22f31027e1ad49271ec050b690dfe9d6d39ab1f9ab19ea887966e06836303507","signature":"a3d17ff231b8264e4c32b30fc817cd6a42b045d3f8ac2337e6555665e34d355f"},{"version":"75abc446713927dd5ee3a8fb35d80e8aa88924acbe1e8fa09f8d3c9726bfdad4","signature":"1858ebf8ce2dfce56b8b2fcffa2b9a38416830afe006e78f3905e303e201148c"},{"version":"e889d8df835becea1a2e0992d83594356146ce7ee14e18033176f6b78f4fcdad","signature":"9e881c12fada4ced78042c96384d10dea56128b10e768be1cc5e9fa6a4c789ad"},{"version":"ae016bf14f7ca5e4685fe2b2be0ea6de1150868fc1a9160fca90596ecdb3992c","signature":"26c46febb9d1daa6d274429a1a65ccc2053547e7b27388276b13e199edfc5e27"},{"version":"adae2b5c66690a4c8b271cd18117b82068ca4d61f9c68e9412c2cf6d705bb820","signature":"62aab5ab4a656d5a525e2b36aa6b7f0e46c971f140ef948202c46c7b6ad8d298"},{"version":"153ca6ef0f715c49578691272ee760f0b2a92a5ab951cd3222f7747c28cc235e","signature":"045390dbb531067d04cd6afbc3155fdd4b6da5be1d25ce1d7d3af67355e0d817"},{"version":"9f238b12aebccd25bd0aaf91e668d9e52602af6a8669988bf337625a0cb66682","signature":"3e7db50684aa8ce481533d5a0ae49dfbed29bb7f63f77371d3668b0d346aaf2e"},{"version":"9fd10283e521e321f9edd25704e61f4109fe1d954ed79f542fd2ea83f11a00be","signature":"bec42b1a9a7b50e194c74b303e5b7e0b8fa067a7897262c4538389d1d1680a64"},{"version":"bbd4854e5dad1aef6e61cc4554cb61f42052b2d84583a592570ecadc7a578b4d","signature":"6ec20ba567c0dcebf10152137a0254b936883db917d648eda0566d0cbdebc1b1"},{"version":"92a94ad0c56c9eacbbfff3c6223c1f0691ec07c56a912f1f3e485c2c8f23701f","signature":"19731a2a6182ab52b1610f91973b622b7bc837b969a3466052ec5dcf8313e352"},{"version":"5cdccf460678f2317d6a108b726d3c90a5fc4db9ae82192890c8ed5f531466e9","signature":"8a89c518a25d92247b823874474cc07cd4f68521bf347bf71c8f52b859f5db57"},{"version":"57031aac34fd2681bd0045169e473269f9250ba3b438146065f344c42666022a","signature":"adb362905ffa167f58d86431b3426cef71687f1a59b53305b3d72899e0e46c98"},{"version":"4cab871fab2ceb4c68711937b0c486a5351a449ccdb5ec867e7fa9c77d79db2d","signature":"116f840e2fcd90e21d2498c15e4a07af3aa8bdad080f6c975f7d6bc6785eeb0c"},{"version":"05304dfb03e88fc42b10d51dfcb18e12a8a3fdcf1157b6a74d0c7560fee959d2","signature":"f030ebcc6797b586411ec3ba7c7e02dfa5b3fe1b5d57c05c744cc4a7c41b5992"},{"version":"7060c0f58f3481c99da1f92408dfd3884f323072c374c07b8111dbc38a2f1da4","signature":"6c316474a6f48d235d876a20d0902f091c7158c2d8a1c84729347b06a506188a"},{"version":"9f5f57199e27d90e8f56b322f7c57262a5cf3a2a9b815d491f29d847d33620dd","signature":"522ea4c0ccf932483d4234e9ae7699ba28e4f24d9433f119ea99c0add04c739a"},{"version":"2bc086556c8f837f08e6a022a92797dddfca1e612fa2d7d87e2d28affe1efa96","signature":"f02820427a788810b15e042dff398bc861520c8483a63f1fa5b2461cf2c40c10"},{"version":"556ccd493ec36c7d7cb130d51be66e147b91cc1415be383d71da0f1e49f742a9","impliedFormat":1},{"version":"b6d03c9cfe2cf0ba4c673c209fcd7c46c815b2619fd2aad59fc4229aaef2ed43","impliedFormat":1},{"version":"95aba78013d782537cc5e23868e736bec5d377b918990e28ed56110e3ae8b958","impliedFormat":1},{"version":"670a76db379b27c8ff42f1ba927828a22862e2ab0b0908e38b671f0e912cc5ed","impliedFormat":1},{"version":"13b77ab19ef7aadd86a1e54f2f08ea23a6d74e102909e3c00d31f231ed040f62","impliedFormat":1},{"version":"069bebfee29864e3955378107e243508b163e77ab10de6a5ee03ae06939f0bb9","impliedFormat":1},{"version":"751764bb94219b4ce8f5475dc35d3de2e432fea01a0c9610cd7f69ad05e398c6","impliedFormat":1},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","affectsGlobalScope":true,"impliedFormat":1},{"version":"ba481bca06f37d3f2c137ce343c7d5937029b2468f8e26111f3c9d9963d6568d","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d9ef24f9a22a88e3e9b3b3d8c40ab1ddb0853f1bfbd5c843c37800138437b61","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"b52476feb4a0cbcb25e5931b930fc73cb6643fb1a5060bf8a3dda0eeae5b4b68","affectsGlobalScope":true,"impliedFormat":1},{"version":"e2677634fe27e87348825bb041651e22d50a613e2fdf6a4a3ade971d71bac37e","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"8c0bcd6c6b67b4b503c11e91a1fb91522ed585900eab2ab1f61bba7d7caa9d6f","impliedFormat":1},{"version":"8cd19276b6590b3ebbeeb030ac271871b9ed0afc3074ac88a94ed2449174b776","affectsGlobalScope":true,"impliedFormat":1},{"version":"696eb8d28f5949b87d894b26dc97318ef944c794a9a4e4f62360cd1d1958014b","impliedFormat":1},{"version":"3f8fa3061bd7402970b399300880d55257953ee6d3cd408722cb9ac20126460c","impliedFormat":1},{"version":"35ec8b6760fd7138bbf5809b84551e31028fb2ba7b6dc91d95d098bf212ca8b4","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"68bd56c92c2bd7d2339457eb84d63e7de3bd56a69b25f3576e1568d21a162398","affectsGlobalScope":true,"impliedFormat":1},{"version":"3e93b123f7c2944969d291b35fed2af79a6e9e27fdd5faa99748a51c07c02d28","impliedFormat":1},{"version":"9d19808c8c291a9010a6c788e8532a2da70f811adb431c97520803e0ec649991","impliedFormat":1},{"version":"87aad3dd9752067dc875cfaa466fc44246451c0c560b820796bdd528e29bef40","impliedFormat":1},{"version":"4aacb0dd020eeaef65426153686cc639a78ec2885dc72ad220be1d25f1a439df","impliedFormat":1},{"version":"f0bd7e6d931657b59605c44112eaf8b980ba7f957a5051ed21cb93d978cf2f45","impliedFormat":1},{"version":"8db0ae9cb14d9955b14c214f34dae1b9ef2baee2fe4ce794a4cd3ac2531e3255","affectsGlobalScope":true,"impliedFormat":1},{"version":"15fc6f7512c86810273af28f224251a5a879e4261b4d4c7e532abfbfc3983134","impliedFormat":1},{"version":"58adba1a8ab2d10b54dc1dced4e41f4e7c9772cbbac40939c0dc8ce2cdb1d442","impliedFormat":1},{"version":"641942a78f9063caa5d6b777c99304b7d1dc7328076038c6d94d8a0b81fc95c1","impliedFormat":1},{"version":"1123a83f35cf56c97de746f0a7250012153c61a167e4a61668bf50e558162d14","impliedFormat":1},{"version":"855cd5f7eb396f5f1ab1bc0f8580339bff77b68a770f84c6b254e319bbfd1ac7","impliedFormat":1},{"version":"5650cf3dace09e7c25d384e3e6b818b938f68f4e8de96f52d9c5a1b3db068e86","impliedFormat":1},{"version":"1354ca5c38bd3fd3836a68e0f7c9f91f172582ba30ab15bb8c075891b91502b7","affectsGlobalScope":true,"impliedFormat":1},{"version":"7e20d899c28ca26a2a7afc98beaa69e63ff7fba0a8bc47b4e3bf3ede5e09e424","impliedFormat":1},{"version":"2d2fcaab481b31a5882065c7951255703ddbe1c0e507af56ea42d79ac3911201","impliedFormat":1},{"version":"a192fe8ec33f75edbc8d8f3ed79f768dfae11ff5735e7fe52bfa69956e46d78d","impliedFormat":1},{"version":"ca867399f7db82df981d6915bcbb2d81131d7d1ef683bc782b59f71dda59bc85","affectsGlobalScope":true,"impliedFormat":1},{"version":"372413016d17d804e1d139418aca0c68e47a83fb6669490857f4b318de8cccb3","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e043a1bc8fbf2a255bccf9bf27e0f1caf916c3b0518ea34aa72357c0afd42ec","impliedFormat":1},{"version":"b4f70ec656a11d570e1a9edce07d118cd58d9760239e2ece99306ee9dfe61d02","impliedFormat":1},{"version":"3bc2f1e2c95c04048212c569ed38e338873f6a8593930cf5a7ef24ffb38fc3b6","impliedFormat":1},{"version":"6e70e9570e98aae2b825b533aa6292b6abd542e8d9f6e9475e88e1d7ba17c866","impliedFormat":1},{"version":"f9d9d753d430ed050dc1bf2667a1bab711ccbb1c1507183d794cc195a5b085cc","impliedFormat":1},{"version":"9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","impliedFormat":1},{"version":"085f552d005479e2e6a7311cdbbe5d8c55c497b4d19274285df161ee9684cd9c","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"007faacc9268357caa21d24169f3f3f2497af3e9241308df2d89f6e6d9bb3f2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"74cf591a0f63db318651e0e04cb55f8791385f86e987a67fd4d2eaab8191f730","impliedFormat":1},{"version":"5eab9b3dc9b34f185417342436ec3f106898da5f4801992d8ff38ab3aff346b5","impliedFormat":1},{"version":"12ed4559eba17cd977aa0db658d25c4047067444b51acfdcbf38470630642b23","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3ffabc95802521e1e4bcba4c88d8615176dc6e09111d920c7a213bdda6e1d65","impliedFormat":1},{"version":"809821b8a065e3234a55b3a9d7846231ed18d66dd749f2494c66288d890daf7f","impliedFormat":1},{"version":"ae56f65caf3be91108707bd8dfbccc2a57a91feb5daabf7165a06a945545ed26","impliedFormat":1},{"version":"a136d5de521da20f31631a0a96bf712370779d1c05b7015d7019a9b2a0446ca9","impliedFormat":1},{"version":"c3b41e74b9a84b88b1dca61ec39eee25c0dbc8e7d519ba11bb070918cfacf656","affectsGlobalScope":true,"impliedFormat":1},{"version":"4737a9dc24d0e68b734e6cfbcea0c15a2cfafeb493485e27905f7856988c6b29","affectsGlobalScope":true,"impliedFormat":1},{"version":"36d8d3e7506b631c9582c251a2c0b8a28855af3f76719b12b534c6edf952748d","impliedFormat":1},{"version":"1ca69210cc42729e7ca97d3a9ad48f2e9cb0042bada4075b588ae5387debd318","impliedFormat":1},{"version":"f5ebe66baaf7c552cfa59d75f2bfba679f329204847db3cec385acda245e574e","impliedFormat":1},{"version":"ed59add13139f84da271cafd32e2171876b0a0af2f798d0c663e8eeb867732cf","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7c5e2ea4a9749097c347454805e933844ed207b6eefec6b7cfd418b5f5f7b28","impliedFormat":1},{"version":"b1810689b76fd473bd12cc9ee219f8e62f54a7d08019a235d07424afbf074d25","impliedFormat":1},{"version":"afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","impliedFormat":1},{"version":"035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","impliedFormat":1},{"version":"a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","impliedFormat":1},{"version":"5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","impliedFormat":1},{"version":"cdcc132f207d097d7d3aa75615ab9a2e71d6a478162dde8b67f88ea19f3e54de","impliedFormat":1},{"version":"0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","impliedFormat":1},{"version":"e1028394c1cf96d5d057ecc647e31e457b919092f882ed0c7092152b077fed9d","impliedFormat":1},{"version":"f315e1e65a1f80992f0509e84e4ae2df15ecd9ef73df975f7c98813b71e4c8da","impliedFormat":1},{"version":"5b9586e9b0b6322e5bfbd2c29bd3b8e21ab9d871f82346cb71020e3d84bae73e","impliedFormat":1},{"version":"3e70a7e67c2cb16f8cd49097360c0309fe9d1e3210ff9222e9dac1f8df9d4fb6","impliedFormat":1},{"version":"ab68d2a3e3e8767c3fba8f80de099a1cfc18c0de79e42cb02ae66e22dfe14a66","impliedFormat":1},{"version":"d96cc6598148bf1a98fb2e8dcf01c63a4b3558bdaec6ef35e087fd0562eb40ec","impliedFormat":1},{"version":"f8db4fea512ab759b2223b90ecbbe7dae919c02f8ce95ec03f7fb1cf757cfbeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","impliedFormat":1},{"version":"f60e3e3060207ac982da13363181fd7ee4beecc19a7c569f0d6bb034331066c2","impliedFormat":1},{"version":"4a20a0a39aca8738cc5088f9dea2969bf2af3ca1341c56071f513059b122d150","impliedFormat":1},{"version":"a33c98f95c099c2a9a383b156c8f2a16605843d29455a954c1431bcbbc1ce35a","impliedFormat":1},{"version":"effa1fd4980f6dff4e81ed67009b847d34449087504319f9a0dd081e8cf23a31","impliedFormat":1},{"version":"c2c9f431f788b434e6ae327844ef6712bb6a6a88ad08acf20bf6cfeb41d154ba","impliedFormat":1},{"version":"798367363a3274220cbed839b883fe2f52ba7197b25e8cb2ac59c1e1fd8af6b7","impliedFormat":1},{"version":"67f3d03f61a43f045851624e52ec438803ecf5d2247660f208bd9bcadb6ff298","impliedFormat":1},{"version":"8baa5d0febc68db886c40bf341e5c90dc215a90cd64552e47e8184be6b7e3358","impliedFormat":1},{"version":"ab82804a14454734010dcdcd43f564ff7b0389bee4c5692eec76ff5b30d4cf66","impliedFormat":1},{"version":"bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","impliedFormat":1},{"version":"26a770cec4bd2e7dbba95c6e536390fffe83c6268b78974a93727903b515c4e7","impliedFormat":1}],"root":[[64,83]],"options":{"composite":true,"declaration":true,"declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitAny":true,"noImplicitReturns":true,"outDir":"./types","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"strictNullChecks":true,"target":9},"referencedMap":[[86,1],[84,2],[195,2],[198,3],[197,2],[89,4],[85,1],[87,5],[88,1],[90,2],[191,6],[192,2],[193,7],[194,8],[203,9],[204,2],[139,10],[140,10],[141,11],[96,12],[142,13],[143,14],[144,15],[91,2],[94,16],[92,2],[93,2],[145,17],[146,18],[147,19],[148,20],[149,21],[150,22],[151,22],[152,23],[153,24],[154,25],[155,26],[97,2],[95,2],[156,27],[157,28],[158,29],[190,30],[159,31],[160,32],[161,33],[162,34],[163,35],[164,36],[165,37],[166,38],[167,39],[168,40],[169,40],[170,41],[171,2],[172,42],[174,43],[173,44],[175,45],[176,46],[177,47],[178,48],[179,49],[180,50],[181,51],[182,52],[183,53],[184,54],[185,55],[186,56],[187,57],[98,2],[99,2],[100,2],[138,58],[188,59],[189,60],[211,61],[210,62],[212,2],[213,2],[214,2],[215,63],[196,2],[202,64],[200,65],[201,66],[209,67],[206,2],[208,68],[207,2],[205,2],[199,69],[61,2],[62,2],[12,2],[10,2],[11,2],[16,2],[15,2],[2,2],[17,2],[18,2],[19,2],[20,2],[21,2],[22,2],[23,2],[24,2],[3,2],[25,2],[26,2],[4,2],[27,2],[31,2],[28,2],[29,2],[30,2],[32,2],[33,2],[34,2],[5,2],[35,2],[36,2],[37,2],[38,2],[6,2],[42,2],[39,2],[40,2],[41,2],[43,2],[7,2],[44,2],[49,2],[50,2],[45,2],[46,2],[47,2],[48,2],[8,2],[54,2],[51,2],[52,2],[53,2],[55,2],[9,2],[56,2],[63,2],[57,2],[58,2],[60,2],[59,2],[1,2],[14,2],[13,2],[116,70],[126,71],[115,70],[136,72],[107,73],[106,74],[135,75],[129,76],[134,77],[109,78],[123,79],[108,80],[132,81],[104,82],[103,75],[133,83],[105,84],[110,85],[111,2],[114,85],[101,2],[137,86],[127,87],[118,88],[119,89],[121,90],[117,91],[120,92],[130,75],[112,93],[113,94],[122,95],[102,96],[125,87],[124,85],[128,2],[131,97],[64,2],[71,98],[76,99],[69,100],[77,101],[67,102],[78,103],[75,104],[79,105],[74,106],[80,107],[68,98],[66,2],[81,108],[72,98],[82,109],[70,100],[83,110],[73,100],[65,2]],"latestChangedDtsFile":"./types/topology/index.d.ts","version":"5.9.3"}
|
package/package.json
CHANGED
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@manya-os/weave",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "Interactive visualization substrate for the MANYA Intelligence OS — dependency graphs, knowledge graphs, event flows, layouts, filtering, search, export, live topology tracking, and pan/zoom exploration.",
|
|
5
|
-
"main": "dist/cjs/index.js",
|
|
6
|
-
"types": "dist/types/index.d.ts",
|
|
7
|
-
"scripts": {
|
|
8
|
-
"build": "node ../../scripts/build-package.js weave",
|
|
9
|
-
"test": "jest",
|
|
10
|
-
"clean": "rm -rf dist build node_modules",
|
|
11
|
-
"build:types": "node ../../scripts/build-types.js weave",
|
|
12
|
-
"build:bundle": "node ../../scripts/build-package.js weave --no-types && node ../../scripts/build-types.js weave"
|
|
13
|
-
},
|
|
14
|
-
"keywords": [
|
|
15
|
-
"manya",
|
|
16
|
-
"weave",
|
|
17
|
-
"graph",
|
|
18
|
-
"visualization",
|
|
19
|
-
"layout",
|
|
20
|
-
"force-directed",
|
|
21
|
-
"topology",
|
|
22
|
-
"dependency-graph",
|
|
23
|
-
"knowledge-graph",
|
|
24
|
-
"svg",
|
|
25
|
-
"graphviz",
|
|
26
|
-
"mermaid"
|
|
27
|
-
],
|
|
28
|
-
"author": "Uviwe Menyiwe (Azura Daemon) <foundation@manyahael.org>",
|
|
29
|
-
"license": "Apache-2.0",
|
|
30
|
-
"dependencies": {},
|
|
31
|
-
"devDependencies": {},
|
|
32
|
-
"module": "dist/esm/index.mjs",
|
|
33
|
-
"exports": {
|
|
34
|
-
".": {
|
|
35
|
-
"types": "./dist/types/index.d.ts",
|
|
36
|
-
"require": "./dist/cjs/index.js",
|
|
37
|
-
"import": "./dist/esm/index.mjs",
|
|
38
|
-
"default": "./dist/cjs/index.js"
|
|
39
|
-
},
|
|
40
|
-
"./package.json": "./package.json"
|
|
41
|
-
},
|
|
42
|
-
"sideEffects": false,
|
|
43
|
-
"files": [
|
|
44
|
-
"dist",
|
|
45
|
-
"README.md",
|
|
46
|
-
"CHANGELOG.md",
|
|
47
|
-
"LICENSE"
|
|
48
|
-
]
|
|
49
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@manya-os/weave",
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"description": "Interactive visualization substrate for the MANYA Intelligence OS — dependency graphs, knowledge graphs, event flows, layouts, filtering, search, export, live topology tracking, and pan/zoom exploration.",
|
|
5
|
+
"main": "dist/cjs/index.js",
|
|
6
|
+
"types": "dist/types/index.d.ts",
|
|
7
|
+
"scripts": {
|
|
8
|
+
"build": "node ../../scripts/build-package.js weave",
|
|
9
|
+
"test": "jest --config ../../jest.config.js",
|
|
10
|
+
"clean": "rm -rf dist build node_modules",
|
|
11
|
+
"build:types": "node ../../scripts/build-types.js weave",
|
|
12
|
+
"build:bundle": "node ../../scripts/build-package.js weave --no-types && node ../../scripts/build-types.js weave"
|
|
13
|
+
},
|
|
14
|
+
"keywords": [
|
|
15
|
+
"manya",
|
|
16
|
+
"weave",
|
|
17
|
+
"graph",
|
|
18
|
+
"visualization",
|
|
19
|
+
"layout",
|
|
20
|
+
"force-directed",
|
|
21
|
+
"topology",
|
|
22
|
+
"dependency-graph",
|
|
23
|
+
"knowledge-graph",
|
|
24
|
+
"svg",
|
|
25
|
+
"graphviz",
|
|
26
|
+
"mermaid"
|
|
27
|
+
],
|
|
28
|
+
"author": "Uviwe Menyiwe (Azura Daemon) <foundation@manyahael.org>",
|
|
29
|
+
"license": "Apache-2.0",
|
|
30
|
+
"dependencies": {},
|
|
31
|
+
"devDependencies": {},
|
|
32
|
+
"module": "dist/esm/index.mjs",
|
|
33
|
+
"exports": {
|
|
34
|
+
".": {
|
|
35
|
+
"types": "./dist/types/index.d.ts",
|
|
36
|
+
"require": "./dist/cjs/index.js",
|
|
37
|
+
"import": "./dist/esm/index.mjs",
|
|
38
|
+
"default": "./dist/cjs/index.js"
|
|
39
|
+
},
|
|
40
|
+
"./package.json": "./package.json"
|
|
41
|
+
},
|
|
42
|
+
"sideEffects": false,
|
|
43
|
+
"files": [
|
|
44
|
+
"dist",
|
|
45
|
+
"README.md",
|
|
46
|
+
"CHANGELOG.md",
|
|
47
|
+
"LICENSE"
|
|
48
|
+
]
|
|
49
|
+
}
|