@alloy-js/core 0.23.0-dev.15 → 0.23.0-dev.17

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.
@@ -0,0 +1,100 @@
1
+ import { mkdtempSync, rmSync } from "node:fs";
2
+ import { tmpdir } from "node:os";
3
+ import { join } from "node:path";
4
+ import { afterEach, beforeEach, expect, it } from "vitest";
5
+ import { DiagnosticsCollector } from "../diagnostics.js";
6
+ import { closeTrace, initTrace, setChangeListener } from "./trace-writer.js";
7
+ let tmpDir;
8
+ beforeEach(async () => {
9
+ tmpDir = mkdtempSync(join(tmpdir(), "alloy-diag-test-"));
10
+ });
11
+ afterEach(async () => {
12
+ setChangeListener(null);
13
+ closeTrace();
14
+ rmSync(tmpDir, {
15
+ recursive: true,
16
+ force: true
17
+ });
18
+ });
19
+ it("does not call insertDiagnostic when tracing is disabled", () => {
20
+ let events = 0;
21
+ setChangeListener(() => {
22
+ events++;
23
+ });
24
+ const collector = new DiagnosticsCollector();
25
+ for (let i = 0; i < 100; i++) {
26
+ collector.emit({
27
+ message: `diag ${i}`,
28
+ severity: "warning"
29
+ });
30
+ }
31
+
32
+ // No trace DB => no change events should fire.
33
+ expect(events).toBe(0);
34
+ expect(collector.getDiagnostics()).toHaveLength(100);
35
+ });
36
+ it("emits one added event per diagnostic (linear, not quadratic)", async () => {
37
+ await initTrace(join(tmpDir, "trace.db"));
38
+ const events = [];
39
+ setChangeListener(event => {
40
+ events.push({
41
+ channel: event.channel,
42
+ action: event.action
43
+ });
44
+ });
45
+ const collector = new DiagnosticsCollector();
46
+ const N = 50;
47
+ for (let i = 0; i < N; i++) {
48
+ collector.emit({
49
+ message: `diag ${i}`,
50
+ severity: "warning"
51
+ });
52
+ }
53
+ const added = events.filter(e => e.channel === "diagnostics" && e.action === "added");
54
+ expect(added).toHaveLength(N); // was previously N*(N+1)/2 due to re-broadcast
55
+ });
56
+ it("emits one removed event per dismissal", async () => {
57
+ await initTrace(join(tmpDir, "trace.db"));
58
+ const events = [];
59
+ setChangeListener(event => {
60
+ events.push({
61
+ channel: event.channel,
62
+ action: event.action
63
+ });
64
+ });
65
+ const collector = new DiagnosticsCollector();
66
+ const handles = [];
67
+ for (let i = 0; i < 10; i++) {
68
+ handles.push(collector.emit({
69
+ message: `diag ${i}`,
70
+ severity: "warning"
71
+ }));
72
+ }
73
+ for (const h of handles) h.dismiss();
74
+ const added = events.filter(e => e.channel === "diagnostics" && e.action === "added");
75
+ const removed = events.filter(e => e.channel === "diagnostics" && e.action === "removed");
76
+ expect(added).toHaveLength(10);
77
+ expect(removed).toHaveLength(10);
78
+ expect(collector.getDiagnostics()).toHaveLength(0);
79
+ });
80
+ it("dismiss is idempotent and only fires one removal", async () => {
81
+ await initTrace(join(tmpDir, "trace.db"));
82
+ const events = [];
83
+ setChangeListener(event => {
84
+ events.push({
85
+ channel: event.channel,
86
+ action: event.action
87
+ });
88
+ });
89
+ const collector = new DiagnosticsCollector();
90
+ const h = collector.emit({
91
+ message: "once",
92
+ severity: "warning"
93
+ });
94
+ h.dismiss();
95
+ h.dismiss();
96
+ h.dismiss();
97
+ const removed = events.filter(e => e.channel === "diagnostics" && e.action === "removed");
98
+ expect(removed).toHaveLength(1);
99
+ });
100
+ //# sourceMappingURL=diagnostics-broadcast.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["mkdtempSync","rmSync","tmpdir","join","afterEach","beforeEach","expect","it","DiagnosticsCollector","closeTrace","initTrace","setChangeListener","tmpDir","recursive","force","events","collector","i","emit","message","severity","toBe","getDiagnostics","toHaveLength","event","push","channel","action","N","added","filter","e","handles","h","dismiss","removed"],"sources":["../../../../src/debug/diagnostics-broadcast.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -528,11 +528,14 @@ export function insertRenderError(name, message, stack, componentStack) {
528
528
  seq: s
529
529
  });
530
530
  }
