@reqlan/analytical 0.4.0 → 0.5.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/README.md +164 -0
- package/README.template.md +33 -0
- package/out/analysis-api.d.ts +8 -0
- package/out/analysis-api.js +21 -0
- package/out/analysis-api.js.map +1 -1
- package/out/core/application-memory.d.ts +11 -0
- package/out/core/application-memory.js +26 -0
- package/out/core/application-memory.js.map +1 -0
- package/out/create-runtime.d.ts +1 -0
- package/out/create-runtime.js +2 -3
- package/out/create-runtime.js.map +1 -1
- package/out/export/build-export-snapshot.js +52 -30
- package/out/export/build-export-snapshot.js.map +1 -1
- package/out/export/export-html.d.ts +4 -0
- package/out/export/export-html.js +8 -0
- package/out/export/export-html.js.map +1 -0
- package/out/export/html-export-assets.d.ts +2 -2
- package/out/export/html-export-assets.js +187 -17
- package/out/export/html-export-assets.js.map +1 -1
- package/out/export/html-export-template.d.ts +2 -1
- package/out/export/html-export-template.js +230 -120
- package/out/export/html-export-template.js.map +1 -1
- package/out/export/html-export-utils.d.ts +13 -2
- package/out/export/html-export-utils.js +167 -52
- package/out/export/html-export-utils.js.map +1 -1
- package/out/export/secret-rq.d.ts +2 -0
- package/out/export/secret-rq.js +9 -0
- package/out/export/secret-rq.js.map +1 -0
- package/out/export/types.d.ts +25 -0
- package/out/export/write-html-export.js +7 -1
- package/out/export/write-html-export.js.map +1 -1
- package/out/headless-index-service.js +2 -1
- package/out/headless-index-service.js.map +1 -1
- package/out/index-store/idea-extractor.js +42 -7
- package/out/index-store/idea-extractor.js.map +1 -1
- package/out/index-store/webview-graph-queries.d.ts +12 -0
- package/out/index-store/webview-graph-queries.js +37 -3
- package/out/index-store/webview-graph-queries.js.map +1 -1
- package/out/index.d.ts +5 -2
- package/out/index.js +4 -1
- package/out/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -28,13 +28,16 @@ body {
|
|
|
28
28
|
}
|
|
29
29
|
a { color: var(--accent-strong); text-decoration: none; }
|
|
30
30
|
a:hover { color: var(--accent); }
|
|
31
|
-
main.layout {
|
|
31
|
+
main.layout {
|
|
32
|
+
max-width: 1360px; margin: 0 auto; padding: 1.5rem;
|
|
33
|
+
display: flex; flex-direction: column; gap: 1.5rem;
|
|
34
|
+
}
|
|
32
35
|
.topbar {
|
|
33
36
|
position: sticky; top: 0; z-index: 10;
|
|
34
|
-
background: var(--bg-elev); border-bottom: 1px solid var(--line); margin: 0 -1.5rem
|
|
37
|
+
background: var(--bg-elev); border-bottom: 1px solid var(--line); margin: 0 -1.5rem;
|
|
35
38
|
padding: 0.9rem 1.5rem;
|
|
36
39
|
}
|
|
37
|
-
.topbar-inner, .hero, .split, .grid, .detail-grid { display: grid; gap:
|
|
40
|
+
.topbar-inner, .hero, .split, .grid, .detail-grid { display: grid; gap: 1.5rem; }
|
|
38
41
|
.topbar-inner { grid-template-columns: 1.3fr auto; align-items: center; }
|
|
39
42
|
.nav { display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; }
|
|
40
43
|
.nav a {
|
|
@@ -46,11 +49,35 @@ main.layout { max-width: 1360px; margin: 0 auto; padding: 1.5rem; }
|
|
|
46
49
|
background: color-mix(in srgb, var(--rust) 28%, var(--bg-raised));
|
|
47
50
|
color: var(--fg); border-color: var(--rust);
|
|
48
51
|
}
|
|
49
|
-
.
|
|
50
|
-
|
|
51
|
-
|
|
52
|
+
.nav a.brand-link {
|
|
53
|
+
background: transparent;
|
|
54
|
+
border-color: transparent;
|
|
55
|
+
color: var(--fg);
|
|
56
|
+
font-weight: 650;
|
|
57
|
+
letter-spacing: 0.02em;
|
|
58
|
+
padding-left: 0.15rem;
|
|
59
|
+
padding-right: 0.9rem;
|
|
60
|
+
}
|
|
61
|
+
.nav a.brand-link:hover {
|
|
62
|
+
color: var(--accent);
|
|
63
|
+
border-color: transparent;
|
|
64
|
+
background: transparent;
|
|
65
|
+
}
|
|
66
|
+
.hero { grid-template-columns: 2fr 1fr; }
|
|
67
|
+
.grid {
|
|
68
|
+
display: grid;
|
|
69
|
+
grid-template-columns: repeat(auto-fit, minmax(min(100%, 140px), 1fr));
|
|
70
|
+
gap: 1.5rem;
|
|
71
|
+
row-gap: 1.5rem;
|
|
72
|
+
column-gap: 1.5rem;
|
|
73
|
+
}
|
|
74
|
+
.split, .detail-grid {
|
|
75
|
+
display: grid;
|
|
76
|
+
grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
|
|
77
|
+
gap: 1.5rem;
|
|
78
|
+
}
|
|
52
79
|
.panel, .metric, .card, .table-shell, .graph-shell, .print-card, .search-result {
|
|
53
|
-
background: var(--bg-
|
|
80
|
+
background: var(--bg-raised);
|
|
54
81
|
border: 1px solid var(--line);
|
|
55
82
|
border-radius: 10px;
|
|
56
83
|
}
|
|
@@ -59,20 +86,23 @@ main.layout { max-width: 1360px; margin: 0 auto; padding: 1.5rem; }
|
|
|
59
86
|
.metric-link, .metric > span, .metric > strong {
|
|
60
87
|
display: flex; flex-direction: column; gap: 0.35rem; padding: 1rem; color: inherit;
|
|
61
88
|
}
|
|
62
|
-
.metric-link:hover { background: var(--bg-raised); }
|
|
89
|
+
.metric-link:hover { background: color-mix(in srgb, var(--accent) 10%, var(--bg-raised)); }
|
|
63
90
|
.metric-label, .subtle, .eyebrow, .breadcrumbs { color: var(--muted); }
|
|
64
91
|
.metric-value { font-size: 1.75rem; color: var(--accent-strong); }
|
|
65
92
|
.eyebrow { text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.75rem; color: var(--rust); }
|
|
66
|
-
.page-header {
|
|
93
|
+
.page-header { display: grid; gap: 0.55rem; }
|
|
94
|
+
.page-header h1 { margin: 0; }
|
|
95
|
+
.page-header .eyebrow { margin: 0; }
|
|
96
|
+
.page-header .subtle { margin: 0; }
|
|
67
97
|
.toolbar {
|
|
68
98
|
display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; justify-content: space-between;
|
|
69
99
|
margin-bottom: 0.9rem;
|
|
70
100
|
}
|
|
71
|
-
.toolbar .actions, .pill-row, .breadcrumbs { display: flex; gap: 0.
|
|
101
|
+
.toolbar .actions, .pill-row, .breadcrumbs { display: flex; gap: 0.75rem; row-gap: 0.85rem; flex-wrap: wrap; align-items: center; }
|
|
72
102
|
.chip, .pill {
|
|
73
103
|
display: inline-flex; align-items: center; gap: 0.35rem;
|
|
74
104
|
padding: 0.28rem 0.6rem; border-radius: 8px;
|
|
75
|
-
border: 1px solid var(--line); background: var(--bg
|
|
105
|
+
border: 1px solid var(--line); background: var(--bg); color: var(--muted);
|
|
76
106
|
}
|
|
77
107
|
a.pill:hover { color: var(--accent-strong); border-color: color-mix(in srgb, var(--accent) 40%, var(--line)); }
|
|
78
108
|
.graph-controls-bar {
|
|
@@ -84,8 +114,9 @@ a.pill:hover { color: var(--accent-strong); border-color: color-mix(in srgb, var
|
|
|
84
114
|
padding: 0.8rem;
|
|
85
115
|
border: 1px solid var(--line);
|
|
86
116
|
border-radius: 10px;
|
|
87
|
-
background: var(--bg
|
|
117
|
+
background: var(--bg);
|
|
88
118
|
}
|
|
119
|
+
.graph-shell > .pill-row { margin-bottom: 0.9rem; }
|
|
89
120
|
.graph-filter {
|
|
90
121
|
flex: 1 1 180px;
|
|
91
122
|
min-width: 160px;
|
|
@@ -125,6 +156,23 @@ th, td {
|
|
|
125
156
|
th { color: var(--muted); font-size: 0.94rem; }
|
|
126
157
|
tbody tr:hover { background: var(--bg-raised); }
|
|
127
158
|
.table-shell { overflow-x: auto; }
|
|
159
|
+
.scroll-window {
|
|
160
|
+
--scroll-window-max: min(28rem, 50vh);
|
|
161
|
+
}
|
|
162
|
+
body[data-runtime-mode="interactive"] .scroll-window {
|
|
163
|
+
max-height: var(--scroll-window-max);
|
|
164
|
+
overflow: auto;
|
|
165
|
+
border: 1px solid var(--line);
|
|
166
|
+
border-radius: 8px;
|
|
167
|
+
background: var(--bg);
|
|
168
|
+
}
|
|
169
|
+
body[data-runtime-mode="interactive"] .scroll-window > table {
|
|
170
|
+
margin: 0;
|
|
171
|
+
}
|
|
172
|
+
body[data-runtime-mode="interactive"] .scroll-window .entity-list,
|
|
173
|
+
body[data-runtime-mode="interactive"] .scroll-window .rollup-list {
|
|
174
|
+
padding: 0.75rem;
|
|
175
|
+
}
|
|
128
176
|
.sortable-th { padding: 0.45rem 0.4rem; }
|
|
129
177
|
.sort-button {
|
|
130
178
|
display: inline-flex; align-items: center; gap: 0.35rem;
|
|
@@ -136,6 +184,29 @@ tbody tr:hover { background: var(--bg-raised); }
|
|
|
136
184
|
.sort-button.sort-active { color: var(--accent-strong); }
|
|
137
185
|
.sort-indicator { color: var(--faint); font-size: 0.8em; min-width: 1em; }
|
|
138
186
|
.sort-button.sort-active .sort-indicator { color: var(--accent-strong); }
|
|
187
|
+
.table-filter-toggle {
|
|
188
|
+
display: inline-flex; align-items: center; justify-content: center;
|
|
189
|
+
width: 2.25rem; height: 2.25rem; padding: 0;
|
|
190
|
+
border: 1px solid var(--line); border-radius: 8px;
|
|
191
|
+
background: var(--bg-raised); color: var(--muted); cursor: pointer;
|
|
192
|
+
}
|
|
193
|
+
.table-filter-toggle:hover { color: var(--fg); border-color: color-mix(in srgb, var(--accent) 40%, var(--line)); }
|
|
194
|
+
.table-filter-toggle.is-active {
|
|
195
|
+
color: var(--fg);
|
|
196
|
+
border-color: var(--accent);
|
|
197
|
+
background: color-mix(in srgb, var(--accent) 18%, var(--bg-raised));
|
|
198
|
+
}
|
|
199
|
+
.table-filter-toggle.has-filters:not(.is-active) {
|
|
200
|
+
color: var(--accent-strong);
|
|
201
|
+
border-color: color-mix(in srgb, var(--accent) 45%, var(--line));
|
|
202
|
+
}
|
|
203
|
+
.table-filter-toggle svg { width: 1rem; height: 1rem; display: block; }
|
|
204
|
+
.table-filter-actions {
|
|
205
|
+
display: flex; justify-content: flex-end; gap: 0.55rem;
|
|
206
|
+
margin-bottom: 0.65rem;
|
|
207
|
+
}
|
|
208
|
+
.column-filter-row { display: none; }
|
|
209
|
+
.column-filter-row.is-open { display: table-row; }
|
|
139
210
|
.column-filter-row th {
|
|
140
211
|
padding: 0.35rem 0.4rem 0.75rem; border-bottom: 1px solid var(--line); font-weight: 400;
|
|
141
212
|
}
|
|
@@ -148,18 +219,50 @@ tbody tr:hover { background: var(--bg-raised); }
|
|
|
148
219
|
border-color: var(--accent);
|
|
149
220
|
box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 25%, transparent);
|
|
150
221
|
}
|
|
151
|
-
.
|
|
222
|
+
body[data-runtime-mode="interactive"] .scroll-window thead tr:first-child th {
|
|
223
|
+
position: sticky;
|
|
224
|
+
top: 0;
|
|
225
|
+
z-index: 2;
|
|
226
|
+
background: var(--bg-raised);
|
|
227
|
+
box-shadow: 0 1px 0 var(--line);
|
|
228
|
+
}
|
|
229
|
+
body[data-runtime-mode="interactive"] .scroll-window thead .column-filter-row.is-open th {
|
|
230
|
+
position: sticky;
|
|
231
|
+
top: 2.65rem;
|
|
232
|
+
z-index: 1;
|
|
233
|
+
background: var(--bg-raised);
|
|
234
|
+
box-shadow: 0 1px 0 var(--line);
|
|
235
|
+
}
|
|
236
|
+
.entity-list { display: grid; gap: 1.5rem; }
|
|
152
237
|
.entity-card {
|
|
153
|
-
border: 1px solid var(--line); border-radius: 10px; padding: 0.9rem 1rem; background: var(--bg
|
|
238
|
+
border: 1px solid var(--line); border-radius: 10px; padding: 0.9rem 1rem; background: var(--bg);
|
|
154
239
|
color: inherit;
|
|
155
240
|
}
|
|
156
241
|
.entity-card:hover { border-color: color-mix(in srgb, var(--accent) 40%, var(--line)); }
|
|
157
|
-
.entity-card h3, .
|
|
242
|
+
.entity-card h3, .entity-card p { margin: 0; }
|
|
243
|
+
.entity-card p + p, .entity-card strong + p, .entity-card h3 + p { margin-top: 0.35rem; }
|
|
244
|
+
.panel > h2, .table-shell > h2, .graph-shell > h2, .print-card > h3 { margin-top: 0; margin-bottom: 0.75rem; }
|
|
245
|
+
.toolbar h2 { margin: 0; }
|
|
158
246
|
.rollup-list { display: grid; gap: 0.5rem; }
|
|
159
247
|
.rollup-list div {
|
|
160
248
|
display: flex; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--line); padding-bottom: 0.4rem;
|
|
161
249
|
}
|
|
162
250
|
.rollup-list dd { margin: 0; }
|
|
251
|
+
.distribution-track {
|
|
252
|
+
height: 0.7rem;
|
|
253
|
+
min-width: 6rem;
|
|
254
|
+
border-radius: 999px;
|
|
255
|
+
background: var(--bg);
|
|
256
|
+
border: 1px solid var(--line);
|
|
257
|
+
overflow: hidden;
|
|
258
|
+
}
|
|
259
|
+
.distribution-fill {
|
|
260
|
+
display: block;
|
|
261
|
+
height: 100%;
|
|
262
|
+
border-radius: inherit;
|
|
263
|
+
background: linear-gradient(90deg, var(--accent-dim), var(--accent-strong));
|
|
264
|
+
min-width: 0;
|
|
265
|
+
}
|
|
163
266
|
.graph-root svg {
|
|
164
267
|
width: 100%; min-height: 620px; background: var(--bg); border-radius: 10px; border: 1px solid var(--line);
|
|
165
268
|
}
|
|
@@ -173,6 +276,7 @@ tbody tr:hover { background: var(--bg-raised); }
|
|
|
173
276
|
transition: fill 180ms ease, stroke 180ms ease, r 180ms ease;
|
|
174
277
|
}
|
|
175
278
|
.graph-root .external circle { fill: var(--rust-muted); stroke: color-mix(in srgb, var(--rust) 50%, transparent); }
|
|
279
|
+
.graph-root .ideaset circle { fill: color-mix(in srgb, #d18616 78%, white); stroke: #d18616; }
|
|
176
280
|
.graph-root .subject circle {
|
|
177
281
|
fill: var(--rust);
|
|
178
282
|
stroke: var(--accent-strong);
|
|
@@ -212,7 +316,6 @@ tbody tr:hover { background: var(--bg-raised); }
|
|
|
212
316
|
.search-results { display: grid; gap: 0.7rem; margin-top: 1rem; }
|
|
213
317
|
.search-result:hover { border-color: var(--accent-dim); }
|
|
214
318
|
.hidden { display: none !important; }
|
|
215
|
-
.breadcrumbs { margin-bottom: 0.65rem; }
|
|
216
319
|
.breadcrumbs a { color: var(--muted); }
|
|
217
320
|
.breadcrumbs a:hover { color: var(--accent-strong); }
|
|
218
321
|
.section-link { font-size: 0.92rem; }
|
|
@@ -261,11 +364,21 @@ pre.code-like {
|
|
|
261
364
|
@media print {
|
|
262
365
|
:root { color-scheme: light; }
|
|
263
366
|
body { background: white; color: black; }
|
|
264
|
-
.topbar, .searchbar, .toolbar .actions, .graph-shell .toolbar, .column-filter-row, .hide-on-print { display: none !important; }
|
|
367
|
+
.topbar, .searchbar, .toolbar .actions, .graph-shell .toolbar, .column-filter-row, .table-filter-toggle, .table-filter-actions, .hide-on-print { display: none !important; }
|
|
265
368
|
.sort-button { cursor: default; }
|
|
266
369
|
.panel, .metric, .card, .table-shell, .graph-shell, .print-card, .search-result, .entity-card {
|
|
267
370
|
background: white; color: black; border-color: #cbd5e1; box-shadow: none;
|
|
268
371
|
}
|
|
372
|
+
.scroll-window {
|
|
373
|
+
max-height: none !important;
|
|
374
|
+
overflow: visible !important;
|
|
375
|
+
border: none !important;
|
|
376
|
+
background: transparent !important;
|
|
377
|
+
}
|
|
378
|
+
.scroll-window thead th {
|
|
379
|
+
position: static !important;
|
|
380
|
+
box-shadow: none !important;
|
|
381
|
+
}
|
|
269
382
|
a { color: black; text-decoration: underline; }
|
|
270
383
|
.print-break-avoid { break-inside: avoid; }
|
|
271
384
|
}
|
|
@@ -377,6 +490,44 @@ function isPlaceholderRow(row) {
|
|
|
377
490
|
return [...row.cells].some(cell => Number(cell.colSpan || 1) > 1);
|
|
378
491
|
}
|
|
379
492
|
|
|
493
|
+
const FILTER_ICON_SVG = '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polygon points="22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"></polygon></svg>';
|
|
494
|
+
|
|
495
|
+
function ensureTableFilterToggle(table, filterRow, filterInputs, syncToggleState) {
|
|
496
|
+
const shell = table.closest('.table-shell') || table.parentElement;
|
|
497
|
+
const toolbar = shell ? shell.querySelector(':scope > .toolbar') : null;
|
|
498
|
+
let actions = toolbar ? toolbar.querySelector('.actions') : null;
|
|
499
|
+
if (toolbar && !actions) {
|
|
500
|
+
actions = document.createElement('div');
|
|
501
|
+
actions.className = 'actions';
|
|
502
|
+
toolbar.appendChild(actions);
|
|
503
|
+
}
|
|
504
|
+
if (!actions) {
|
|
505
|
+
actions = document.createElement('div');
|
|
506
|
+
actions.className = 'actions table-filter-actions';
|
|
507
|
+
table.parentElement?.insertBefore(actions, table);
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
const toggle = document.createElement('button');
|
|
511
|
+
toggle.type = 'button';
|
|
512
|
+
toggle.className = 'table-filter-toggle';
|
|
513
|
+
toggle.setAttribute('aria-label', 'Toggle column filters');
|
|
514
|
+
toggle.setAttribute('aria-expanded', 'false');
|
|
515
|
+
toggle.setAttribute('title', 'Column filters');
|
|
516
|
+
toggle.innerHTML = FILTER_ICON_SVG;
|
|
517
|
+
toggle.addEventListener('click', () => {
|
|
518
|
+
const open = !filterRow.classList.contains('is-open');
|
|
519
|
+
filterRow.classList.toggle('is-open', open);
|
|
520
|
+
toggle.classList.toggle('is-active', open);
|
|
521
|
+
toggle.setAttribute('aria-expanded', open ? 'true' : 'false');
|
|
522
|
+
syncToggleState();
|
|
523
|
+
if (open) {
|
|
524
|
+
filterInputs[0]?.focus();
|
|
525
|
+
}
|
|
526
|
+
});
|
|
527
|
+
actions.appendChild(toggle);
|
|
528
|
+
return toggle;
|
|
529
|
+
}
|
|
530
|
+
|
|
380
531
|
function wireTables(root) {
|
|
381
532
|
const tables = root.querySelectorAll('table');
|
|
382
533
|
const tableControllers = [];
|
|
@@ -395,6 +546,12 @@ function wireTables(root) {
|
|
|
395
546
|
let sortIndex = -1;
|
|
396
547
|
let sortDir = 'asc';
|
|
397
548
|
const filterInputs = [];
|
|
549
|
+
let filterToggle = null;
|
|
550
|
+
const syncToggleState = () => {
|
|
551
|
+
if (!filterToggle) return;
|
|
552
|
+
const hasFilters = filterInputs.some(input => input.value.trim());
|
|
553
|
+
filterToggle.classList.toggle('has-filters', hasFilters);
|
|
554
|
+
};
|
|
398
555
|
const controller = {
|
|
399
556
|
table,
|
|
400
557
|
tbody,
|
|
@@ -417,6 +574,7 @@ function wireTables(root) {
|
|
|
417
574
|
});
|
|
418
575
|
row.classList.toggle('hidden', !(matchesGlobal && matchesColumns));
|
|
419
576
|
}
|
|
577
|
+
syncToggleState();
|
|
420
578
|
}
|
|
421
579
|
};
|
|
422
580
|
|
|
@@ -482,6 +640,7 @@ function wireTables(root) {
|
|
|
482
640
|
filterRow.appendChild(cell);
|
|
483
641
|
});
|
|
484
642
|
thead.appendChild(filterRow);
|
|
643
|
+
filterToggle = ensureTableFilterToggle(table, filterRow, filterInputs, syncToggleState);
|
|
485
644
|
tableControllers.push(controller);
|
|
486
645
|
}
|
|
487
646
|
|
|
@@ -854,6 +1013,7 @@ function wireGraph(root) {
|
|
|
854
1013
|
const group = document.createElementNS('http://www.w3.org/2000/svg', 'g');
|
|
855
1014
|
const classes = ['node'];
|
|
856
1015
|
if (node.isExternal) classes.push('external');
|
|
1016
|
+
if (node.kind === 'ideaset') classes.push('ideaset');
|
|
857
1017
|
if (node.isSubject || node.id === graph.centerId) classes.push('subject');
|
|
858
1018
|
group.setAttribute('class', classes.join(' '));
|
|
859
1019
|
group.dataset.nodeId = node.id;
|
|
@@ -989,6 +1149,7 @@ function wireGraph(root) {
|
|
|
989
1149
|
const statusQuery = lower(statusSelect?.value?.trim());
|
|
990
1150
|
const tagQuery = lower(tagSelect?.value?.trim());
|
|
991
1151
|
if (hideExternal && node.isExternal) return false;
|
|
1152
|
+
if (hideIdeasets && node.kind === 'ideaset') return false;
|
|
992
1153
|
const haystack = [node.name, node.kind, node.fileUri, node.status || '', ...(node.tags || [])].map(lower).join(' ');
|
|
993
1154
|
if (query && !haystack.includes(query)) return false;
|
|
994
1155
|
if (pathQuery && !lower(node.fileUri).includes(pathQuery)) return false;
|
|
@@ -1016,6 +1177,12 @@ function wireGraph(root) {
|
|
|
1016
1177
|
toggleExternal.textContent = hideExternal ? 'Show external' : 'Hide external';
|
|
1017
1178
|
refresh();
|
|
1018
1179
|
});
|
|
1180
|
+
toggleIdeasets?.addEventListener('click', () => {
|
|
1181
|
+
hideIdeasets = !hideIdeasets;
|
|
1182
|
+
toggleIdeasets.classList.toggle('is-active', hideIdeasets);
|
|
1183
|
+
toggleIdeasets.textContent = hideIdeasets ? 'Show ideasets' : 'Hide ideasets';
|
|
1184
|
+
refresh();
|
|
1185
|
+
});
|
|
1019
1186
|
togglePhysics?.addEventListener('click', () => {
|
|
1020
1187
|
livePhysics = !livePhysics;
|
|
1021
1188
|
togglePhysics.classList.toggle('is-active', livePhysics);
|
|
@@ -1035,8 +1202,11 @@ function wireGraph(root) {
|
|
|
1035
1202
|
if (statusSelect) statusSelect.value = '';
|
|
1036
1203
|
if (tagSelect) tagSelect.value = '';
|
|
1037
1204
|
hideExternal = false;
|
|
1205
|
+
hideIdeasets = false;
|
|
1038
1206
|
toggleExternal?.classList.remove('is-active');
|
|
1207
|
+
toggleIdeasets?.classList.remove('is-active');
|
|
1039
1208
|
if (toggleExternal) toggleExternal.textContent = 'Hide external';
|
|
1209
|
+
if (toggleIdeasets) toggleIdeasets.textContent = 'Hide ideasets';
|
|
1040
1210
|
positions.clear();
|
|
1041
1211
|
velocities.clear();
|
|
1042
1212
|
pinnedIds.clear();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-export-assets.js","sourceRoot":"","sources":["../../src/export/html-export-assets.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG
|
|
1
|
+
{"version":3,"file":"html-export-assets.js","sourceRoot":"","sources":["../../src/export/html-export-assets.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgY5B,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA80BrB,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAAC,SAAkB;IACrD,OAAO,wCAAwC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC;AAC3G,CAAC"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import type { ExportClusterRecord, ExportCodeFileRecord, ExportFileRecord, ExportIdeaRecord, ExportSnapshot } from './types.js';
|
|
1
|
+
import type { ExportAttributeRecord, ExportClusterRecord, ExportCodeFileRecord, ExportFileRecord, ExportIdeaRecord, ExportSnapshot } from './types.js';
|
|
2
2
|
export declare function renderHomePage(snapshot: ExportSnapshot): string;
|
|
3
3
|
export declare function renderIdeasIndexPage(snapshot: ExportSnapshot): string;
|
|
4
4
|
export declare function renderFilesIndexPage(snapshot: ExportSnapshot): string;
|
|
5
5
|
export declare function renderCodeFilesIndexPage(snapshot: ExportSnapshot): string;
|
|
6
6
|
export declare function renderClustersIndexPage(snapshot: ExportSnapshot): string;
|
|
7
7
|
export declare function renderAttributesIndexPage(snapshot: ExportSnapshot): string;
|
|
8
|
+
export declare function renderAttributeDetailPage(snapshot: ExportSnapshot, attribute: ExportAttributeRecord): string;
|
|
8
9
|
export declare function renderGraphPage(snapshot: ExportSnapshot): string;
|
|
9
10
|
export declare function renderIdeaDetailPage(snapshot: ExportSnapshot, idea: ExportIdeaRecord): string;
|
|
10
11
|
export declare function renderFileDetailPage(snapshot: ExportSnapshot, file: ExportFileRecord): string;
|