@opensip-cli/dashboard 0.1.10 → 0.1.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. package/README.md +4 -2
  2. package/dist/client-bundle.generated.d.ts.map +1 -1
  3. package/dist/client-bundle.generated.js +1 -1
  4. package/dist/client-bundle.generated.js.map +1 -1
  5. package/dist/code-paths/graph-view-model.js +0 -1
  6. package/dist/code-paths/graph-view-model.js.map +1 -1
  7. package/dist/css/theme.js +1 -1
  8. package/dist/generator.d.ts +2 -0
  9. package/dist/generator.d.ts.map +1 -1
  10. package/dist/generator.js +10 -4
  11. package/dist/generator.js.map +1 -1
  12. package/dist/report-cup-icon.d.ts +17 -0
  13. package/dist/report-cup-icon.d.ts.map +1 -0
  14. package/dist/report-cup-icon.js +34 -0
  15. package/dist/report-cup-icon.js.map +1 -0
  16. package/dist/tool-tabs-registrations.js +10 -0
  17. package/dist/tool-tabs-registrations.js.map +1 -1
  18. package/package.json +3 -3
  19. package/dist/__tests__/catalog-provenance.test.d.ts +0 -11
  20. package/dist/__tests__/catalog-provenance.test.d.ts.map +0 -1
  21. package/dist/__tests__/catalog-provenance.test.js +0 -112
  22. package/dist/__tests__/catalog-provenance.test.js.map +0 -1
  23. package/dist/__tests__/coupling-attribution.test.d.ts +0 -9
  24. package/dist/__tests__/coupling-attribution.test.d.ts.map +0 -1
  25. package/dist/__tests__/coupling-attribution.test.js +0 -95
  26. package/dist/__tests__/coupling-attribution.test.js.map +0 -1
  27. package/dist/__tests__/dashboard-bundle-weight.test.d.ts +0 -23
  28. package/dist/__tests__/dashboard-bundle-weight.test.d.ts.map +0 -1
  29. package/dist/__tests__/dashboard-bundle-weight.test.js +0 -80
  30. package/dist/__tests__/dashboard-bundle-weight.test.js.map +0 -1
  31. package/dist/__tests__/dashboard-cell-containment.test.d.ts +0 -2
  32. package/dist/__tests__/dashboard-cell-containment.test.d.ts.map +0 -1
  33. package/dist/__tests__/dashboard-cell-containment.test.js +0 -52
  34. package/dist/__tests__/dashboard-cell-containment.test.js.map +0 -1
  35. package/dist/__tests__/dashboard-cytoscape-vendor.test.d.ts +0 -10
  36. package/dist/__tests__/dashboard-cytoscape-vendor.test.d.ts.map +0 -1
  37. package/dist/__tests__/dashboard-cytoscape-vendor.test.js +0 -40
  38. package/dist/__tests__/dashboard-cytoscape-vendor.test.js.map +0 -1
  39. package/dist/__tests__/dashboard-editor-link.test.d.ts +0 -14
  40. package/dist/__tests__/dashboard-editor-link.test.d.ts.map +0 -1
  41. package/dist/__tests__/dashboard-editor-link.test.js +0 -87
  42. package/dist/__tests__/dashboard-editor-link.test.js.map +0 -1
  43. package/dist/__tests__/dashboard-el.test.d.ts +0 -18
  44. package/dist/__tests__/dashboard-el.test.d.ts.map +0 -1
  45. package/dist/__tests__/dashboard-el.test.js +0 -90
  46. package/dist/__tests__/dashboard-el.test.js.map +0 -1
  47. package/dist/__tests__/dashboard-filters.test.d.ts +0 -9
  48. package/dist/__tests__/dashboard-filters.test.d.ts.map +0 -1
  49. package/dist/__tests__/dashboard-filters.test.js +0 -87
  50. package/dist/__tests__/dashboard-filters.test.js.map +0 -1
  51. package/dist/__tests__/dashboard-function-card-singleton.test.d.ts +0 -9
  52. package/dist/__tests__/dashboard-function-card-singleton.test.d.ts.map +0 -1
  53. package/dist/__tests__/dashboard-function-card-singleton.test.js +0 -75
  54. package/dist/__tests__/dashboard-function-card-singleton.test.js.map +0 -1
  55. package/dist/__tests__/dashboard-function-card.test.d.ts +0 -10
  56. package/dist/__tests__/dashboard-function-card.test.d.ts.map +0 -1
  57. package/dist/__tests__/dashboard-function-card.test.js +0 -439
  58. package/dist/__tests__/dashboard-function-card.test.js.map +0 -1
  59. package/dist/__tests__/dashboard-function-row.test.d.ts +0 -11
  60. package/dist/__tests__/dashboard-function-row.test.d.ts.map +0 -1
  61. package/dist/__tests__/dashboard-function-row.test.js +0 -102
  62. package/dist/__tests__/dashboard-function-row.test.js.map +0 -1
  63. package/dist/__tests__/dashboard-generator-graph-catalog.test.d.ts +0 -9
  64. package/dist/__tests__/dashboard-generator-graph-catalog.test.d.ts.map +0 -1
  65. package/dist/__tests__/dashboard-generator-graph-catalog.test.js +0 -77
  66. package/dist/__tests__/dashboard-generator-graph-catalog.test.js.map +0 -1
  67. package/dist/__tests__/dashboard-graph-offline.integration.test.d.ts +0 -13
  68. package/dist/__tests__/dashboard-graph-offline.integration.test.d.ts.map +0 -1
  69. package/dist/__tests__/dashboard-graph-offline.integration.test.js +0 -57
  70. package/dist/__tests__/dashboard-graph-offline.integration.test.js.map +0 -1
  71. package/dist/__tests__/dashboard-graph-scc.test.d.ts +0 -17
  72. package/dist/__tests__/dashboard-graph-scc.test.d.ts.map +0 -1
  73. package/dist/__tests__/dashboard-graph-scc.test.js +0 -89
  74. package/dist/__tests__/dashboard-graph-scc.test.js.map +0 -1
  75. package/dist/__tests__/dashboard-graph-view-model.test.d.ts +0 -12
  76. package/dist/__tests__/dashboard-graph-view-model.test.d.ts.map +0 -1
  77. package/dist/__tests__/dashboard-graph-view-model.test.js +0 -331
  78. package/dist/__tests__/dashboard-graph-view-model.test.js.map +0 -1
  79. package/dist/__tests__/dashboard-help-drawer.test.d.ts +0 -9
  80. package/dist/__tests__/dashboard-help-drawer.test.d.ts.map +0 -1
  81. package/dist/__tests__/dashboard-help-drawer.test.js +0 -95
  82. package/dist/__tests__/dashboard-help-drawer.test.js.map +0 -1
  83. package/dist/__tests__/dashboard-html.test.d.ts +0 -2
  84. package/dist/__tests__/dashboard-html.test.d.ts.map +0 -1
  85. package/dist/__tests__/dashboard-html.test.js +0 -169
  86. package/dist/__tests__/dashboard-html.test.js.map +0 -1
  87. package/dist/__tests__/dashboard-indexes.test.d.ts +0 -11
  88. package/dist/__tests__/dashboard-indexes.test.d.ts.map +0 -1
  89. package/dist/__tests__/dashboard-indexes.test.js +0 -214
  90. package/dist/__tests__/dashboard-indexes.test.js.map +0 -1
  91. package/dist/__tests__/dashboard-pagination.test.d.ts +0 -15
  92. package/dist/__tests__/dashboard-pagination.test.d.ts.map +0 -1
  93. package/dist/__tests__/dashboard-pagination.test.js +0 -140
  94. package/dist/__tests__/dashboard-pagination.test.js.map +0 -1
  95. package/dist/__tests__/dashboard-path-utils.test.d.ts +0 -13
  96. package/dist/__tests__/dashboard-path-utils.test.d.ts.map +0 -1
  97. package/dist/__tests__/dashboard-path-utils.test.js +0 -62
  98. package/dist/__tests__/dashboard-path-utils.test.js.map +0 -1
  99. package/dist/__tests__/dashboard-search.test.d.ts +0 -10
  100. package/dist/__tests__/dashboard-search.test.d.ts.map +0 -1
  101. package/dist/__tests__/dashboard-search.test.js +0 -52
  102. package/dist/__tests__/dashboard-search.test.js.map +0 -1
  103. package/dist/__tests__/dashboard-sessions.test.d.ts +0 -14
  104. package/dist/__tests__/dashboard-sessions.test.d.ts.map +0 -1
  105. package/dist/__tests__/dashboard-sessions.test.js +0 -332
  106. package/dist/__tests__/dashboard-sessions.test.js.map +0 -1
  107. package/dist/__tests__/dashboard-trace.test.d.ts +0 -16
  108. package/dist/__tests__/dashboard-trace.test.d.ts.map +0 -1
  109. package/dist/__tests__/dashboard-trace.test.js +0 -170
  110. package/dist/__tests__/dashboard-trace.test.js.map +0 -1
  111. package/dist/__tests__/dashboard-validation.integration.test.d.ts +0 -14
  112. package/dist/__tests__/dashboard-validation.integration.test.d.ts.map +0 -1
  113. package/dist/__tests__/dashboard-validation.integration.test.js +0 -221
  114. package/dist/__tests__/dashboard-validation.integration.test.js.map +0 -1
  115. package/dist/__tests__/dashboard-view-conformance.test.d.ts +0 -12
  116. package/dist/__tests__/dashboard-view-conformance.test.d.ts.map +0 -1
  117. package/dist/__tests__/dashboard-view-conformance.test.js +0 -52
  118. package/dist/__tests__/dashboard-view-conformance.test.js.map +0 -1
  119. package/dist/__tests__/dashboard-view-coupling.test.d.ts +0 -7
  120. package/dist/__tests__/dashboard-view-coupling.test.d.ts.map +0 -1
  121. package/dist/__tests__/dashboard-view-coupling.test.js +0 -360
  122. package/dist/__tests__/dashboard-view-coupling.test.js.map +0 -1
  123. package/dist/__tests__/dashboard-view-distribution.test.d.ts +0 -10
  124. package/dist/__tests__/dashboard-view-distribution.test.d.ts.map +0 -1
  125. package/dist/__tests__/dashboard-view-distribution.test.js +0 -249
  126. package/dist/__tests__/dashboard-view-distribution.test.js.map +0 -1
  127. package/dist/__tests__/dashboard-view-graph.test.d.ts +0 -13
  128. package/dist/__tests__/dashboard-view-graph.test.d.ts.map +0 -1
  129. package/dist/__tests__/dashboard-view-graph.test.js +0 -299
  130. package/dist/__tests__/dashboard-view-graph.test.js.map +0 -1
  131. package/dist/__tests__/dashboard-view-template.test.d.ts +0 -20
  132. package/dist/__tests__/dashboard-view-template.test.d.ts.map +0 -1
  133. package/dist/__tests__/dashboard-view-template.test.js +0 -206
  134. package/dist/__tests__/dashboard-view-template.test.js.map +0 -1
  135. package/dist/__tests__/dashboard.test.d.ts +0 -2
  136. package/dist/__tests__/dashboard.test.d.ts.map +0 -1
  137. package/dist/__tests__/dashboard.test.js +0 -129
  138. package/dist/__tests__/dashboard.test.js.map +0 -1
  139. package/dist/__tests__/graph-tab.test.d.ts +0 -10
  140. package/dist/__tests__/graph-tab.test.d.ts.map +0 -1
  141. package/dist/__tests__/graph-tab.test.js +0 -78
  142. package/dist/__tests__/graph-tab.test.js.map +0 -1
  143. package/dist/client/el.d.ts +0 -17
  144. package/dist/client/el.d.ts.map +0 -1
  145. package/dist/client/el.js +0 -36
  146. package/dist/client/el.js.map +0 -1
  147. package/dist/code-paths/__tests__/views-registry.test.d.ts +0 -18
  148. package/dist/code-paths/__tests__/views-registry.test.d.ts.map +0 -1
  149. package/dist/code-paths/__tests__/views-registry.test.js +0 -41
  150. package/dist/code-paths/__tests__/views-registry.test.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard-view-distribution.test.js","sourceRoot":"","sources":["../../src/__tests__/dashboard-view-distribution.test.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- /**
2
- * @vitest-environment jsdom
3
- *
4
- * View 8 (Visualization) — Cytoscape PACKAGE node-link view (item 10/11).
5
- *
6
- * The emitter is snapshotted (matches the other view-*.test.ts pattern) and
7
- * exercised structurally: the view registers with id 'graph' and label
8
- * 'Visualization', renders the layout selector + canvas from an embedded
9
- * package-level view-model blob, falls back to an empty state when the blob is
10
- * missing, and bans any @opensip-cli/graph import.
11
- */
12
- export {};
13
- //# sourceMappingURL=dashboard-view-graph.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard-view-graph.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/dashboard-view-graph.test.ts"],"names":[],"mappings":"AACA;;;;;;;;;;GAUG"}
@@ -1,299 +0,0 @@
1
- /// <reference lib="dom" />
2
- /**
3
- * @vitest-environment jsdom
4
- *
5
- * View 8 (Visualization) — Cytoscape PACKAGE node-link view (item 10/11).
6
- *
7
- * The emitter is snapshotted (matches the other view-*.test.ts pattern) and
8
- * exercised structurally: the view registers with id 'graph' and label
9
- * 'Visualization', renders the layout selector + canvas from an embedded
10
- * package-level view-model blob, falls back to an empty state when the blob is
11
- * missing, and bans any @opensip-cli/graph import.
12
- */
13
- import { describe, expect, it, beforeEach } from 'vitest';
14
- import { DASHBOARD_CLIENT_BUNDLE } from '../client-bundle.generated.js';
15
- import { dashboardCytoscapeVendorJs } from '../code-paths/cytoscape-vendor.js';
16
- function loadEnv(withVendor) {
17
- // The Visualization view (and the whole Code Paths panel + prelude) now lives
18
- // in the typed client bundle (L4): loading the bundle registers the view into
19
- // the bundle's `views` global at IIFE eval. The cytoscape vendor blob is NOT
20
- // in the bundle (it stays a string-emitted vendor blob, inlined AHEAD of the
21
- // bundle in production); the bundle registers the dagre layout lazily at first
22
- // render, so the vendor can be prepended here when requested. Declare the page
23
- // globals the bundle reads.
24
- const head = `
25
- var sessions = [];
26
- var EDITOR_PROTOCOL = null;
27
- var graphCatalog = null;
28
- var graphIndexes = { byBodyHash: new Map(), bySimpleName: new Map(), callees: new Map(), callers: new Map() };
29
- `;
30
- const parts = [head];
31
- // Vendor blob FIRST so the cytoscape global is defined before the bundle's
32
- // lazy dagre registration runs at render time.
33
- if (withVendor)
34
- parts.push(dashboardCytoscapeVendorJs());
35
- parts.push(DASHBOARD_CLIENT_BUNDLE, 'return { views };');
36
- // eslint-disable-next-line @typescript-eslint/no-implied-eval, sonarjs/code-eval -- Trusted source: our own bundled dashboard JS.
37
- const factory = new Function(parts.join('\n'));
38
- return factory();
39
- }
40
- function embedViewModel(vm) {
41
- const blob = document.createElement('script');
42
- blob.type = 'application/json';
43
- blob.id = 'graph-view-model';
44
- blob.textContent = JSON.stringify(vm);
45
- document.body.append(blob);
46
- }
47
- // Package-level sample: two packages, one directed edge pkg-a → pkg-b.
48
- const SAMPLE_VM = {
49
- language: 'typescript',
50
- nodes: [
51
- { id: 'pkg-a', label: 'pkg-a', totalCoupling: 3, sccId: null },
52
- { id: 'pkg-b', label: 'pkg-b', totalCoupling: 3, sccId: null },
53
- ],
54
- edges: [{ source: 'pkg-a', target: 'pkg-b', weight: 3, isCycleEdge: false }],
55
- };
56
- beforeEach(() => {
57
- document.body.innerHTML = '';
58
- });
59
- describe('View 8 — Visualization', () => {
60
- it('registers a view with id "graph" and label "Visualization"', () => {
61
- // The label may evolve but the id must NOT churn (deep-link hashes depend
62
- // on it). view-graph.ts is now a typed bundle module rather than a snapshot-
63
- // tested JS-string emitter, so the registered descriptor IS the assertion.
64
- const env = loadEnv(false);
65
- const view = env.views.find((v) => v.id === 'graph');
66
- expect(view).toBeDefined();
67
- expect(view.label).toBe('Visualization');
68
- expect(typeof view.render).toBe('function');
69
- expect(typeof view.onActivate).toBe('function');
70
- });
71
- it('renders the empty state when no view-model blob is present', () => {
72
- const env = loadEnv(false);
73
- const c = document.createElement('div');
74
- env.views.find((v) => v.id === 'graph').render(c, null, null, null);
75
- expect(c.querySelector('.empty')).not.toBeNull();
76
- expect(c.querySelector('.empty').textContent).toContain('No graph to display');
77
- });
78
- it('renders the renderer-unavailable state when cytoscape is missing', () => {
79
- const env = loadEnv(false); // no vendor → no cytoscape global
80
- embedViewModel(SAMPLE_VM);
81
- const c = document.createElement('div');
82
- document.body.append(c);
83
- env.views.find((v) => v.id === 'graph').render(c, null, null, null);
84
- expect(c.querySelector('.empty').textContent).toContain('Graph renderer unavailable');
85
- expect(c.querySelector('#code-paths-graph-canvas')).toBeNull();
86
- });
87
- it('renders the layout selector as a dropdown with dagre/cose/breadthfirst', () => {
88
- const env = loadEnv(true);
89
- embedViewModel(SAMPLE_VM);
90
- const c = document.createElement('div');
91
- document.body.append(c);
92
- env.views.find((v) => v.id === 'graph').render(c, null, null, null);
93
- const layout = c.querySelector('select[data-control="layout"]');
94
- expect(layout).not.toBeNull();
95
- expect([...layout.options].map((o) => o.value)).toEqual(['dagre', 'cose', 'breadthfirst']);
96
- expect(layout.value).toBe('dagre'); // default
97
- });
98
- it('renders a section heading with an ⓘ help button (consistent with Coupling/Functions)', () => {
99
- const env = loadEnv(true);
100
- embedViewModel(SAMPLE_VM);
101
- const c = document.createElement('div');
102
- document.body.append(c);
103
- env.views.find((v) => v.id === 'graph').render(c, null, null, null);
104
- const heading = c.querySelector('h3');
105
- expect(heading).not.toBeNull();
106
- expect(heading.textContent).toContain('Visualization');
107
- const info = c.querySelector('.section-info');
108
- expect(info).not.toBeNull();
109
- });
110
- it('renders the "Highlight cycles" toggle as a checkbox in the control toolbar', () => {
111
- const env = loadEnv(true);
112
- embedViewModel(SAMPLE_VM);
113
- const c = document.createElement('div');
114
- document.body.append(c);
115
- env.views.find((v) => v.id === 'graph').render(c, null, null, null);
116
- const sccCb = c.querySelector('input[type="checkbox"][data-scc-toggle]');
117
- expect(sccCb).not.toBeNull();
118
- const lbl = c.querySelector('.code-paths-graph-checkbox');
119
- expect(lbl).not.toBeNull();
120
- expect(lbl.textContent).toContain('Highlight cycles');
121
- });
122
- it('mounts a cytoscape canvas when the renderer is present', () => {
123
- const env = loadEnv(true);
124
- embedViewModel(SAMPLE_VM);
125
- const c = document.createElement('div');
126
- document.body.append(c);
127
- env.views.find((v) => v.id === 'graph').render(c, null, null, null);
128
- expect(c.querySelector('#code-paths-graph-canvas')).not.toBeNull();
129
- });
130
- it('renders the package-name search box above the canvas', () => {
131
- const env = loadEnv(true);
132
- embedViewModel(SAMPLE_VM);
133
- const c = document.createElement('div');
134
- document.body.append(c);
135
- env.views.find((v) => v.id === 'graph').render(c, null, null, null);
136
- const input = c.querySelector('#code-paths-graph-search-input');
137
- expect(input).not.toBeNull();
138
- expect(input.getAttribute('placeholder')).toContain('package');
139
- });
140
- it('does not consult the shared Explore filterState (the view owns its controls)', () => {
141
- // The view renders fully with a null filterState — it owns its own Scope/Kind
142
- // controls and never reads the shared Explore filter. (Package level is
143
- // whole-graph; function level applies its OWN filter inside the projector.)
144
- const env = loadEnv(true);
145
- embedViewModel(SAMPLE_VM);
146
- const c = document.createElement('div');
147
- document.body.append(c);
148
- env.views.find((v) => v.id === 'graph').render(c, null, null, null);
149
- expect(c.querySelector('#code-paths-graph-canvas')).not.toBeNull();
150
- expect(c.textContent).not.toContain('No nodes match the active filters');
151
- });
152
- it('renders Level/Scope/Package/Kind/Edges, with Package, Kind & Edges disabled (not hidden) at package level', () => {
153
- const env = loadEnv(true);
154
- embedViewModel(SAMPLE_VM);
155
- const c = document.createElement('div');
156
- document.body.append(c);
157
- env.views.find((v) => v.id === 'graph').render(c, null, null, null);
158
- const level = c.querySelector('select[data-control="level"]');
159
- const scope = c.querySelector('select[data-control="scope"]');
160
- const pkg = c.querySelector('select[data-control="package"]');
161
- // Kind is a custom multi-select dropdown (trigger button + checkbox panel),
162
- // not a native <select multiple>.
163
- const kind = c.querySelector('button[data-control="kind"]');
164
- const edges = c.querySelector('select[data-control="granularity"]');
165
- expect(level).not.toBeNull();
166
- expect(scope).not.toBeNull();
167
- expect(level.value).toBe('package'); // default
168
- expect(kind).not.toBeNull();
169
- expect(kind.classList.contains('code-paths-graph-ms-trigger')).toBe(true);
170
- // Edges is now ALWAYS rendered (was hidden until function level).
171
- expect(edges).not.toBeNull();
172
- // Package, Kind & Edges only apply at function level → disabled (greyed),
173
- // not hidden, at package level — consistent across the three.
174
- expect(pkg.disabled).toBe(true);
175
- expect(kind.disabled).toBe(true);
176
- expect(edges.disabled).toBe(true);
177
- });
178
- it('Kind multi-select enables at function level and updates the graph on close', () => {
179
- const occA = {
180
- bodyHash: 'A',
181
- simpleName: 'a',
182
- filePath: 'packages/pkg-a/src/a.ts',
183
- kind: 'function-declaration',
184
- inTestFile: false,
185
- qualifiedName: 'a',
186
- };
187
- const occB = {
188
- bodyHash: 'B',
189
- simpleName: 'b',
190
- filePath: 'packages/pkg-a/src/b.ts',
191
- kind: 'method',
192
- inTestFile: false,
193
- qualifiedName: 'b',
194
- };
195
- const indexes = {
196
- byBodyHash: new Map([
197
- ['A', occA],
198
- ['B', occB],
199
- ]),
200
- occurrencesByHash: new Map([
201
- ['A', [occA]],
202
- ['B', [occB]],
203
- ]),
204
- bySimpleName: new Map(),
205
- callees: new Map([['A', ['B']]]),
206
- callers: new Map([['B', ['A']]]),
207
- };
208
- const catalog = {
209
- version: '2.0',
210
- tool: 'graph',
211
- language: 'typescript',
212
- builtAt: 'now',
213
- functions: { a: [occA], b: [occB] },
214
- };
215
- const env = loadEnv(true);
216
- const c = document.createElement('div');
217
- document.body.append(c);
218
- env.views.find((v) => v.id === 'graph').render(c, catalog, indexes, null);
219
- // Switch to function level + pick pkg-a so Kind becomes enabled.
220
- const level = c.querySelector('select[data-control="level"]');
221
- level.value = 'function';
222
- level.dispatchEvent(new Event('change'));
223
- const pkg = c.querySelector('select[data-control="package"]');
224
- pkg.value = 'pkg-a';
225
- pkg.dispatchEvent(new Event('change'));
226
- const kindTrigger = c.querySelector('button[data-control="kind"]');
227
- expect(kindTrigger.disabled).toBe(false);
228
- expect(kindTrigger.textContent).toContain('All kinds');
229
- // Open the popover, check one kind, close → graph re-renders, canvas present.
230
- kindTrigger.dispatchEvent(new MouseEvent('click', { bubbles: true }));
231
- const boxes = c.querySelectorAll('.code-paths-graph-ms-panel input[type="checkbox"]');
232
- expect(boxes.length).toBeGreaterThan(0);
233
- boxes[0].checked = true;
234
- boxes[0].dispatchEvent(new Event('change'));
235
- // Closing (re-click) applies the selection and re-renders.
236
- c.querySelector('button[data-control="kind"]').dispatchEvent(new MouseEvent('click', { bubbles: true }));
237
- expect(c.querySelector('#code-paths-graph-canvas')).not.toBeNull();
238
- });
239
- it("projects a single package's function graph at function level (intra-package)", () => {
240
- // Two functions in pkg-a, a → b. Switching to function level + selecting
241
- // pkg-a should project them into a Cytoscape canvas (intra-package default).
242
- const occA = {
243
- bodyHash: 'A',
244
- simpleName: 'a',
245
- filePath: 'packages/pkg-a/src/a.ts',
246
- kind: 'function-declaration',
247
- inTestFile: false,
248
- qualifiedName: 'a',
249
- };
250
- const occB = {
251
- bodyHash: 'B',
252
- simpleName: 'b',
253
- filePath: 'packages/pkg-a/src/b.ts',
254
- kind: 'function-declaration',
255
- inTestFile: false,
256
- qualifiedName: 'b',
257
- };
258
- const indexes = {
259
- byBodyHash: new Map([
260
- ['A', occA],
261
- ['B', occB],
262
- ]),
263
- occurrencesByHash: new Map([
264
- ['A', [occA]],
265
- ['B', [occB]],
266
- ]),
267
- bySimpleName: new Map(),
268
- callees: new Map([['A', ['B']]]),
269
- callers: new Map([['B', ['A']]]),
270
- };
271
- const catalog = {
272
- version: '2.0',
273
- tool: 'graph',
274
- language: 'typescript',
275
- builtAt: 'now',
276
- functions: { a: [occA], b: [occB] },
277
- };
278
- const env = loadEnv(true);
279
- const c = document.createElement('div');
280
- document.body.append(c);
281
- env.views.find((v) => v.id === 'graph').render(c, catalog, indexes, null);
282
- // Switch Level → function (re-renders in place via the change handler).
283
- const level = c.querySelector('[data-control="level"]');
284
- level.value = 'function';
285
- level.dispatchEvent(new Event('change'));
286
- // Before a package is chosen, the view prompts for one (no canvas yet).
287
- expect(c.querySelector('#code-paths-graph-canvas')).toBeNull();
288
- expect(c.querySelector('.empty').textContent).toContain('Select a package');
289
- // Choose pkg-a → the function graph projects and the canvas mounts.
290
- const pkg = c.querySelector('[data-control="package"]');
291
- expect([...pkg.options].map((o) => o.value)).toContain('pkg-a');
292
- pkg.value = 'pkg-a';
293
- pkg.dispatchEvent(new Event('change'));
294
- expect(c.querySelector('#code-paths-graph-canvas')).not.toBeNull();
295
- // The Edges (intra vs cross-package) toggle appears only at function level.
296
- expect(c.querySelector('[data-control="granularity"]')).not.toBeNull();
297
- });
298
- });
299
- //# sourceMappingURL=dashboard-view-graph.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard-view-graph.test.js","sourceRoot":"","sources":["../../src/__tests__/dashboard-view-graph.test.ts"],"names":[],"mappings":"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"}
@@ -1,20 +0,0 @@
1
- /**
2
- * @vitest-environment jsdom
3
- *
4
- * Ranked-view skeleton — `defineRankedView`.
5
- *
6
- * `defineRankedView` registers a ranked-list view (rank-and-render skeleton)
7
- * into the shared `views` registry. It used to splice JS-source strings into an
8
- * emitted `views.push({ … })` literal; it is now a typed bundle function taking
9
- * real callbacks. These tests load the client bundle (which exposes
10
- * `defineRankedView` + `views` as page globals), register a MINIMAL config (all
11
- * optional flags omitted) and a MAXIMAL config (every flag on), then assert on
12
- * the RENDERED DOM so a regression in the controls a ranked view ships is
13
- * caught:
14
- * - minimal → no controls row, no search input, no Kind/Package selects, no
15
- * toggle, no onActivate hook, the default `passesFilter` predicate;
16
- * - maximal → all of those present, with the supplied predicate / row-extras /
17
- * custom columns active.
18
- */
19
- export {};
20
- //# sourceMappingURL=dashboard-view-template.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard-view-template.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/dashboard-view-template.test.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;GAiBG"}
@@ -1,206 +0,0 @@
1
- /// <reference lib="dom" />
2
- /**
3
- * @vitest-environment jsdom
4
- *
5
- * Ranked-view skeleton — `defineRankedView`.
6
- *
7
- * `defineRankedView` registers a ranked-list view (rank-and-render skeleton)
8
- * into the shared `views` registry. It used to splice JS-source strings into an
9
- * emitted `views.push({ … })` literal; it is now a typed bundle function taking
10
- * real callbacks. These tests load the client bundle (which exposes
11
- * `defineRankedView` + `views` as page globals), register a MINIMAL config (all
12
- * optional flags omitted) and a MAXIMAL config (every flag on), then assert on
13
- * the RENDERED DOM so a regression in the controls a ranked view ships is
14
- * caught:
15
- * - minimal → no controls row, no search input, no Kind/Package selects, no
16
- * toggle, no onActivate hook, the default `passesFilter` predicate;
17
- * - maximal → all of those present, with the supplied predicate / row-extras /
18
- * custom columns active.
19
- */
20
- import { describe, expect, it, beforeEach } from 'vitest';
21
- import { DASHBOARD_CLIENT_BUNDLE } from '../client-bundle.generated.js';
22
- function loadEnv() {
23
- // The ranked-view skeleton lives in the typed client bundle (L4); loading the
24
- // bundle exposes `defineRankedView`, `views`, `buildIndexes`, `filterState` as
25
- // page globals. Declare the page globals the bundle reads at load.
26
- const head = `
27
- var sessions = [];
28
- var EDITOR_PROTOCOL = null;
29
- var graphCatalog = null;
30
- var graphIndexes = null;
31
- `;
32
- const tail = `return { defineRankedView, views, buildIndexes, filterState };`;
33
- // eslint-disable-next-line @typescript-eslint/no-implied-eval, sonarjs/code-eval -- Trusted source: our own bundled dashboard JS.
34
- const factory = new Function(head + DASHBOARD_CLIENT_BUNDLE + tail);
35
- return factory();
36
- }
37
- function makeOcc(over) {
38
- return {
39
- qualifiedName: over.simpleName,
40
- line: 1,
41
- column: 0,
42
- endLine: 5,
43
- kind: 'function-declaration',
44
- params: [],
45
- returnType: null,
46
- enclosingClass: null,
47
- decorators: [],
48
- visibility: 'exported',
49
- inTestFile: false,
50
- definedInGenerated: false,
51
- calls: [],
52
- ...over,
53
- };
54
- }
55
- const SAMPLE = {
56
- version: '2.0',
57
- tool: 'graph',
58
- language: 'typescript',
59
- builtAt: 'now',
60
- functions: {
61
- a: [makeOcc({ bodyHash: 'a', simpleName: 'alpha', filePath: 'packages/cli/src/a.ts' })],
62
- b: [
63
- makeOcc({
64
- bodyHash: 'b',
65
- simpleName: 'beta',
66
- filePath: 'packages/cli/src/b.ts',
67
- kind: 'method',
68
- }),
69
- ],
70
- },
71
- };
72
- function minimalConfig() {
73
- return {
74
- id: 'plain',
75
- label: 'Plain',
76
- help: { title: 'Plain', sections: [{ heading: 'h', body: 'b' }] },
77
- metric: (occ) => occ.line ?? 0,
78
- columns: [{ label: 'Function', value: (o) => o.simpleName }],
79
- headingText: 'Plain things',
80
- emptyMessage: 'Nothing here.',
81
- };
82
- }
83
- function renderConfig(env, config) {
84
- env.defineRankedView(config);
85
- const view = env.views.find((v) => v.id === config.id);
86
- const host = document.createElement('div');
87
- document.body.append(host);
88
- const indexes = env.buildIndexes(SAMPLE);
89
- view.render(host, SAMPLE, indexes, env.filterState);
90
- return host;
91
- }
92
- beforeEach(() => {
93
- document.body.innerHTML = '';
94
- });
95
- describe('defineRankedView — minimal config (default/off branches)', () => {
96
- it('registers a view with the configured id, label, and heading count', () => {
97
- const env = loadEnv();
98
- const host = renderConfig(env, minimalConfig());
99
- const view = env.views.find((v) => v.id === 'plain');
100
- expect(view).toBeDefined();
101
- expect(view.label).toBe('Plain');
102
- expect(host.querySelector('h3').textContent).toContain('Plain things (2)');
103
- });
104
- it('renders rows with the default (passesFilter) predicate', () => {
105
- const env = loadEnv();
106
- const host = renderConfig(env, minimalConfig());
107
- // Both sample functions pass the default whole-graph filter.
108
- expect(host.querySelectorAll('[data-body-hash]').length).toBe(2);
109
- });
110
- it('renders NO controls row, search input, Kind/Package selects, or toggle', () => {
111
- const env = loadEnv();
112
- const host = renderConfig(env, minimalConfig());
113
- expect(host.querySelector('.code-paths-ranked-controls')).toBeNull();
114
- expect(host.querySelector('#code-paths-search-plain')).toBeNull();
115
- expect(host.querySelector('select[data-control="fn-kind"]')).toBeNull();
116
- expect(host.querySelector('select[data-control="fn-package"]')).toBeNull();
117
- expect(host.querySelector('input[data-control="fn-toggle"]')).toBeNull();
118
- });
119
- it('registers no onActivate hook for a non-search view', () => {
120
- const env = loadEnv();
121
- env.defineRankedView(minimalConfig());
122
- const view = env.views.find((v) => v.id === 'plain');
123
- expect(view.onActivate).toBeUndefined();
124
- });
125
- });
126
- function maximalConfig() {
127
- return {
128
- id: 'rich-1',
129
- label: 'Rich',
130
- help: { title: 'Rich', sections: [{ heading: 'h', body: 'b' }] },
131
- metric: (occ) => occ.line ?? 0,
132
- // Custom predicate: keep only function-declarations.
133
- predicate: (occ) => occ.kind === 'function-declaration',
134
- rowExtras: (occ) => ({ __thumb: (occ.params ?? []).length }),
135
- columns: [{ label: 'Name', value: (o) => o.simpleName }],
136
- headingText: 'Rich functions',
137
- emptyMessage: 'No rich functions.',
138
- searchByName: true,
139
- filterByKindPackage: true,
140
- filterToggle: { label: 'Test-only', predicate: (occ) => occ.inTestFile === true },
141
- };
142
- }
143
- describe('defineRankedView — maximal config (populated branches)', () => {
144
- it('applies the custom predicate (drops non-matching rows)', () => {
145
- const env = loadEnv();
146
- const host = renderConfig(env, maximalConfig());
147
- // Only 'alpha' is a function-declaration; 'beta' is a method → dropped.
148
- expect(host.querySelectorAll('[data-body-hash]').length).toBe(1);
149
- expect(host.textContent).toContain('alpha');
150
- expect(host.textContent).not.toContain('beta');
151
- });
152
- it('renders the controls row with search, Kind/Package selects, and toggle', () => {
153
- const env = loadEnv();
154
- const host = renderConfig(env, maximalConfig());
155
- expect(host.querySelector('.code-paths-ranked-controls')).not.toBeNull();
156
- expect(host.querySelector('#code-paths-search-rich-1')).not.toBeNull();
157
- expect(host.querySelector('select[data-control="fn-kind"]')).not.toBeNull();
158
- expect(host.querySelector('select[data-control="fn-package"]')).not.toBeNull();
159
- expect(host.querySelector('input[data-control="fn-toggle"]')).not.toBeNull();
160
- expect(host.textContent).toContain('Test-only');
161
- });
162
- it('registers an onActivate hook that focuses the search box', () => {
163
- const env = loadEnv();
164
- env.defineRankedView(maximalConfig());
165
- const view = env.views.find((v) => v.id === 'rich-1');
166
- expect(typeof view.onActivate).toBe('function');
167
- });
168
- });
169
- describe('defineRankedView — partial configs (each flag independently)', () => {
170
- it('search-only: controls + search input, but no Kind/Package or toggle', () => {
171
- const env = loadEnv();
172
- const host = renderConfig(env, { ...minimalConfig(), id: 'searchonly', searchByName: true });
173
- expect(host.querySelector('.code-paths-ranked-controls')).not.toBeNull();
174
- expect(host.querySelector('#code-paths-search-searchonly')).not.toBeNull();
175
- expect(host.querySelector('select[data-control="fn-kind"]')).toBeNull();
176
- expect(host.querySelector('input[data-control="fn-toggle"]')).toBeNull();
177
- const view = env.views.find((v) => v.id === 'searchonly');
178
- expect(typeof view.onActivate).toBe('function');
179
- });
180
- it('toggle-only: controls + toggle checkbox, but no search input or selects', () => {
181
- const env = loadEnv();
182
- const host = renderConfig(env, {
183
- ...minimalConfig(),
184
- id: 'toggleonly',
185
- filterToggle: { label: 'Only X', predicate: () => true },
186
- });
187
- expect(host.querySelector('.code-paths-ranked-controls')).not.toBeNull();
188
- expect(host.querySelector('input[data-control="fn-toggle"]')).not.toBeNull();
189
- expect(host.querySelector('#code-paths-search-toggleonly')).toBeNull();
190
- expect(host.querySelector('select[data-control="fn-kind"]')).toBeNull();
191
- const view = env.views.find((v) => v.id === 'toggleonly');
192
- // A toggle without search → no auto-focus hook.
193
- expect(view.onActivate).toBeUndefined();
194
- });
195
- it('kind/package-only: selects present, but no search input or toggle', () => {
196
- const env = loadEnv();
197
- const host = renderConfig(env, { ...minimalConfig(), id: 'kponly', filterByKindPackage: true });
198
- expect(host.querySelector('select[data-control="fn-kind"]')).not.toBeNull();
199
- expect(host.querySelector('select[data-control="fn-package"]')).not.toBeNull();
200
- expect(host.querySelector('#code-paths-search-kponly')).toBeNull();
201
- expect(host.querySelector('input[data-control="fn-toggle"]')).toBeNull();
202
- const view = env.views.find((v) => v.id === 'kponly');
203
- expect(view.onActivate).toBeUndefined();
204
- });
205
- });
206
- //# sourceMappingURL=dashboard-view-template.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard-view-template.test.js","sourceRoot":"","sources":["../../src/__tests__/dashboard-view-template.test.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAE1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAqDxE,SAAS,OAAO;IACd,8EAA8E;IAC9E,+EAA+E;IAC/E,mEAAmE;IACnE,MAAM,IAAI,GAAG;;;;;CAKd,CAAC;IACA,MAAM,IAAI,GAAG,gEAAgE,CAAC;IAC9E,kIAAkI;IAClI,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAC,IAAI,GAAG,uBAAuB,GAAG,IAAI,CAAC,CAAC;IACpE,OAAO,OAAO,EAAS,CAAC;AAC1B,CAAC;AAED,SAAS,OAAO,CACd,IAIC;IAED,OAAO;QACL,aAAa,EAAE,IAAI,CAAC,UAAU;QAC9B,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,IAAI;QAChB,cAAc,EAAE,IAAI;QACpB,UAAU,EAAE,EAAE;QACd,UAAU,EAAE,UAAU;QACtB,UAAU,EAAE,KAAK;QACjB,kBAAkB,EAAE,KAAK;QACzB,KAAK,EAAE,EAAE;QACT,GAAG,IAAI;KACR,CAAC;AACJ,CAAC;AAED,MAAM,MAAM,GAAiB;IAC3B,OAAO,EAAE,KAAK;IACd,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE,YAAY;IACtB,OAAO,EAAE,KAAK;IACd,SAAS,EAAE;QACT,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,CAAC,CAAC;QACvF,CAAC,EAAE;YACD,OAAO,CAAC;gBACN,QAAQ,EAAE,GAAG;gBACb,UAAU,EAAE,MAAM;gBAClB,QAAQ,EAAE,uBAAuB;gBACjC,IAAI,EAAE,QAAQ;aACf,CAAC;SACH;KACF;CACF,CAAC;AAEF,SAAS,aAAa;IACpB,OAAO;QACL,EAAE,EAAE,OAAO;QACX,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE;QACjE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;QAC9B,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QAC5D,WAAW,EAAE,cAAc;QAC3B,YAAY,EAAE,eAAe;KAC9B,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,GAAQ,EAAE,MAAwB;IACtD,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAE,CAAC;IACxD,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACzC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;IACpD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,UAAU,CAAC,GAAG,EAAE;IACd,QAAQ,CAAC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;AAC/B,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,0DAA0D,EAAE,GAAG,EAAE;IACxE,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC3E,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAE,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC;QAChD,6DAA6D;QAC7D,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QAChF,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,6BAA6B,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACrE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,0BAA0B,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAClE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACxE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,mCAAmC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC3E,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,iCAAiC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;QACtB,GAAG,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,CAAC;QACtC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAE,CAAC;QACtD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,aAAa,EAAE,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,SAAS,aAAa;IACpB,OAAO;QACL,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE;QAChE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;QAC9B,qDAAqD;QACrD,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,sBAAsB;QACvD,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;QAC5D,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QACxD,WAAW,EAAE,gBAAgB;QAC7B,YAAY,EAAE,oBAAoB;QAClC,YAAY,EAAE,IAAI;QAClB,mBAAmB,EAAE,IAAI;QACzB,YAAY,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,KAAK,IAAI,EAAE;KAClF,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,wDAAwD,EAAE,GAAG,EAAE;IACtE,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC;QAChD,wEAAwE;QACxE,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QAChF,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,6BAA6B,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACzE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,2BAA2B,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACvE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC5E,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,mCAAmC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC/E,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,iCAAiC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC7E,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;QACtB,GAAG,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,CAAC;QACtC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAE,CAAC;QACvD,MAAM,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,8DAA8D,EAAE,GAAG,EAAE;IAC5E,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC7E,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,EAAE,GAAG,aAAa,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7F,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,6BAA6B,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACzE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,+BAA+B,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3E,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACxE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,iCAAiC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACzE,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAE,CAAC;QAC3D,MAAM,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,GAAG,EAAE;QACjF,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE;YAC7B,GAAG,aAAa,EAAE;YAClB,EAAE,EAAE,YAAY;YAChB,YAAY,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE;SACzD,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,6BAA6B,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACzE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,iCAAiC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC7E,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,+BAA+B,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACvE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACxE,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAE,CAAC;QAC3D,gDAAgD;QAChD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,aAAa,EAAE,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC3E,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,EAAE,GAAG,aAAa,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;QAChG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC5E,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,mCAAmC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC/E,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,2BAA2B,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACnE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,iCAAiC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACzE,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAE,CAAC;QACvD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,aAAa,EAAE,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=dashboard.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/dashboard.test.ts"],"names":[],"mappings":""}