531
+ let stmtDeleteDiagnostic;
531
532
  export function insertDiagnostic(message, severity, sourceFile, sourceLine, sourceCol, componentStack) {
532
- if (!db) return;
533
+ if (!db) return undefined;
533
534
  const s = nextSeq();
534
- stmtInsertDiagnostic.run(message, severity ?? null, sourceFile ?? null, sourceLine ?? null, sourceCol ?? null, componentStack ?? null, s);
535
+ const info = stmtInsertDiagnostic.run(message, severity ?? null, sourceFile ?? null, sourceLine ?? null, sourceCol ?? null, componentStack ?? null, s);
536
+ const id = Number(info.lastInsertRowid);
535
537
  notifyChange("diagnostics", "added", {
538
+ id,
536
539
  message,
537
540
  severity: severity ?? null,
538
541
  source_file: sourceFile ?? null,
@@ -541,6 +544,18 @@ export function insertDiagnostic(message, severity, sourceFile, sourceLine, sour
541
544
  component_stack: componentStack ?? null,
542
545
  seq: s
543
546
  });
547
+ return id;
548
+ }
549
+ export function deleteDiagnostic(id) {
550
+ if (!db) return;
551
+ if (!stmtDeleteDiagnostic) {
552
+ stmtDeleteDiagnostic = db.prepare(`DELETE FROM diagnostics WHERE id = ?`);
553
+ }
554
+ stmtDeleteDiagnostic.run(id);
555
+ notifyChange("diagnostics", "removed", {
556
+ id,
557
+ seq: nextSeq()
558
+ });
544
559
  }
545
560
 
546
561
  /**
@@ -631,6 +646,7 @@ export function commitTransaction() {
631
646
  export function closeTrace() {
632
647
  db?.close();
633
648
  db = null;
649
+ stmtDeleteDiagnostic = undefined;
634
650
  }
635
651
  export function resetTrace() {
636
652
  seq = 0;
@@ -1 +1 @@
1
- {"version":3,"names":["db","seq","stmtInsertEffect","stmtUpdateEffectComponent","stmtUpdateEffectComponentByContext","stmtInsertRef","stmtInsertEdge","stmtInsertSchedulerJob","stmtInsertSchedulerFlush","stmtInsertRenderNode","stmtUpdateRenderNode","stmtUpdateRenderNodeContext","stmtDeleteRenderNode","stmtInsertSymbol","stmtUpdateSymbol","stmtDeleteSymbol","stmtInsertScope","stmtUpdateScope","stmtDeleteScope","stmtInsertRenderError","stmtInsertDiagnostic","stmtInsertOutputFile","stmtUpdateOutputFileContent","stmtDeleteOutputFile","stmtInsertDirectory","stmtDeleteDirectory","stmtInsertEffectLifecycle","stmtInsertSourceMap","isTraceEnabled","nextSeq","ALL_CHANNELS","changeListener","setChangeListener","listener","notifyChange","channel","action","data","channelTableMap","render","effects","refs","edges","symbols","scopes","files","directories","diagnostics","errors","scheduler","queryChannel","table","test","prepare","all","initTrace","path","DatabaseSync","fs","unlinkSync","exec","createSchema","prepareStatements","insertEffect","id","name","type","contextId","ownerContextId","sourceFile","sourceLine","sourceCol","s","run","effect_type","context_id","owner_context_id","component","source_file","source_line","source_col","updateEffectComponent","updateEffectComponentByContext","insertRef","kind","createdByEffectId","label","isApproxLocation","created_by_effect_id","is_approx_location","insertEdge","effectId","refId","targetId","targetKey","causedBy","String","edge_type","effect_id","ref_id","target_id","target_key","caused_by","insertSchedulerJob","event","immediate","queueSize","queue_size","insertSchedulerFlush","jobsRun","insertRenderNode","parentId","props","value","parent_id","updateRenderNodeProps","updateRenderNodeContext","deleteRenderNode","insertSymbol","originalName","scopeId","ownerSymbolId","renderNodeId","isMember","isTransient","isAlias","metadata","original_name","scope_id","owner_symbol_id","render_node_id","is_member","is_transient","is_alias","updateSymbol","deleteSymbol","insertScope","isMemberScope","is_member_scope","updateScope","deleteScope","insertRenderError","message","stack","componentStack","component_stack","insertDiagnostic","severity","notifyDiagnosticsReport","_entries","insertOutputFile","filetype","queryOutputFile","undefined","get","updateOutputFileContent","content","deleteOutputFile","insertDirectory","deleteDirectory","insertEffectLifecycle","triggerRefId","trigger_ref_id","insertSourceMap","outputPath","mapJson","outputText","beginTransaction","commitTransaction","closeTrace","close","resetTrace","notifyRenderReset","_signal","notifyRenderComplete","notifyFlushComplete"],"sources":["../../../../src/debug/trace-writer.ts"],"sourcesContent":[null],"mappings":"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AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,CAAC;AACJ;AAEA,SAASE,iBAAiBA,CAAA,EAAS;EACjC5D,gBAAgB,GAAGF,EAAE,CAAEqD,OAAO,CAC5B;AACJ,2CACE,CAAC;EACDlD,yBAAyB,GAAGH,EAAE,CAAEqD,OAAO,CACrC,+CACF,CAAC;EACDjD,kCAAkC,GAAGJ,EAAE,CAAEqD,OAAO,CAC9C,uDACF,CAAC;EACDhD,aAAa,GAAGL,EAAE,CAAEqD,OAAO,CACzB;AACJ,qCACE,CAAC;EACD/C,cAAc,GAAGN,EAAE,CAAEqD,OAAO,CAC1B;AACJ,wCACE,CAAC;EACD9C,sBAAsB,GAAGP,EAAE,CAAEqD,OAAO,CAClC;AACJ,4BACE,CAAC;EACD7C,wBAAwB,GAAGR,EAAE,CAAEqD,OAAO,CACpC,6DACF,C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","ignoreList":[]}
1
+ {"version":3,"names":["db","seq","stmtInsertEffect","stmtUpdateEffectComponent","stmtUpdateEffectComponentByContext","stmtInsertRef","stmtInsertEdge","stmtInsertSchedulerJob","stmtInsertSchedulerFlush","stmtInsertRenderNode","stmtUpdateRenderNode","stmtUpdateRenderNodeContext","stmtDeleteRenderNode","stmtInsertSymbol","stmtUpdateSymbol","stmtDeleteSymbol","stmtInsertScope","stmtUpdateScope","stmtDeleteScope","stmtInsertRenderError","stmtInsertDiagnostic","stmtInsertOutputFile","stmtUpdateOutputFileContent","stmtDeleteOutputFile","stmtInsertDirectory","stmtDeleteDirectory","stmtInsertEffectLifecycle","stmtInsertSourceMap","isTraceEnabled","nextSeq","ALL_CHANNELS","changeListener","setChangeListener","listener","notifyChange","channel","action","data","channelTableMap","render","effects","refs","edges","symbols","scopes","files","directories","diagnostics","errors","scheduler","queryChannel","table","test","prepare","all","initTrace","path","DatabaseSync","fs","unlinkSync","exec","createSchema","prepareStatements","insertEffect","id","name","type","contextId","ownerContextId","sourceFile","sourceLine","sourceCol","s","run","effect_type","context_id","owner_context_id","component","source_file","source_line","source_col","updateEffectComponent","updateEffectComponentByContext","insertRef","kind","createdByEffectId","label","isApproxLocation","created_by_effect_id","is_approx_location","insertEdge","effectId","refId","targetId","targetKey","causedBy","String","edge_type","effect_id","ref_id","target_id","target_key","caused_by","insertSchedulerJob","event","immediate","queueSize","queue_size","insertSchedulerFlush","jobsRun","insertRenderNode","parentId","props","value","parent_id","updateRenderNodeProps","updateRenderNodeContext","deleteRenderNode","insertSymbol","originalName","scopeId","ownerSymbolId","renderNodeId","isMember","isTransient","isAlias","metadata","original_name","scope_id","owner_symbol_id","render_node_id","is_member","is_transient","is_alias","updateSymbol","deleteSymbol","insertScope","isMemberScope","is_member_scope","updateScope","deleteScope","insertRenderError","message","stack","componentStack","component_stack","stmtDeleteDiagnostic","insertDiagnostic","severity","undefined","info","Number","lastInsertRowid","deleteDiagnostic","notifyDiagnosticsReport","_entries","insertOutputFile","filetype","queryOutputFile","get","updateOutputFileContent","content","deleteOutputFile","insertDirectory","deleteDirectory","insertEffectLifecycle","triggerRefId","trigger_ref_id","insertSourceMap","outputPath","mapJson","outputText","beginTransaction","commitTransaction","closeTrace","close","resetTrace","notifyRenderReset","_signal","notifyRenderComplete","notifyFlushComplete"],"sources":["../../../../src/debug/trace-writer.ts"],"sourcesContent":[null],"mappings":"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AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,CAAC;AACJ;AAEA,SAASE,iBAAiBA,CAAA,EAAS;EACjC5D,gBAAgB,GAAGF,EAAE,CAAEqD,OAAO,CAC5B;AACJ,2CACE,CAAC;EACDlD,yBAAyB,GAAGH,EAAE,CAAEqD,OAAO,CACrC,+CACF,CAAC;EACDjD,kCAAkC,GAAGJ,EAAE,CAAEqD,OAAO,CAC9C,uDACF,CAAC;EACDhD,aAAa,GAAGL,EAAE,CAAEqD,OAAO,CACzB;AACJ,qCACE,CAAC;EACD/C,cAAc,GAAGN,EAAE,CAAEqD,OAAO,CAC1B;AACJ,wCACE,CAAC;EACD9C,sBAAsB,GAAGP,EAAE,CAAEqD,OAAO,CAClC;AACJ,4BACE,CAAC;EACD7C,wBAAwB,GAAGR,EAAE,CAAEqD,OAAO,CACpC,6DACF,CAAC;EACD5C,oBAAoB,GAAGT,EAAE,CAAEqD,OAAO,CAChC;AACJ,8CACE,CAAC;EACD3C,oBAAoB,GAAGV,EAAE,CAAEqD,OAAO,CAChC,gDACF,CAAC;EACD1C,2BAA2B,GAAGX,EAAE,CAAEqD,OAAO,CACvC,qDACF,CAAC;EACDzC,oBAAoB,GAAGZ,EAAE,CAAEqD,OAAO,CAAC,uCAAuC,CAAC;EAC3ExC,gBAAgB,GAAGb,EAAE,CAAEqD,OAAO,CAC5B;AACJ,8CACE,CAAC;EACDvC,gBAAgB,GAAGd,EAAE,CAAEqD,OAAO,CAC5B,iLACF,CAAC;EACDtC,gBAAgB,GAAGf,EAAE,CAAEqD,OAAO,CAAC,kCAAkC,CAAC;EAClErC,eAAe,GAAGhB,EAAE,CAAEqD,OAAO,CAC3B;AACJ,qCACE,CAAC;EACDpC,eAAe,GAAGjB,EAAE,CAAEqD,OAAO,CAC3B,oIACF,CAAC;EACDnC,eAAe,GAAGlB,EAAE,CAAEqD,OAAO,CAAC,iCAAiC,CAAC;EAChElC,qBAAqB,GAAGnB,EAAE,CAAEqD,OAAO,CACjC;AACJ,4BACE,CAAC;EACDjC,oBAAoB,GAAGpB,EAAE,CAAEqD,OAAO,CAChC;AACJ,kCACE,CAAC;EACDhC,oBAAoB,GAAGrB,EAAE,CAAEqD,OAAO,CAChC;AACJ,yBACE,CAAC;EACD/B,2BAA2B,GAAGtB,EAAE,CAAEqD,OAAO,CACvC,oDACF,CAAC;EACD9B,oBAAoB,GAAGvB,EAAE,CAAEqD,OAAO,CAAC,yCAAyC,CAAC;EAC7E7B,mBAAmB,GAAGxB,EAAE,CAAEqD,OAAO,CAC/B,6DACF,CAAC;EACD5B,mBAAmB,GAAGzB,EAAE,CAAEqD,OAAO,CAAC,wCAAwC,CAAC;EAC3E3B,yBAAyB,GAAG1B,EAAE,CAAEqD,OAAO,CACrC;AACJ,kCACE,CAAC;EACD1B,mBAAmB,GAAG3B,EAAE,CAAEqD,OAAO,CAC/B;AACJ,sBACE,CAAC;AACH;;AAEA;AACA;AACA;;AAEA,OAAO,SAASU,YAAYA,CAC1BC,EAAU,EACVC,IAAwB,EACxBC,IAAwB,EACxBC,SAA6B,EAC7BC,cAAyC,EACzCC,UAA8B,EAC9BC,UAA8B,EAC9BC,SAA6B,EACvB;EACN,IAAI,CAACvE,EAAE,EAAE;EACT,MAAMwE,CAAC,GAAG3C,OAAO,CAAC,CAAC;EACnB3B,gBAAgB,CAACuE,GAAG,CAClBT,EAAE,EACFC,IAAI,IAAI,IAAI,EACZC,IAAI,IAAI,IAAI,EACZC,SAAS,IAAI,IAAI,EACjBC,cAAc,IAAI,IAAI,EACtB,IAAI,EACJC,UAAU,IAAI,IAAI,EAClBC,UAAU,IAAI,IAAI,EAClBC,SAAS,IAAI,IAAI,EACjBC,CACF,CAAC;EACDtC,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE;IAC/B8B,EAAE;IACFC,IAAI,EAAEA,IAAI,IAAI,IAAI;IAClBS,WAAW,EAAER,IAAI,IAAI,IAAI;IACzBS,UAAU,EAAER,SAAS,IAAI,IAAI;IAC7BS,gBAAgB,EAAER,cAAc,IAAI,IAAI;IACxCS,SAAS,EAAE,IAAI;IACfC,WAAW,EAAET,UAAU,IAAI,IAAI;IAC/BU,WAAW,EAAET,UAAU,IAAI,IAAI;IAC/BU,UAAU,EAAET,SAAS,IAAI,IAAI;IAC7BtE,GAAG,EAAEuE;EACP,CAAC,CAAC;AACJ;AAEA,OAAO,SAASS,qBAAqBA,CAACjB,EAAU,EAAEa,SAAiB,EAAQ;EACzE,IAAI,CAAC7E,EAAE,EAAE;EACTG,yBAAyB,CAACsE,GAAG,CAACI,SAAS,EAAEb,EAAE,CAAC;EAC5C9B,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE;IAAE8B,EAAE;IAAEa;EAAU,CAAC,CAAC;AACvD;AAEA,OAAO,SAASK,8BAA8BA,CAC5Cf,SAAiB,EACjBU,SAAiB,EACX;EACN,IAAI,CAAC7E,EAAE,EAAE;EACTI,kCAAkC,CAACqE,GAAG,CAACI,SAAS,EAAEV,SAAS,CAAC;EAC5DjC,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE;IAAEyC,UAAU,EAAER,SAAS;IAAEU;EAAU,CAAC,CAAC;AAC1E;AAEA,OAAO,SAASM,SAASA,CACvBnB,EAAU,EACVoB,IAAwB,EACxBC,iBAAqC,EACrChB,UAA8B,EAC9BC,UAA8B,EAC9BC,SAA6B,EAC7Be,KAA0B,EAC1BC,gBAA0B,EACpB;EACN,IAAI,CAACvF,EAAE,EAAE;EACT,MAAMwE,CAAC,GAAG3C,OAAO,CAAC,CAAC;EACnBxB,aAAa,CAACoE,GAAG,CACfT,EAAE,EACFoB,IAAI,IAAI,IAAI,EACZE,KAAK,IAAI,IAAI,EACbD,iBAAiB,IAAI,IAAI,EACzBhB,UAAU,IAAI,IAAI,EAClBC,UAAU,IAAI,IAAI,EAClBC,SAAS,IAAI,IAAI,EACjBC,CACF,CAAC;EACDtC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE;IAC5B8B,EAAE;IACFoB,IAAI,EAAEA,IAAI,IAAI,IAAI;IAClBE,KAAK,EAAEA,KAAK,IAAI,IAAI;IACpBE,oBAAoB,EAAEH,iBAAiB,IAAI,IAAI;IAC/CP,WAAW,EAAET,UAAU,IAAI,IAAI;IAC/BU,WAAW,EAAET,UAAU,IAAI,IAAI;IAC/BU,UAAU,EAAET,SAAS,IAAI,IAAI;IAC7BkB,kBAAkB,EAAEF,gBAAgB,GAAG,CAAC,GAAG,CAAC;IAC5CtF,GAAG,EAAEuE;EACP,CAAC,CAAC;AACJ;AAEA,OAAO,SAASkB,UAAUA,CACxBxB,IAAY,EACZyB,QAAgB,EAChBC,KAAyB,EACzBC,QAA4B,EAC5BC,SAAsC,EACtCC,QAA4B,EAC5B1B,UAA+B,EAC/BC,UAA+B,EACzB;EACN,IAAI,CAACtE,EAAE,EAAE;EACT,MAAMwE,CAAC,GAAG3C,OAAO,CAAC,CAAC;EACnBvB,cAAc,CAACmE,GAAG,CAChBD,CAAC,EACDN,IAAI,EACJyB,QAAQ,EACRC,KAAK,IAAI,IAAI,EACbC,QAAQ,IAAI,IAAI,EAChBC,SAAS,IAAI,IAAI,GAAGE,MAAM,CAACF,SAAS,CAAC,GAAG,IAAI,EAC5CC,QAAQ,IAAI,IAAI,EAChB1B,UAAU,IAAI,IAAI,EAClBC,UAAU,IAAI,IAChB,CAAC;EACDpC,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE;IAC7BjC,GAAG,EAAEuE,CAAC;IACNyB,SAAS,EAAE/B,IAAI;IACfgC,SAAS,EAAEP,QAAQ;IACnBQ,MAAM,EAAEP,KAAK,IAAI,IAAI;IACrBQ,SAAS,EAAEP,QAAQ,IAAI,IAAI;IAC3BQ,UAAU,EAAEP,SAAS,IAAI,IAAI,GAAGE,MAAM,CAACF,SAAS,CAAC,GAAG,IAAI;IACxDQ,SAAS,EAAEP,QAAQ,IAAI,IAAI;IAC3BjB,WAAW,EAAET,UAAU,IAAI,IAAI;IAC/BU,WAAW,EAAET,UAAU,IAAI;EAC7B,CAAC,CAAC;AACJ;AAEA,OAAO,SAASiC,kBAAkBA,CAChCC,KAAa,EACbb,QAAgB,EAChBc,SAAkB,EAClBC,SAAiB,EACX;EACN,IAAI,CAAC1G,EAAE,EAAE;EACT,MAAMwE,CAAC,GAAG3C,OAAO,CAAC,CAAC;EACnBtB,sBAAsB,CAACkE,GAAG,CAACD,CAAC,EAAEgC,KAAK,EAAEb,QAAQ,EAAEc,SAAS,GAAG,CAAC,GAAG,CAAC,EAAEC,SAAS,CAAC;EAC5ExE,YAAY,CAAC,WAAW,EAAE,OAAO,EAAE;IACjCjC,GAAG,EAAEuE,CAAC;IACNgC,KAAK;IACLN,SAAS,EAAEP,QAAQ;IACnBc,SAAS,EAAEA,SAAS,GAAG,CAAC,GAAG,CAAC;IAC5BE,UAAU,EAAED;EACd,CAAC,CAAC;AACJ;AAEA,OAAO,SAASE,oBAAoBA,CAACC,OAAe,EAAQ;EAC1D,IAAI,CAAC7G,EAAE,EAAE;EACTQ,wBAAwB,CAACiE,GAAG,CAAC5C,OAAO,CAAC,CAAC,EAAEgF,OAAO,CAAC;AAClD;AAEA,OAAO,SAASC,gBAAgBA,CAC9B9C,EAAU,EACV+C,QAAuB,EACvB3B,IAAY,EACZnB,IAAwB,EACxB+C,KAAyB,EACzB3C,UAA8B,EAC9BC,UAA8B,EAC9BC,SAA6B,EAC7BJ,SAAwB,EACxB8C,KAAyB,EACnB;EACN,IAAI,CAACjH,EAAE,EAAE;EACT,MAAMwE,CAAC,GAAG3C,OAAO,CAAC,CAAC;EACnBpB,oBAAoB,CAACgE,GAAG,CACtBT,EAAE,EACF+C,QAAQ,EACR3B,IAAI,EACJnB,IAAI,IAAI,IAAI,EACZ+C,KAAK,IAAI,IAAI,EACb3C,UAAU,IAAI,IAAI,EAClBC,UAAU,IAAI,IAAI,EAClBC,SAAS,IAAI,IAAI,EACjBJ,SAAS,EACT8C,KAAK,IAAI,IAAI,EACbzC,CACF,CAAC;EACDtC,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE;IAC9B8B,EAAE;IACFkD,SAAS,EAAEH,QAAQ;IACnB3B,IAAI;IACJnB,IAAI,EAAEA,IAAI,IAAI,IAAI;IAClB+C,KAAK,EAAEA,KAAK,IAAI,IAAI;IACpBlC,WAAW,EAAET,UAAU,IAAI,IAAI;IAC/BU,WAAW,EAAET,UAAU,IAAI,IAAI;IAC/BU,UAAU,EAAET,SAAS,IAAI,IAAI;IAC7BI,UAAU,EAAER,SAAS;IACrB8C,KAAK,EAAEA,KAAK,IAAI,IAAI;IACpBhH,GAAG,EAAEuE;EACP,CAAC,CAAC;AACJ;AAEA,OAAO,SAAS2C,qBAAqBA,CACnCnD,EAAU,EACVgD,KAAyB,EACnB;EACN,IAAI,CAAChH,EAAE,EAAE;EACTU,oBAAoB,CAAC+D,GAAG,CAACuC,KAAK,IAAI,IAAI,EAAEhD,EAAE,CAAC;EAC3C9B,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE;IAAE8B,EAAE;IAAEgD,KAAK,EAAEA,KAAK,IAAI;EAAK,CAAC,CAAC;AACjE;AAEA,OAAO,SAASI,uBAAuBA,CAACpD,EAAU,EAAEG,SAAiB,EAAQ;EAC3E,IAAI,CAACnE,EAAE,EAAE;EACTW,2BAA2B,CAAC8D,GAAG,CAACN,SAAS,EAAEH,EAAE,CAAC;EAC9C9B,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE;IAAE8B,EAAE;IAAEW,UAAU,EAAER;EAAU,CAAC,CAAC;AAClE;AAEA,OAAO,SAASkD,gBAAgBA,CAACrD,EAAU,EAAQ;EACjD,IAAI,CAAChE,EAAE,EAAE;EACTY,oBAAoB,CAAC6D,GAAG,CAACT,EAAE,CAAC;EAC5B9B,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE;IAAE8B;EAAG,CAAC,CAAC;AAC3C;AAEA,OAAO,SAASsD,YAAYA,CAC1BtD,EAAU,EACVC,IAAY,EACZsD,YAAgC,EAChCC,OAA2B,EAC3BC,aAAiC,EACjCC,YAAgC,EAChCC,QAAiB,EACjBC,WAAoB,EACpBC,OAAgB,EAChBC,QAA4B,EACtB;EACN,IAAI,CAAC9H,EAAE,EAAE;EACT,MAAMwE,CAAC,GAAG3C,OAAO,CAAC,CAAC;EACnBhB,gBAAgB,CAAC4D,GAAG,CAClBT,EAAE,EACFC,IAAI,EACJsD,YAAY,IAAI,IAAI,EACpBC,OAAO,IAAI,IAAI,EACfC,aAAa,IAAI,IAAI,EACrBC,YAAY,IAAI,IAAI,EACpBC,QAAQ,GAAG,CAAC,GAAG,CAAC,EAChBC,WAAW,GAAG,CAAC,GAAG,CAAC,EACnBC,OAAO,GAAG,CAAC,GAAG,CAAC,EACfC,QAAQ,IAAI,IAAI,EAChBtD,CACF,CAAC;EACDtC,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE;IAC/B8B,EAAE;IACFC,IAAI;IACJ8D,aAAa,EAAER,YAAY,IAAI,IAAI;IACnCS,QAAQ,EAAER,OAAO,IAAI,IAAI;IACzBS,eAAe,EAAER,aAAa,IAAI,IAAI;IACtCS,cAAc,EAAER,YAAY,IAAI,IAAI;IACpCS,SAAS,EAAER,QAAQ,GAAG,CAAC,GAAG,CAAC;IAC3BS,YAAY,EAAER,WAAW,GAAG,CAAC,GAAG,CAAC;IACjCS,QAAQ,EAAER,OAAO,GAAG,CAAC,GAAG,CAAC;IACzBC,QAAQ,EAAEA,QAAQ,IAAI,IAAI;IAC1B7H,GAAG,EAAEuE;EACP,CAAC,CAAC;AACJ;AAEA,OAAO,SAAS8D,YAAYA,CAC1BtE,EAAU,EACVC,IAAY,EACZsD,YAAgC,EAChCC,OAA2B,EAC3BC,aAAiC,EACjCC,YAAgC,EAChCC,QAAiB,EACjBC,WAAoB,EACpBC,OAAgB,EAChBC,QAA4B,EACtB;EACN,IAAI,CAAC9H,EAAE,EAAE;EACTc,gBAAgB,CAAC2D,GAAG,CAClBR,IAAI,EACJsD,YAAY,IAAI,IAAI,EACpBC,OAAO,IAAI,IAAI,EACfC,aAAa,IAAI,IAAI,EACrBC,YAAY,IAAI,IAAI,EACpBC,QAAQ,GAAG,CAAC,GAAG,CAAC,EAChBC,WAAW,GAAG,CAAC,GAAG,CAAC,EACnBC,OAAO,GAAG,CAAC,GAAG,CAAC,EACfC,QAAQ,IAAI,IAAI,EAChB9D,EACF,CAAC;EACD9B,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE;IACjC8B,EAAE;IACFC,IAAI;IACJ8D,aAAa,EAAER,YAAY,IAAI,IAAI;IACnCS,QAAQ,EAAER,OAAO,IAAI,IAAI;IACzBS,eAAe,EAAER,aAAa,IAAI,IAAI;IACtCS,cAAc,EAAER,YAAY,IAAI,IAAI;IACpCS,SAAS,EAAER,QAAQ,GAAG,CAAC,GAAG,CAAC;IAC3BS,YAAY,EAAER,WAAW,GAAG,CAAC,GAAG,CAAC;IACjCS,QAAQ,EAAER,OAAO,GAAG,CAAC,GAAG,CAAC;IACzBC,QAAQ,EAAEA,QAAQ,IAAI;EACxB,CAAC,CAAC;AACJ;AAEA,OAAO,SAASS,YAAYA,CAACvE,EAAU,EAAQ;EAC7C,IAAI,CAAChE,EAAE,EAAE;EACTe,gBAAgB,CAAC0D,GAAG,CAACT,EAAE,CAAC;EACxB9B,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE;IAAE8B;EAAG,CAAC,CAAC;AAC5C;AAEA,OAAO,SAASwE,WAAWA,CACzBxE,EAAU,EACVC,IAAY,EACZ8C,QAA4B,EAC5BU,aAAiC,EACjCC,YAAgC,EAChCe,aAAsB,EACtBX,QAA4B,EACtB;EACN,IAAI,CAAC9H,EAAE,EAAE;EACT,MAAMwE,CAAC,GAAG3C,OAAO,CAAC,CAAC;EACnBb,eAAe,CAACyD,GAAG,CACjBT,EAAE,EACFC,IAAI,EACJ8C,QAAQ,IAAI,IAAI,EAChBU,aAAa,IAAI,IAAI,EACrBC,YAAY,IAAI,IAAI,EACpBe,aAAa,GAAG,CAAC,GAAG,CAAC,EACrBX,QAAQ,IAAI,IAAI,EAChBtD,CACF,CAAC;EACDtC,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE;IAC9B8B,EAAE;IACFC,IAAI;IACJiD,SAAS,EAAEH,QAAQ,IAAI,IAAI;IAC3BkB,eAAe,EAAER,aAAa,IAAI,IAAI;IACtCS,cAAc,EAAER,YAAY,IAAI,IAAI;IACpCgB,eAAe,EAAED,aAAa,GAAG,CAAC,GAAG,CAAC;IACtCX,QAAQ,EAAEA,QAAQ,IAAI,IAAI;IAC1B7H,GAAG,EAAEuE;EACP,CAAC,CAAC;AACJ;AAEA,OAAO,SAASmE,WAAWA,CACzB3E,EAAU,EACVC,IAAY,EACZ8C,QAA4B,EAC5BU,aAAiC,EACjCC,YAAgC,EAChCe,aAAsB,EACtBX,QAA4B,EACtB;EACN,IAAI,CAAC9H,EAAE,EAAE;EACTiB,eAAe,CAACwD,GAAG,CACjBR,IAAI,EACJ8C,QAAQ,IAAI,IAAI,EAChBU,aAAa,IAAI,IAAI,EACrBC,YAAY,IAAI,IAAI,EACpBe,aAAa,GAAG,CAAC,GAAG,CAAC,EACrBX,QAAQ,IAAI,IAAI,EAChB9D,EACF,CAAC;EACD9B,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE;IAChC8B,EAAE;IACFC,IAAI;IACJiD,SAAS,EAAEH,QAAQ,IAAI,IAAI;IAC3BkB,eAAe,EAAER,aAAa,IAAI,IAAI;IACtCS,cAAc,EAAER,YAAY,IAAI,IAAI;IACpCgB,eAAe,EAAED,aAAa,GAAG,CAAC,GAAG,CAAC;IACtCX,QAAQ,EAAEA,QAAQ,IAAI;EACxB,CAAC,CAAC;AACJ;AAEA,OAAO,SAASc,WAAWA,CAAC5E,EAAU,EAAQ;EAC5C,IAAI,CAAChE,EAAE,EAAE;EACTkB,eAAe,CAACuD,GAAG,CAACT,EAAE,CAAC;EACvB9B,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE;IAAE8B;EAAG,CAAC,CAAC;AAC3C;AAEA,OAAO,SAAS6E,iBAAiBA,CAC/B5E,IAAwB,EACxB6E,OAA2B,EAC3BC,KAAyB,EACzBC,cAAkC,EAC5B;EACN,IAAI,CAAChJ,EAAE,EAAE;EACT,MAAMwE,CAAC,GAAG3C,OAAO,CAAC,CAAC;EACnBV,qBAAqB,CAACsD,GAAG,CACvBR,IAAI,IAAI,IAAI,EACZ6E,OAAO,IAAI,IAAI,EACfC,KAAK,IAAI,IAAI,EACbC,cAAc,IAAI,IAAI,EACtBxE,CACF,CAAC;EACDtC,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE;IAC9B+B,IAAI,EAAEA,IAAI,IAAI,IAAI;IAClB6E,OAAO,EAAEA,OAAO,IAAI,IAAI;IACxBC,KAAK,EAAEA,KAAK,IAAI,IAAI;IACpBE,eAAe,EAAED,cAAc,IAAI,IAAI;IACvC/I,GAAG,EAAEuE;EACP,CAAC,CAAC;AACJ;AAEA,IAAI0E,oBAA+C;AAEnD,OAAO,SAASC,gBAAgBA,CAC9BL,OAAe,EACfM,QAA4B,EAC5B/E,UAA8B,EAC9BC,UAA8B,EAC9BC,SAA6B,EAC7ByE,cAAkC,EACd;EACpB,IAAI,CAAChJ,EAAE,EAAE,OAAOqJ,SAAS;EACzB,MAAM7E,CAAC,GAAG3C,OAAO,CAAC,CAAC;EACnB,MAAMyH,IAAI,GAAGlI,oBAAoB,CAACqD,GAAG,CACnCqE,OAAO,EACPM,QAAQ,IAAI,IAAI,EAChB/E,UAAU,IAAI,IAAI,EAClBC,UAAU,IAAI,IAAI,EAClBC,SAAS,IAAI,IAAI,EACjByE,cAAc,IAAI,IAAI,EACtBxE,CACF,CAAC;EACD,MAAMR,EAAE,GAAGuF,MAAM,CAACD,IAAI,CAACE,eAAe,CAAC;EACvCtH,YAAY,CAAC,aAAa,EAAE,OAAO,EAAE;IACnC8B,EAAE;IACF8E,OAAO;IACPM,QAAQ,EAAEA,QAAQ,IAAI,IAAI;IAC1BtE,WAAW,EAAET,UAAU,IAAI,IAAI;IAC/BU,WAAW,EAAET,UAAU,IAAI,IAAI;IAC/BU,UAAU,EAAET,SAAS,IAAI,IAAI;IAC7B0E,eAAe,EAAED,cAAc,IAAI,IAAI;IACvC/I,GAAG,EAAEuE;EACP,CAAC,CAAC;EACF,OAAOR,EAAE;AACX;AAEA,OAAO,SAASyF,gBAAgBA,CAACzF,EAAU,EAAQ;EACjD,IAAI,CAAChE,EAAE,EAAE;EACT,IAAI,CAACkJ,oBAAoB,EAAE;IACzBA,oBAAoB,GAAGlJ,EAAE,CAACqD,OAAO,CAAC,sCAAsC,CAAC;EAC3E;EACA6F,oBAAoB,CAACzE,GAAG,CAACT,EAAE,CAAC;EAC5B9B,YAAY,CAAC,aAAa,EAAE,SAAS,EAAE;IAAE8B,EAAE;IAAE/D,GAAG,EAAE4B,OAAO,CAAC;EAAE,CAAC,CAAC;AAChE;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAAS6H,uBAAuBA,CAACC,QAAmB,EAAQ;EACjE;AAAA;AAGF,OAAO,SAASC,gBAAgBA,CAC9BpG,IAAY,EACZqG,QAA4B,EAC5BnC,YAAgC,EAC1B;EACN,IAAI,CAAC1H,EAAE,EAAE;EACT,MAAMwE,CAAC,GAAG3C,OAAO,CAAC,CAAC;EACnBR,oBAAoB,CAACoD,GAAG,CAACjB,IAAI,EAAEqG,QAAQ,IAAI,IAAI,EAAEnC,YAAY,IAAI,IAAI,EAAElD,CAAC,CAAC;EACzEtC,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE;IAC7BsB,IAAI;IACJqG,QAAQ,EAAEA,QAAQ,IAAI,IAAI;IAC1B3B,cAAc,EAAER,YAAY,IAAI,IAAI;IACpCzH,GAAG,EAAEuE;EACP,CAAC,CAAC;AACJ;AAEA,OAAO,SAASsF,eAAeA,CAC7BtG,IAAY,EACyB;EACrC,IAAI,CAACxD,EAAE,EAAE,OAAOqJ,SAAS;EACzB,OAAOrJ,EAAE,CAACqD,OAAO,CAAC,2CAA2C,CAAC,CAAC0G,GAAG,CAACvG,IAAI,CAAC;AAG1E;AAEA,OAAO,SAASwG,uBAAuBA,CAACxG,IAAY,EAAEyG,OAAe,EAAQ;EAC3E,IAAI,CAACjK,EAAE,EAAE;EACTsB,2BAA2B,CAACmD,GAAG,CAACwF,OAAO,EAAEzG,IAAI,CAAC;EAC9CtB,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE;IAAEsB,IAAI;IAAEyG;EAAQ,CAAC,CAAC;AACrD;AAEA,OAAO,SAASC,gBAAgBA,CAAC1G,IAAY,EAAQ;EACnD,IAAI,CAACxD,EAAE,EAAE;EACTuB,oBAAoB,CAACkD,GAAG,CAACjB,IAAI,CAAC;EAC9BtB,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE;IAAEsB;EAAK,CAAC,CAAC;AAC5C;AAEA,OAAO,SAAS2G,eAAeA,CAAC3G,IAAY,EAAQ;EAClD,IAAI,CAACxD,EAAE,EAAE;EACT,MAAMwE,CAAC,GAAG3C,OAAO,CAAC,CAAC;EACnBL,mBAAmB,CAACiD,GAAG,CAACjB,IAAI,EAAEgB,CAAC,CAAC;EAChCtC,YAAY,CAAC,aAAa,EAAE,OAAO,EAAE;IAAEsB,IAAI;IAAEvD,GAAG,EAAEuE;EAAE,CAAC,CAAC;AACxD;AAEA,OAAO,SAAS4F,eAAeA,CAAC5G,IAAY,EAAQ;EAClD,IAAI,CAACxD,EAAE,EAAE;EACTyB,mBAAmB,CAACgD,GAAG,CAACjB,IAAI,CAAC;EAC7BtB,YAAY,CAAC,aAAa,EAAE,SAAS,EAAE;IAAEsB;EAAK,CAAC,CAAC;AAClD;AAEA,OAAO,SAAS6G,qBAAqBA,CACnC1E,QAAgB,EAChBa,KAAa,EACb8D,YAAgC,EAChCjG,UAA8B,EAC9BC,UAA8B,EAC9BC,SAA6B,EACvB;EACN,IAAI,CAACvE,EAAE,EAAE;EACT,MAAMwE,CAAC,GAAG3C,OAAO,CAAC,CAAC;EACnBH,yBAAyB,CAAC+C,GAAG,CAC3BkB,QAAQ,EACRa,KAAK,EACL8D,YAAY,IAAI,IAAI,EACpBjG,UAAU,IAAI,IAAI,EAClBC,UAAU,IAAI,IAAI,EAClBC,SAAS,IAAI,IAAI,EACjBC,CACF,CAAC;EACDtC,YAAY,CAAC,WAAW,EAAE,OAAO,EAAE;IACjCgE,SAAS,EAAEP,QAAQ;IACnBa,KAAK;IACL+D,cAAc,EAAED,YAAY,IAAI,IAAI;IACpCxF,WAAW,EAAET,UAAU,IAAI,IAAI;IAC/BU,WAAW,EAAET,UAAU,IAAI,IAAI;IAC/BU,UAAU,EAAET,SAAS,IAAI,IAAI;IAC7BtE,GAAG,EAAEuE;EACP,CAAC,CAAC;AACJ;AAEA,OAAO,SAASgG,eAAeA,CAC7BC,UAAkB,EAClBC,OAAe,EACfC,UAA8B,EACxB;EACN,IAAI,CAAC3K,EAAE,EAAE;EACT2B,mBAAmB,CAAC8C,GAAG,CAACgG,UAAU,EAAEC,OAAO,EAAEC,UAAU,IAAI,IAAI,CAAC;AAClE;;AAEA;AACA;AACA;;AAEA,OAAO,SAASC,gBAAgBA,CAAA,EAAS;EACvC,IAAI,CAAC5K,EAAE,EAAE;EACTA,EAAE,CAAC4D,IAAI,CAAC,OAAO,CAAC;AAClB;AAEA,OAAO,SAASiH,iBAAiBA,CAAA,EAAS;EACxC,IAAI,CAAC7K,EAAE,EAAE;EACTA,EAAE,CAAC4D,IAAI,CAAC,QAAQ,CAAC;AACnB;AAEA,OAAO,SAASkH,UAAUA,CAAA,EAAS;EACjC9K,EAAE,EAAE+K,KAAK,CAAC,CAAC;EACX/K,EAAE,GAAG,IAAI;EACTkJ,oBAAoB,GAAGG,SAAS;AAClC;AAEA,OAAO,SAAS2B,UAAUA,CAAA,EAAS;EACjC/K,GAAG,GAAG,CAAC;AACT;;AAEA;AACA;AACA;;AAEA,OAAO,SAASgL,iBAAiBA,CAAA,EAAS;EACxC/I,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE;IAAEgJ,OAAO,EAAE;EAAe,CAAQ,CAAC;AACrE;AAEA,OAAO,SAASC,oBAAoBA,CAAA,EAAS;EAC3CjJ,YAAY,CAAC,WAAW,EAAE,OAAO,EAAE;IAAEgJ,OAAO,EAAE;EAAkB,CAAQ,CAAC;AAC3E;AAEA,OAAO,SAASE,mBAAmBA,CAAA,EAAS;EAC1ClJ,YAAY,CAAC,WAAW,EAAE,OAAO,EAAE;IAAEgJ,OAAO,EAAE;EAAqB,CAAQ,CAAC;AAC9E","ignoreList":[]}
@@ -1,17 +1,25 @@
1
1
  import { getRenderNodeId } from "./debug/index.js";
2
- import { insertDiagnostic } from "./debug/trace-writer.js";
2
+ import { deleteDiagnostic, insertDiagnostic, isTraceEnabled } from "./debug/trace-writer.js";
3
3
  import { getContext } from "./reactivity.js";
4
4
  import { getRenderStackSnapshot } from "./render-stack.js";
5
+ function buildComponentStack() {
6
+ return getRenderStackSnapshot().map(entry => ({
7
+ name: entry.displayName,
8
+ renderNodeId: entry.context?.meta?.renderNode ? getRenderNodeId(entry.context.meta.renderNode) : undefined,
9
+ source: entry.source
10
+ }));
11
+ }
5
12
  export class DiagnosticsCollector {
6
13
  entries = new Map();
7
14
  order = [];
15
+ traceRowIds = new Map();
8
16
  emit(input) {
9
- const componentStack = input.componentStack ?? getRenderStackSnapshot().map(entry => ({
10
- name: entry.displayName,
11
- renderNodeId: entry.context?.meta?.renderNode ? getRenderNodeId(entry.context.meta.renderNode) : undefined,
12
- source: entry.source
13
- }));
14
- const source = input.source ?? componentStack.at(-1)?.source ?? undefined;
17
+ const traceEnabled = isTraceEnabled();
18
+ // Component stack is only required when a trace consumer will read it,
19
+ // or when the caller explicitly provided one. Building it walks the full
20
+ // render stack, which is expensive on hot paths.
21
+ const componentStack = input.componentStack ?? (traceEnabled ? buildComponentStack() : undefined);
22
+ const source = input.source ?? componentStack?.at(-1)?.source ?? undefined;
15
23
  const id = `diag-${this.order.length + 1}-${Date.now()}`;
16
24
  const diagnostic = {
17
25
  id,
@@ -22,26 +30,26 @@ export class DiagnosticsCollector {
22
30
  };
23
31
  this.entries.set(id, diagnostic);
24
32
  this.order.push(id);
25
-
26
- // Broadcast updated diagnostics
27
- this.broadcast();
33
+ if (traceEnabled) {
34
+ const rowId = insertDiagnostic(diagnostic.message, diagnostic.severity, diagnostic.source?.fileName, diagnostic.source?.lineNumber, diagnostic.source?.columnNumber, diagnostic.componentStack ? JSON.stringify(diagnostic.componentStack) : undefined);
35
+ if (rowId !== undefined) {
36
+ this.traceRowIds.set(id, rowId);
37
+ }
38
+ }
28
39
  return {
29
40
  dismiss: () => {
30
- this.entries.delete(id);
31
- // Broadcast updated diagnostics after dismissal
32
- this.broadcast();
41
+ if (!this.entries.delete(id)) return;
42
+ const rowId = this.traceRowIds.get(id);
43
+ if (rowId !== undefined) {
44
+ this.traceRowIds.delete(id);
45
+ if (isTraceEnabled()) deleteDiagnostic(rowId);
46
+ }
33
47
  }
34
48
  };
35
49
  }
36
50
  getDiagnostics() {
37
51
  return this.order.map(id => this.entries.get(id)).filter(entry => Boolean(entry));
38
52
  }
39
- broadcast() {
40
- const diagnostics = this.getDiagnostics();
41
- for (const diagnostic of diagnostics) {
42
- insertDiagnostic(diagnostic.message, diagnostic.severity, diagnostic.source?.fileName, diagnostic.source?.lineNumber, diagnostic.source?.columnNumber, diagnostic.componentStack ? JSON.stringify(diagnostic.componentStack) : undefined);
43
- }
44
- }
45
53
  }
46
54
  const DIAGNOSTICS_META_KEY = "diagnostics";
47
55
  export function attachDiagnosticsCollector(collector) {
@@ -1 +1 @@
1
- {"version":3,"names":["getRenderNodeId","insertDiagnostic","getContext","getRenderStackSnapshot","DiagnosticsCollector","entries","Map","order","emit","input","componentStack","map","entry","name","displayName","renderNodeId","context","meta","renderNode","undefined","source","at","id","length","Date","now","diagnostic","message","severity","set","push","broadcast","dismiss","delete","getDiagnostics","get","filter","Boolean","diagnostics","fileName","lineNumber","columnNumber","JSON","stringify","DIAGNOSTICS_META_KEY","attachDiagnosticsCollector","collector","getDiagnosticsCollectorFromContext","owner","emitDiagnostic","reportDiagnostics","location","line","console","error","warn","log"],"sources":["../../../src/diagnostics.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAe,QAAQ,kBAAkB;AAClD,SAASC,gBAAgB,QAAQ,yBAAyB;AAC1D,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,sBAAsB,QAAQ,mBAAmB;AA8B1D,OAAO,MAAMC,oBAAoB,CAAC;EACxBC,OAAO,GAAG,IAAIC,GAAG,CAAqB,CAAC;EACvCC,KAAK,GAAa,EAAE;EAE5BC,IAAIA,CAACC,KAAsB,EAAoB;IAC7C,MAAMC,cAAc,GAClBD,KAAK,CAACC,cAAc,IACpBP,sBAAsB,CAAC,CAAC,CAACQ,GAAG,CAAEC,KAAK,KAAM;MACvCC,IAAI,EAAED,KAAK,CAACE,WAAW;MACvBC,YAAY,EACVH,KAAK,CAACI,OAAO,EAAEC,IAAI,EAAEC,UAAU,GAC7BlB,eAAe,CAACY,KAAK,CAACI,OAAO,CAACC,IAAI,CAACC,UAAU,CAAC,GAC9CC,SAAS;MACbC,MAAM,EAAER,KAAK,CAACQ;IAChB,CAAC,CAAC,CAAC;IACL,MAAMA,MAAM,GAAGX,KAAK,CAACW,MAAM,IAAIV,cAAc,CAACW,EAAE,CAAC,CAAC,CAAC,CAAC,EAAED,MAAM,IAAID,SAAS;IACzE,MAAMG,EAAE,GAAG,QAAQ,IAAI,CAACf,KAAK,CAACgB,MAAM,GAAG,CAAC,IAAIC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE;IACxD,MAAMC,UAAsB,GAAG;MAC7BJ,EAAE;MACFK,OAAO,EAAElB,KAAK,CAACkB,OAAO;MACtBC,QAAQ,EAAEnB,KAAK,CAACmB,QAAQ,IAAI,SAAS;MACrCR,MAAM;MACNV;IACF,CAAC;IACD,IAAI,CAACL,OAAO,CAACwB,GAAG,CAACP,EAAE,EAAEI,UAAU,CAAC;IAChC,IAAI,CAACnB,KAAK,CAACuB,IAAI,CAACR,EAAE,CAAC;;IAEnB;IACA,IAAI,CAACS,SAAS,CAAC,CAAC;IAEhB,OAAO;MACLC,OAAO,EAAEA,CAAA,KAAM;QACb,IAAI,CAAC3B,OAAO,CAAC4B,MAAM,CAACX,EAAE,CAAC;QACvB;QACA,IAAI,CAACS,SAAS,CAAC,CAAC;MAClB;IACF,CAAC;EACH;EAEAG,cAAcA,CAAA,EAAG;IACf,OAAO,IAAI,CAAC3B,KAAK,CACdI,GAAG,CAAEW,EAAE,IAAK,IAAI,CAACjB,OAAO,CAAC8B,GAAG,CAACb,EAAE,CAAC,CAAC,CACjCc,MAAM,CAAExB,KAAK,IAA0ByB,OAAO,CAACzB,KAAK,CAAC,CAAC;EAC3D;EAEQmB,SAASA,CAAA,EAAG;IAClB,MAAMO,WAAW,GAAG,IAAI,CAACJ,cAAc,CAAC,CAAC;IACzC,KAAK,MAAMR,UAAU,IAAIY,WAAW,EAAE;MACpCrC,gBAAgB,CACdyB,UAAU,CAACC,OAAO,EAClBD,UAAU,CAACE,QAAQ,EACnBF,UAAU,CAACN,MAAM,EAAEmB,QAAQ,EAC3Bb,UAAU,CAACN,MAAM,EAAEoB,UAAU,EAC7Bd,UAAU,CAACN,MAAM,EAAEqB,YAAY,EAC/Bf,UAAU,CAAChB,cAAc,GACvBgC,IAAI,CAACC,SAAS,CAACjB,UAAU,CAAChB,cAAc,CAAC,GACzCS,SACJ,CAAC;IACH;EACF;AACF;AAEA,MAAMyB,oBAAoB,GAAG,aAAa;AAE1C,OAAO,SAASC,0BAA0BA,CAACC,SAA+B,EAAE;EAC1E,MAAM9B,OAAO,GAAGd,UAAU,CAAC,CAAC;EAC5B,IAAI,CAACc,OAAO,EAAE;EACdA,OAAO,CAACC,IAAI,KAAK,CAAC,CAAC;EACnBD,OAAO,CAACC,IAAI,CAAC2B,oBAAoB,CAAC,GAAGE,SAAS;AAChD;AAEA,SAASC,kCAAkCA,CAAA,EAE7B;EACZ,IAAI/B,OAAO,GAAGd,UAAU,CAAC,CAAC;EAC1B,OAAOc,OAAO,EAAE;IACd,MAAM8B,SAAS,GAAG9B,OAAO,CAACC,IAAI,GAAG2B,oBAAoB,CAExC;IACb,IAAIE,SAAS,EAAE,OAAOA,SAAS;IAC/B9B,OAAO,GAAGA,OAAO,CAACgC,KAAK;EACzB;EACA,OAAO7B,SAAS;AAClB;AAEA,OAAO,SAAS8B,cAAcA,CAACxC,KAAsB,EAAoB;EACvE,MAAMqC,SAAS,GAAGC,kCAAkC,CAAC,CAAC;EACtD,IAAI,CAACD,SAAS,EAAE;IACd,OAAO;MACLd,OAAO,EAAEA,CAAA,KAAMb;IACjB,CAAC;EACH;EACA,OAAO2B,SAAS,CAACtC,IAAI,CAACC,KAAK,CAAC;AAC9B;AAEA,OAAO,SAASyC,iBAAiBA,CAACJ,SAA+B,EAAE;EACjE,MAAMR,WAAW,GAAGQ,SAAS,CAACZ,cAAc,CAAC,CAAC;EAC9C,IAAII,WAAW,CAACf,MAAM,KAAK,CAAC,EAAE;EAE9B,KAAK,MAAMG,UAAU,IAAIY,WAAW,EAAE;IACpC,MAAMa,QAAQ,GACZzB,UAAU,CAACN,MAAM,GACf,KAAKM,UAAU,CAACN,MAAM,CAACmB,QAAQ,IAAIb,UAAU,CAACN,MAAM,CAACoB,UAAU,IAAId,UAAU,CAACN,MAAM,CAACqB,YAAY,GAAG,GACpG,EAAE;IACN,MAAMW,IAAI,GAAG,GAAG1B,UAAU,CAACC,OAAO,GAAGwB,QAAQ,EAAE;IAC/C,IAAIzB,UAAU,CAACE,QAAQ,KAAK,OAAO,EAAE;MACnC;MACAyB,OAAO,CAACC,KAAK,CAACF,IAAI,CAAC;IACrB,CAAC,MAAM,IAAI1B,UAAU,CAACE,QAAQ,KAAK,SAAS,EAAE;MAC5C;MACAyB,OAAO,CAACE,IAAI,CAACH,IAAI,CAAC;IACpB,CAAC,MAAM;MACL;MACAC,OAAO,CAACG,GAAG,CAACJ,IAAI,CAAC;IACnB;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"names":["getRenderNodeId","deleteDiagnostic","insertDiagnostic","isTraceEnabled","getContext","getRenderStackSnapshot","buildComponentStack","map","entry","name","displayName","renderNodeId","context","meta","renderNode","undefined","source","DiagnosticsCollector","entries","Map","order","traceRowIds","emit","input","traceEnabled","componentStack","at","id","length","Date","now","diagnostic","message","severity","set","push","rowId","fileName","lineNumber","columnNumber","JSON","stringify","dismiss","delete","get","getDiagnostics","filter","Boolean","DIAGNOSTICS_META_KEY","attachDiagnosticsCollector","collector","getDiagnosticsCollectorFromContext","owner","emitDiagnostic","reportDiagnostics","diagnostics","location","line","console","error","warn","log"],"sources":["../../../src/diagnostics.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,2 +1,14 @@
1
+ /**
2
+ * Vitest matcher type augmentations for alloy testing.
3
+ *
4
+ * Consumers load these types via `"types": ["@alloy-js/core/testing/matchers"]`
5
+ * in their tsconfig.json. This file is resolved directly from the source tree
6
+ * (not from dist/), so it **must remain self-contained** — do NOT add imports
7
+ * that resolve to .ts source files (e.g. `./extend-expect.js`). Doing so pulls
8
+ * the entire src/ tree into the consumer's compilation, creating a dual-module
9
+ * identity conflict between src/ types and dist/ types that produces TS errors.
10
+ *
11
+ * If matcher signatures change, update the inlined types here to match.
12
+ */
1
13
  import "vitest";
2
14
  //# sourceMappingURL=vitest.d.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../testing/vitest.d.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,QAAQ","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../testing/vitest.d.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,QAAQ","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=diagnostics-broadcast.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostics-broadcast.test.d.ts","sourceRoot":"","sources":["../../../src/debug/diagnostics-broadcast.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,100 @@
1
+ import { mkdtempSync, rmSync } from "node:fs";
2
+ import { tmpdir } from "node:os";
3
+ import { join } from "node:path";
4
+ import { afterEach, beforeEach, expect, it } from "vitest";
5
+ import { DiagnosticsCollector } from "../diagnostics.js";
6
+ import { closeTrace, initTrace, setChangeListener } from "./trace-writer.js";
7
+ let tmpDir;
8
+ beforeEach(async () => {
9
+ tmpDir = mkdtempSync(join(tmpdir(), "alloy-diag-test-"));
10
+ });
11
+ afterEach(async () => {
12
+ setChangeListener(null);
13
+ closeTrace();
14
+ rmSync(tmpDir, {
15
+ recursive: true,
16
+ force: true
17
+ });
18
+ });
19
+ it("does not call insertDiagnostic when tracing is disabled", () => {
20
+ let events = 0;
21
+ setChangeListener(() => {
22
+ events++;
23
+ });
24
+ const collector = new DiagnosticsCollector();
25
+ for (let i = 0; i < 100; i++) {
26
+ collector.emit({
27
+ message: `diag ${i}`,
28
+ severity: "warning"
29
+ });
30
+ }
31
+
32
+ // No trace DB => no change events should fire.
33
+ expect(events).toBe(0);
34
+ expect(collector.getDiagnostics()).toHaveLength(100);
35
+ });
36
+ it("emits one added event per diagnostic (linear, not quadratic)", async () => {
37
+ await initTrace(join(tmpDir, "trace.db"));
38
+ const events = [];
39
+ setChangeListener(event => {
40
+ events.push({
41
+ channel: event.channel,
42
+ action: event.action
43
+ });
44
+ });
45
+ const collector = new DiagnosticsCollector();
46
+ const N = 50;
47
+ for (let i = 0; i < N; i++) {
48
+ collector.emit({
49
+ message: `diag ${i}`,
50
+ severity: "warning"
51
+ });
52
+ }
53
+ const added = events.filter(e => e.channel === "diagnostics" && e.action === "added");
54
+ expect(added).toHaveLength(N); // was previously N*(N+1)/2 due to re-broadcast
55
+ });
56
+ it("emits one removed event per dismissal", async () => {
57
+ await initTrace(join(tmpDir, "trace.db"));
58
+ const events = [];
59
+ setChangeListener(event => {
60
+ events.push({
61
+ channel: event.channel,
62
+ action: event.action
63
+ });
64
+ });
65
+ const collector = new DiagnosticsCollector();
66
+ const handles = [];
67
+ for (let i = 0; i < 10; i++) {
68
+ handles.push(collector.emit({
69
+ message: `diag ${i}`,
70
+ severity: "warning"
71
+ }));
72
+ }
73
+ for (const h of handles) h.dismiss();
74
+ const added = events.filter(e => e.channel === "diagnostics" && e.action === "added");
75
+ const removed = events.filter(e => e.channel === "diagnostics" && e.action === "removed");
76
+ expect(added).toHaveLength(10);
77
+ expect(removed).toHaveLength(10);
78
+ expect(collector.getDiagnostics()).toHaveLength(0);
79
+ });
80
+ it("dismiss is idempotent and only fires one removal", async () => {
81
+ await initTrace(join(tmpDir, "trace.db"));
82
+ const events = [];
83
+ setChangeListener(event => {
84
+ events.push({
85
+ channel: event.channel,
86
+ action: event.action
87
+ });
88
+ });
89
+ const collector = new DiagnosticsCollector();
90
+ const h = collector.emit({
91
+ message: "once",
92
+ severity: "warning"
93
+ });
94
+ h.dismiss();
95
+ h.dismiss();
96
+ h.dismiss();
97
+ const removed = events.filter(e => e.channel === "diagnostics" && e.action === "removed");
98
+ expect(removed).toHaveLength(1);
99
+ });
100
+ //# sourceMappingURL=diagnostics-broadcast.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["mkdtempSync","rmSync","tmpdir","join","afterEach","beforeEach","expect","it","DiagnosticsCollector","closeTrace","initTrace","setChangeListener","tmpDir","recursive","force","events","collector","i","emit","message","severity","toBe","getDiagnostics","toHaveLength","event","push","channel","action","N","added","filter","e","handles","h","dismiss","removed"],"sources":["../../../src/debug/diagnostics-broadcast.test.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAW,EAAEC,MAAM,QAAQ,SAAS;AAC7C,SAASC,MAAM,QAAQ,SAAS;AAChC,SAASC,IAAI,QAAQ,WAAW;AAChC,SAASC,SAAS,EAAEC,UAAU,EAAEC,MAAM,EAAEC,EAAE,QAAQ,QAAQ;AAC1D,SAASC,oBAAoB,QAAQ,mBAAmB;AACxD,SAASC,UAAU,EAAEC,SAAS,EAAEC,iBAAiB,QAAQ,mBAAmB;AAE5E,IAAIC,MAAc;AAElBP,UAAU,CAAC,YAAY;EACrBO,MAAM,GAAGZ,WAAW,CAACG,IAAI,CAACD,MAAM,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;AAC1D,CAAC,CAAC;AAEFE,SAAS,CAAC,YAAY;EACpBO,iBAAiB,CAAC,IAAI,CAAC;EACvBF,UAAU,CAAC,CAAC;EACZR,MAAM,CAACW,MAAM,EAAE;IAAEC,SAAS,EAAE,IAAI;IAAEC,KAAK,EAAE;EAAK,CAAC,CAAC;AAClD,CAAC,CAAC;AAEFP,EAAE,CAAC,yDAAyD,EAAE,MAAM;EAClE,IAAIQ,MAAM,GAAG,CAAC;EACdJ,iBAAiB,CAAC,MAAM;IACtBI,MAAM,EAAE;EACV,CAAC,CAAC;EAEF,MAAMC,SAAS,GAAG,IAAIR,oBAAoB,CAAC,CAAC;EAC5C,KAAK,IAAIS,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,GAAG,EAAEA,CAAC,EAAE,EAAE;IAC5BD,SAAS,CAACE,IAAI,CAAC;MAAEC,OAAO,EAAE,QAAQF,CAAC,EAAE;MAAEG,QAAQ,EAAE;IAAU,CAAC,CAAC;EAC/D;;EAEA;EACAd,MAAM,CAACS,MAAM,CAAC,CAACM,IAAI,CAAC,CAAC,CAAC;EACtBf,MAAM,CAACU,SAAS,CAACM,cAAc,CAAC,CAAC,CAAC,CAACC,YAAY,CAAC,GAAG,CAAC;AACtD,CAAC,CAAC;AAEFhB,EAAE,CAAC,8DAA8D,EAAE,YAAY;EAC7E,MAAMG,SAAS,CAACP,IAAI,CAACS,MAAM,EAAE,UAAU,CAAC,CAAC;EACzC,MAAMG,MAAkD,GAAG,EAAE;EAC7DJ,iBAAiB,CAAEa,KAAK,IAAK;IAC3BT,MAAM,CAACU,IAAI,CAAC;MAAEC,OAAO,EAAEF,KAAK,CAACE,OAAO;MAAEC,MAAM,EAAEH,KAAK,CAACG;IAAO,CAAC,CAAC;EAC/D,CAAC,CAAC;EAEF,MAAMX,SAAS,GAAG,IAAIR,oBAAoB,CAAC,CAAC;EAC5C,MAAMoB,CAAC,GAAG,EAAE;EACZ,KAAK,IAAIX,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGW,CAAC,EAAEX,CAAC,EAAE,EAAE;IAC1BD,SAAS,CAACE,IAAI,CAAC;MAAEC,OAAO,EAAE,QAAQF,CAAC,EAAE;MAAEG,QAAQ,EAAE;IAAU,CAAC,CAAC;EAC/D;EAEA,MAAMS,KAAK,GAAGd,MAAM,CAACe,MAAM,CACxBC,CAAC,IAAKA,CAAC,CAACL,OAAO,KAAK,aAAa,IAAIK,CAAC,CAACJ,MAAM,KAAK,OACrD,CAAC;EACDrB,MAAM,CAACuB,KAAK,CAAC,CAACN,YAAY,CAACK,CAAC,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC;AAEFrB,EAAE,CAAC,uCAAuC,EAAE,YAAY;EACtD,MAAMG,SAAS,CAACP,IAAI,CAACS,MAAM,EAAE,UAAU,CAAC,CAAC;EACzC,MAAMG,MAAkD,GAAG,EAAE;EAC7DJ,iBAAiB,CAAEa,KAAK,IAAK;IAC3BT,MAAM,CAACU,IAAI,CAAC;MAAEC,OAAO,EAAEF,KAAK,CAACE,OAAO;MAAEC,MAAM,EAAEH,KAAK,CAACG;IAAO,CAAC,CAAC;EAC/D,CAAC,CAAC;EAEF,MAAMX,SAAS,GAAG,IAAIR,oBAAoB,CAAC,CAAC;EAC5C,MAAMwB,OAAO,GAAG,EAAE;EAClB,KAAK,IAAIf,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,EAAE,EAAEA,CAAC,EAAE,EAAE;IAC3Be,OAAO,CAACP,IAAI,CAACT,SAAS,CAACE,IAAI,CAAC;MAAEC,OAAO,EAAE,QAAQF,CAAC,EAAE;MAAEG,QAAQ,EAAE;IAAU,CAAC,CAAC,CAAC;EAC7E;EAEA,KAAK,MAAMa,CAAC,IAAID,OAAO,EAAEC,CAAC,CAACC,OAAO,CAAC,CAAC;EAEpC,MAAML,KAAK,GAAGd,MAAM,CAACe,MAAM,CACxBC,CAAC,IAAKA,CAAC,CAACL,OAAO,KAAK,aAAa,IAAIK,CAAC,CAACJ,MAAM,KAAK,OACrD,CAAC;EACD,MAAMQ,OAAO,GAAGpB,MAAM,CAACe,MAAM,CAC1BC,CAAC,IAAKA,CAAC,CAACL,OAAO,KAAK,aAAa,IAAIK,CAAC,CAACJ,MAAM,KAAK,SACrD,CAAC;EACDrB,MAAM,CAACuB,KAAK,CAAC,CAACN,YAAY,CAAC,EAAE,CAAC;EAC9BjB,MAAM,CAAC6B,OAAO,CAAC,CAACZ,YAAY,CAAC,EAAE,CAAC;EAChCjB,MAAM,CAACU,SAAS,CAACM,cAAc,CAAC,CAAC,CAAC,CAACC,YAAY,CAAC,CAAC,CAAC;AACpD,CAAC,CAAC;AAEFhB,EAAE,CAAC,kDAAkD,EAAE,YAAY;EACjE,MAAMG,SAAS,CAACP,IAAI,CAACS,MAAM,EAAE,UAAU,CAAC,CAAC;EACzC,MAAMG,MAAkD,GAAG,EAAE;EAC7DJ,iBAAiB,CAAEa,KAAK,IAAK;IAC3BT,MAAM,CAACU,IAAI,CAAC;MAAEC,OAAO,EAAEF,KAAK,CAACE,OAAO;MAAEC,MAAM,EAAEH,KAAK,CAACG;IAAO,CAAC,CAAC;EAC/D,CAAC,CAAC;EAEF,MAAMX,SAAS,GAAG,IAAIR,oBAAoB,CAAC,CAAC;EAC5C,MAAMyB,CAAC,GAAGjB,SAAS,CAACE,IAAI,CAAC;IAAEC,OAAO,EAAE,MAAM;IAAEC,QAAQ,EAAE;EAAU,CAAC,CAAC;EAClEa,CAAC,CAACC,OAAO,CAAC,CAAC;EACXD,CAAC,CAACC,OAAO,CAAC,CAAC;EACXD,CAAC,CAACC,OAAO,CAAC,CAAC;EAEX,MAAMC,OAAO,GAAGpB,MAAM,CAACe,MAAM,CAC1BC,CAAC,IAAKA,CAAC,CAACL,OAAO,KAAK,aAAa,IAAIK,CAAC,CAACJ,MAAM,KAAK,SACrD,CAAC;EACDrB,MAAM,CAAC6B,OAAO,CAAC,CAACZ,YAAY,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC","ignoreList":[]}
@@ -29,7 +29,8 @@ export declare function insertScope(id: number, name: string, parentId: number |
29
29
  export declare function updateScope(id: number, name: string, parentId: number | undefined, ownerSymbolId: number | undefined, renderNodeId: number | undefined, isMemberScope: boolean, metadata: string | undefined): void;
30
30
  export declare function deleteScope(id: number): void;
31
31
  export declare function insertRenderError(name: string | undefined, message: string | undefined, stack: string | undefined, componentStack: string | undefined): void;
32
- export declare function insertDiagnostic(message: string, severity: string | undefined, sourceFile: string | undefined, sourceLine: number | undefined, sourceCol: number | undefined, componentStack: string | undefined): void;
32
+ export declare function insertDiagnostic(message: string, severity: string | undefined, sourceFile: string | undefined, sourceLine: number | undefined, sourceCol: number | undefined, componentStack: string | undefined): number | undefined;
33
+ export declare function deleteDiagnostic(id: number): void;
33
34
  /**
34
35
  * Batch diagnostics report notification. Individual diagnostics are already
35
36
  * inserted via insertDiagnostic during render; this is a no-op placeholder
@@ -1 +1 @@
1
- {"version":3,"file":"trace-writer.d.ts","sourceRoot":"","sources":["../../../src/debug/trace-writer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trace-writer.d.ts","sourceRoot":"","sources":["../../../src/debug/trace-writer.ts"],"names":[],"mappings":"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"}
@@ -528,11 +528,14 @@ export function insertRenderError(name, message, stack, componentStack) {
528
528
  seq: s
529
529
  });
530
530
  }
531
+ let stmtDeleteDiagnostic;
531
532
  export function insertDiagnostic(message, severity, sourceFile, sourceLine, sourceCol, componentStack) {
532
- if (!db) return;
533
+ if (!db) return undefined;
533
534
  const s = nextSeq();
534
- stmtInsertDiagnostic.run(message, severity ?? null, sourceFile ?? null, sourceLine ?? null, sourceCol ?? null, componentStack ?? null, s);
535
+ const info = stmtInsertDiagnostic.run(message, severity ?? null, sourceFile ?? null, sourceLine ?? null, sourceCol ?? null, componentStack ?? null, s);
536
+ const id = Number(info.lastInsertRowid);
535
537
  notifyChange("diagnostics", "added", {
538
+ id,
536
539
  message,
537
540
  severity: severity ?? null,
538
541
  source_file: sourceFile ?? null,
@@ -541,6 +544,18 @@ export function insertDiagnostic(message, severity, sourceFile, sourceLine, sour
541
544
  component_stack: componentStack ?? null,
542
545
  seq: s
543
546
  });
547
+ return id;
548
+ }
549
+ export function deleteDiagnostic(id) {
550
+ if (!db) return;
551
+ if (!stmtDeleteDiagnostic) {
552
+ stmtDeleteDiagnostic = db.prepare(`DELETE FROM diagnostics WHERE id = ?`);
553
+ }
554
+ stmtDeleteDiagnostic.run(id);
555
+ notifyChange("diagnostics", "removed", {
556
+ id,
557
+ seq: nextSeq()
558
+ });
544
559
  }
545
560
 
546
561
  /**
@@ -631,6 +646,7 @@ export function commitTransaction() {
631
646
  export function closeTrace() {
632
647
  db?.close();
633
648
  db = null;
649
+ stmtDeleteDiagnostic = undefined;
634
650
  }
635
651
  export function resetTrace() {
636
652
  seq = 0;