@haibun/web-playwright 1.59.0 → 1.60.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/build/cycles.d.ts +4 -0
  2. package/build/cycles.d.ts.map +1 -0
  3. package/build/cycles.js +83 -0
  4. package/build/cycles.js.map +1 -0
  5. package/build/interactionSteps.d.ts +221 -0
  6. package/build/interactionSteps.d.ts.map +1 -0
  7. package/build/interactionSteps.js +515 -0
  8. package/build/interactionSteps.js.map +1 -0
  9. package/build/monitor/LogEntry.d.ts +4 -0
  10. package/build/monitor/LogEntry.d.ts.map +1 -0
  11. package/build/monitor/LogEntry.js +4 -0
  12. package/build/monitor/LogEntry.js.map +1 -0
  13. package/build/monitor/MonitorHandler.d.ts.map +1 -1
  14. package/build/monitor/MonitorHandler.js +24 -46
  15. package/build/monitor/MonitorHandler.js.map +1 -1
  16. package/build/monitor/artifactDisplayBase.d.ts +2 -0
  17. package/build/monitor/artifactDisplayBase.d.ts.map +1 -0
  18. package/build/monitor/artifactDisplayBase.js +2 -0
  19. package/build/monitor/artifactDisplayBase.js.map +1 -0
  20. package/build/monitor/artifactDisplays/HtmlArtifactDisplay.d.ts +9 -0
  21. package/build/monitor/artifactDisplays/HtmlArtifactDisplay.d.ts.map +1 -0
  22. package/build/monitor/artifactDisplays/HtmlArtifactDisplay.js +31 -0
  23. package/build/monitor/artifactDisplays/HtmlArtifactDisplay.js.map +1 -0
  24. package/build/monitor/artifactDisplays/ImageArtifactDisplay.d.ts +9 -0
  25. package/build/monitor/artifactDisplays/ImageArtifactDisplay.d.ts.map +1 -0
  26. package/build/monitor/artifactDisplays/ImageArtifactDisplay.js +17 -0
  27. package/build/monitor/artifactDisplays/ImageArtifactDisplay.js.map +1 -0
  28. package/build/monitor/artifactDisplays/JsonArtifactDisplay.d.ts +9 -0
  29. package/build/monitor/artifactDisplays/JsonArtifactDisplay.d.ts.map +1 -0
  30. package/build/monitor/artifactDisplays/JsonArtifactDisplay.js +18 -0
  31. package/build/monitor/artifactDisplays/JsonArtifactDisplay.js.map +1 -0
  32. package/build/monitor/artifactDisplays/JsonArtifactHTTPTrace.d.ts +14 -0
  33. package/build/monitor/artifactDisplays/JsonArtifactHTTPTrace.d.ts.map +1 -0
  34. package/build/monitor/artifactDisplays/JsonArtifactHTTPTrace.js +69 -0
  35. package/build/monitor/artifactDisplays/JsonArtifactHTTPTrace.js.map +1 -0
  36. package/build/monitor/artifactDisplays/MermaidDiagram.d.ts +22 -0
  37. package/build/monitor/artifactDisplays/MermaidDiagram.d.ts.map +1 -0
  38. package/build/monitor/artifactDisplays/MermaidDiagram.js +199 -0
  39. package/build/monitor/artifactDisplays/MermaidDiagram.js.map +1 -0
  40. package/build/monitor/artifactDisplays/ResolvedFeaturesArtifactDisplay.d.ts +9 -0
  41. package/build/monitor/artifactDisplays/ResolvedFeaturesArtifactDisplay.d.ts.map +1 -0
  42. package/build/monitor/artifactDisplays/ResolvedFeaturesArtifactDisplay.js +38 -0
  43. package/build/monitor/artifactDisplays/ResolvedFeaturesArtifactDisplay.js.map +1 -0
  44. package/build/monitor/artifactDisplays/SequenceDiagramGenerator.d.ts +32 -0
  45. package/build/monitor/artifactDisplays/SequenceDiagramGenerator.d.ts.map +1 -0
  46. package/build/monitor/artifactDisplays/SequenceDiagramGenerator.js +258 -0
  47. package/build/monitor/artifactDisplays/SequenceDiagramGenerator.js.map +1 -0
  48. package/build/monitor/artifactDisplays/SpeechArtifactDisplay.d.ts +9 -0
  49. package/build/monitor/artifactDisplays/SpeechArtifactDisplay.d.ts.map +1 -0
  50. package/build/monitor/artifactDisplays/SpeechArtifactDisplay.js +19 -0
  51. package/build/monitor/artifactDisplays/SpeechArtifactDisplay.js.map +1 -0
  52. package/build/monitor/artifactDisplays/VideoArtifactDisplay.d.ts +9 -0
  53. package/build/monitor/artifactDisplays/VideoArtifactDisplay.d.ts.map +1 -0
  54. package/build/monitor/artifactDisplays/VideoArtifactDisplay.js +21 -0
  55. package/build/monitor/artifactDisplays/VideoArtifactDisplay.js.map +1 -0
  56. package/build/monitor/artifactDisplays/VideoStartArtifactDisplay.d.ts +9 -0
  57. package/build/monitor/artifactDisplays/VideoStartArtifactDisplay.d.ts.map +1 -0
  58. package/build/monitor/artifactDisplays/VideoStartArtifactDisplay.js +17 -0
  59. package/build/monitor/artifactDisplays/VideoStartArtifactDisplay.js.map +1 -0
  60. package/build/monitor/artifactDisplays/artifactDisplayBase.d.ts +20 -0
  61. package/build/monitor/artifactDisplays/artifactDisplayBase.d.ts.map +1 -0
  62. package/build/monitor/artifactDisplays/artifactDisplayBase.js +40 -0
  63. package/build/monitor/artifactDisplays/artifactDisplayBase.js.map +1 -0
  64. package/build/monitor/artifactDisplays/htmlArtifactDisplay.d.ts +9 -0
  65. package/build/monitor/artifactDisplays/htmlArtifactDisplay.d.ts.map +1 -0
  66. package/build/monitor/artifactDisplays/htmlArtifactDisplay.js +31 -0
  67. package/build/monitor/artifactDisplays/htmlArtifactDisplay.js.map +1 -0
  68. package/build/monitor/artifactDisplays/imageArtifactDisplay.d.ts +9 -0
  69. package/build/monitor/artifactDisplays/imageArtifactDisplay.d.ts.map +1 -0
  70. package/build/monitor/artifactDisplays/imageArtifactDisplay.js +17 -0
  71. package/build/monitor/artifactDisplays/imageArtifactDisplay.js.map +1 -0
  72. package/build/monitor/artifactDisplays/jsonArtifactDisplay.d.ts +9 -0
  73. package/build/monitor/artifactDisplays/jsonArtifactDisplay.d.ts.map +1 -0
  74. package/build/monitor/artifactDisplays/jsonArtifactDisplay.js +18 -0
  75. package/build/monitor/artifactDisplays/jsonArtifactDisplay.js.map +1 -0
  76. package/build/monitor/artifactDisplays/jsonArtifactHTTPTrace.d.ts +14 -0
  77. package/build/monitor/artifactDisplays/jsonArtifactHTTPTrace.d.ts.map +1 -0
  78. package/build/monitor/artifactDisplays/jsonArtifactHTTPTrace.js +72 -0
  79. package/build/monitor/artifactDisplays/jsonArtifactHTTPTrace.js.map +1 -0
  80. package/build/monitor/artifactDisplays/mermaidDiagram.d.ts +22 -0
  81. package/build/monitor/artifactDisplays/mermaidDiagram.d.ts.map +1 -0
  82. package/build/monitor/artifactDisplays/mermaidDiagram.js +199 -0
  83. package/build/monitor/artifactDisplays/mermaidDiagram.js.map +1 -0
  84. package/build/monitor/artifactDisplays/resolvedFeaturesArtifactDisplay.d.ts +9 -0
  85. package/build/monitor/artifactDisplays/resolvedFeaturesArtifactDisplay.d.ts.map +1 -0
  86. package/build/monitor/artifactDisplays/resolvedFeaturesArtifactDisplay.js +36 -0
  87. package/build/monitor/artifactDisplays/resolvedFeaturesArtifactDisplay.js.map +1 -0
  88. package/build/monitor/artifactDisplays/sequenceDiagramGenerator.d.ts +32 -0
  89. package/build/monitor/artifactDisplays/sequenceDiagramGenerator.d.ts.map +1 -0
  90. package/build/monitor/artifactDisplays/sequenceDiagramGenerator.js +299 -0
  91. package/build/monitor/artifactDisplays/sequenceDiagramGenerator.js.map +1 -0
  92. package/build/monitor/artifactDisplays/speechArtifactDisplay.d.ts +9 -0
  93. package/build/monitor/artifactDisplays/speechArtifactDisplay.d.ts.map +1 -0
  94. package/build/monitor/artifactDisplays/speechArtifactDisplay.js +38 -0
  95. package/build/monitor/artifactDisplays/speechArtifactDisplay.js.map +1 -0
  96. package/build/monitor/artifactDisplays/videoArtifactDisplay.d.ts +9 -0
  97. package/build/monitor/artifactDisplays/videoArtifactDisplay.d.ts.map +1 -0
  98. package/build/monitor/artifactDisplays/videoArtifactDisplay.js +22 -0
  99. package/build/monitor/artifactDisplays/videoArtifactDisplay.js.map +1 -0
  100. package/build/monitor/artifactDisplays/videoStartArtifactDisplay.d.ts +9 -0
  101. package/build/monitor/artifactDisplays/videoStartArtifactDisplay.d.ts.map +1 -0
  102. package/build/monitor/artifactDisplays/videoStartArtifactDisplay.js +30 -0
  103. package/build/monitor/artifactDisplays/videoStartArtifactDisplay.js.map +1 -0
  104. package/build/monitor/graph/feature-bases.d.ts +5 -0
  105. package/build/monitor/graph/feature-bases.d.ts.map +1 -0
  106. package/build/monitor/graph/feature-bases.js +36 -0
  107. package/build/monitor/graph/feature-bases.js.map +1 -0
  108. package/build/monitor/graph/generateMermaidGraph.d.ts +4 -0
  109. package/build/monitor/graph/generateMermaidGraph.d.ts.map +1 -0
  110. package/build/monitor/graph/generateMermaidGraph.js +142 -0
  111. package/build/monitor/graph/generateMermaidGraph.js.map +1 -0
  112. package/build/monitor/graph/graphUtils.d.ts +3 -0
  113. package/build/monitor/graph/graphUtils.d.ts.map +1 -0
  114. package/build/monitor/graph/graphUtils.js +16 -0
  115. package/build/monitor/graph/graphUtils.js.map +1 -0
  116. package/build/monitor/graph/mermaidGraphLinks.d.ts +3 -0
  117. package/build/monitor/graph/mermaidGraphLinks.d.ts.map +1 -0
  118. package/build/monitor/graph/mermaidGraphLinks.js +31 -0
  119. package/build/monitor/graph/mermaidGraphLinks.js.map +1 -0
  120. package/build/monitor/htmlArtifactDisplay.d.ts +2 -0
  121. package/build/monitor/htmlArtifactDisplay.d.ts.map +1 -0
  122. package/build/monitor/htmlArtifactDisplay.js +2 -0
  123. package/build/monitor/htmlArtifactDisplay.js.map +1 -0
  124. package/build/monitor/imageArtifactDisplay.d.ts +2 -0
  125. package/build/monitor/imageArtifactDisplay.d.ts.map +1 -0
  126. package/build/monitor/imageArtifactDisplay.js +2 -0
  127. package/build/monitor/imageArtifactDisplay.js.map +1 -0
  128. package/build/monitor/jsonArtifactDisplay.d.ts +2 -0
  129. package/build/monitor/jsonArtifactDisplay.d.ts.map +1 -0
  130. package/build/monitor/jsonArtifactDisplay.js +2 -0
  131. package/build/monitor/jsonArtifactDisplay.js.map +1 -0
  132. package/build/monitor/jsonArtifactHTTPTrace.d.ts +2 -0
  133. package/build/monitor/jsonArtifactHTTPTrace.d.ts.map +1 -0
  134. package/build/monitor/jsonArtifactHTTPTrace.js +2 -0
  135. package/build/monitor/jsonArtifactHTTPTrace.js.map +1 -0
  136. package/build/monitor/messages.d.ts +9 -21
  137. package/build/monitor/messages.d.ts.map +1 -1
  138. package/build/monitor/messages.js +83 -216
  139. package/build/monitor/messages.js.map +1 -1
  140. package/build/monitor/monitor.d.ts +9 -4
  141. package/build/monitor/monitor.d.ts.map +1 -1
  142. package/build/monitor/monitor.js +8 -18
  143. package/build/monitor/monitor.js.map +1 -1
  144. package/build/monitor/resolvedFeaturesArtifactDisplay.d.ts +2 -0
  145. package/build/monitor/resolvedFeaturesArtifactDisplay.d.ts.map +1 -0
  146. package/build/monitor/resolvedFeaturesArtifactDisplay.js +2 -0
  147. package/build/monitor/resolvedFeaturesArtifactDisplay.js.map +1 -0
  148. package/build/monitor/sequenceDiagramGenerator.d.ts +32 -0
  149. package/build/monitor/sequenceDiagramGenerator.d.ts.map +1 -0
  150. package/build/monitor/sequenceDiagramGenerator.js +299 -0
  151. package/build/monitor/sequenceDiagramGenerator.js.map +1 -0
  152. package/build/monitor/speechArtifactDisplay.d.ts +2 -0
  153. package/build/monitor/speechArtifactDisplay.d.ts.map +1 -0
  154. package/build/monitor/speechArtifactDisplay.js +2 -0
  155. package/build/monitor/speechArtifactDisplay.js.map +1 -0
  156. package/build/monitor/test-utils.d.ts +9 -0
  157. package/build/monitor/test-utils.d.ts.map +1 -0
  158. package/build/monitor/test-utils.js +70 -0
  159. package/build/monitor/test-utils.js.map +1 -0
  160. package/build/monitor/videoArtifactDisplay.d.ts +2 -0
  161. package/build/monitor/videoArtifactDisplay.d.ts.map +1 -0
  162. package/build/monitor/videoArtifactDisplay.js +2 -0
  163. package/build/monitor/videoArtifactDisplay.js.map +1 -0
  164. package/build/monitor/videoStartArtifactDisplay.d.ts +2 -0
  165. package/build/monitor/videoStartArtifactDisplay.d.ts.map +1 -0
  166. package/build/monitor/videoStartArtifactDisplay.js +2 -0
  167. package/build/monitor/videoStartArtifactDisplay.js.map +1 -0
  168. package/build/web-playwright.d.ts +78 -77
  169. package/build/web-playwright.d.ts.map +1 -1
  170. package/build/web-playwright.js +12 -571
  171. package/build/web-playwright.js.map +1 -1
  172. package/package.json +9 -5
  173. package/web/monitor.html +261 -260
  174. package/build/monitor/monitorHandler.d.ts +0 -16
  175. package/build/monitor/monitorHandler.d.ts.map +0 -1
  176. package/build/monitor/monitorHandler.js +0 -108
  177. package/build/monitor/monitorHandler.js.map +0 -1
  178. package/build/monitor/vite.config.d.ts +0 -4
  179. package/build/monitor/vite.config.d.ts.map +0 -1
  180. package/build/monitor/vite.config.js +0 -91
  181. package/build/monitor/vite.config.js.map +0 -1
@@ -1,51 +1,14 @@
1
1
  import { EExecutionMessageType } from '@haibun/core/build/lib/interfaces/logger.js';
2
- import { sequenceDiagramGenerator } from './monitor.js';
3
2
  import { disclosureJson } from './disclosureJson.js';
4
- class LogComponent {
5
- element;
6
- constructor(tagName, className) {
7
- this.element = document.createElement(tagName);
8
- if (className) {
9
- const classes = Array.isArray(className) ? className : [className];
10
- this.element.classList.add(...classes);
11
- }
12
- }
13
- append(child) {
14
- // Type guard ensures we append the .element property if it's a LogComponent
15
- this.element.appendChild(child instanceof LogComponent ? child.element : child);
16
- }
17
- addClass(className) {
18
- this.element.classList.add(className);
19
- }
20
- setData(key, value) {
21
- this.element.dataset[key] = value;
22
- }
23
- setHtml(html) {
24
- this.element.innerHTML = html;
25
- }
26
- setText(text) {
27
- this.element.textContent = text;
28
- }
29
- }
30
- // --- Abstract Artifact Display Base Class ---
31
- // Abstract base for artifact displays
32
- export class ArtifactDisplay extends LogComponent {
33
- artifact;
34
- label;
35
- constructor(artifact, tagName, className) {
36
- super(tagName, className);
37
- this.artifact = artifact;
38
- this.artifact = artifact;
39
- this.label = this.deriveLabel();
40
- this.render();
41
- }
42
- deriveLabel() {
43
- return this.artifact.artifactType;
44
- }
45
- get artifactType() {
46
- return this.artifact.artifactType;
47
- }
48
- }
3
+ import { LogComponent } from './artifactDisplays/artifactDisplayBase.js';
4
+ import { JsonArtifactDisplay } from './artifactDisplays/JsonArtifactDisplay.js';
5
+ import { HtmlArtifactDisplay } from './artifactDisplays/HtmlArtifactDisplay.js';
6
+ import { ImageArtifactDisplay } from './artifactDisplays/ImageArtifactDisplay.js';
7
+ import { VideoArtifactDisplay } from './artifactDisplays/VideoArtifactDisplay.js';
8
+ import { SpeechArtifactDisplay } from './artifactDisplays/SpeechArtifactDisplay.js';
9
+ import { VideoStartArtifactDisplay } from './artifactDisplays/VideoStartArtifactDisplay.js';
10
+ import { JsonArtifactHTTPTrace } from './artifactDisplays/JsonArtifactHTTPTrace.js';
11
+ import { ResolvedFeaturesArtifactDisplay } from './artifactDisplays/ResolvedFeaturesArtifactDisplay.js';
49
12
  export class LogEntry extends LogComponent {
50
13
  detailsSummary;
51
14
  messageContent;
@@ -59,30 +22,6 @@ export class LogEntry extends LogComponent {
59
22
  this.messageContent = new LogMessageContent(message, messageContext);
60
23
  this.append(this.detailsSummary);
61
24
  this.append(this.messageContent);
62
- this.handleSpecialPlacements();
63
- }
64
- handleSpecialPlacements() {
65
- const artifactDisplay = this.messageContent.artifactDisplay;
66
- if (!artifactDisplay)
67
- return;
68
- if (artifactDisplay.placementTarget === 'body') {
69
- document.body.appendChild(artifactDisplay.element);
70
- }
71
- else if (artifactDisplay.placementTarget === 'haibun-video') {
72
- const haibunVideoContainer = document.querySelector('#haibun-video');
73
- if (haibunVideoContainer) {
74
- haibunVideoContainer.replaceChildren(artifactDisplay.element);
75
- haibunVideoContainer.style.display = 'flex';
76
- }
77
- }
78
- else if (artifactDisplay.placementTarget === 'haibun-sequence-diagram') {
79
- // The element is already rendered in the details by LogMessageContent.
80
- // Here, we just need to ensure the data is processed for the diagram if needed.
81
- // The JsonArtifactHTTPTrace.render method already handles this.
82
- // No need to move the element itself.
83
- // sequenceDiagramGenerator.processEvent is called within JsonArtifactHTTPTrace.render
84
- }
85
- // 'details' placement is handled within LogMessageContent constructor
86
25
  }
87
26
  }
88
27
  // --- Log Entry Structure Components (Used by LogEntry) ---
@@ -93,64 +32,102 @@ class LogDetailsSummary extends LogComponent {
93
32
  this.setHtml(`${level}<div class="time-small">${formatTime(relativeTime)}s</div>`);
94
33
  }
95
34
  }
96
- class LogMessageContent extends LogComponent {
35
+ export class LogMessageContent extends LogComponent {
97
36
  artifactDisplay = null;
37
+ artifactContainer = null;
38
+ hasArtifactBeenRendered = false;
98
39
  constructor(message, messageContext) {
99
40
  super('div', 'haibun-message-content');
100
- const summaryMessage = getSummaryMessage(message, messageContext);
101
41
  if (messageContext) {
102
- // Context exists: ALWAYS create the details structure
103
- const incident = messageContext.incident;
104
- const incidentDetails = messageContext.incidentDetails;
105
- const artifact = messageContext.artifact;
106
- let finalLabel = EExecutionMessageType[incident] || 'Context'; // Default label is incident type
107
- // Check for artifact and update label if needed
42
+ const { incident, incidentDetails, artifact } = messageContext;
43
+ const summaryMessageToDisplay = getSummaryMessage(message, messageContext);
44
+ let labelForSummary = EExecutionMessageType[incident] || 'Context';
45
+ // Attempt to create artifact display first, as it might influence the label
108
46
  if (artifact) {
109
47
  this.artifactDisplay = createArtifactDisplay(artifact);
110
48
  if (this.artifactDisplay) {
111
- // Use artifact label if available and different, otherwise use type
112
- finalLabel = (this.artifactDisplay.label !== this.artifactDisplay.artifactType)
49
+ labelForSummary = (this.artifactDisplay.label !== this.artifactDisplay.artifactType)
113
50
  ? this.artifactDisplay.label
114
- : (this.artifactDisplay.artifactType || finalLabel);
115
- // NOTE: We no longer check placementTarget or return early here
51
+ : (this.artifactDisplay.artifactType || labelForSummary);
116
52
  }
117
53
  }
118
- // --- Create Details Wrapper ---
119
54
  const detailsElement = document.createElement('details');
120
55
  detailsElement.classList.add('haibun-context-details');
121
- // Create the summary line
122
- const messageSummary = new LogMessageSummary(summaryMessage, finalLabel);
123
- // Add loader specifically to the message summary if STEP_START
56
+ const messageSummary = new LogMessageSummary(summaryMessageToDisplay, labelForSummary);
124
57
  if (incident === EExecutionMessageType.STEP_START) {
125
58
  const loader = document.createElement('div');
126
59
  loader.className = 'haibun-loader';
127
- messageSummary.element.prepend(loader); // Prepend to the summary element
60
+ messageSummary.element.prepend(loader);
128
61
  }
129
- detailsElement.appendChild(messageSummary.element); // Append the summary (with potential loader)
130
- // Add incidentDetails JSON inside the details element
62
+ detailsElement.appendChild(messageSummary.element);
131
63
  if (incidentDetails) {
132
64
  const pre = document.createElement('pre');
133
65
  pre.classList.add('haibun-message-details-json');
134
66
  pre.appendChild(disclosureJson(incidentDetails));
135
67
  detailsElement.appendChild(pre);
136
68
  }
137
- // Add artifact display if it exists.
138
- // For JsonArtifactHTTPTrace, this ensures the <pre> is always added here.
139
69
  if (this.artifactDisplay) {
140
- detailsElement.appendChild(this.artifactDisplay.element);
141
- }
142
- this.append(detailsElement); // Append the whole details structure
143
- // If artifact placement is NOT 'details', we might still want the simple message class on the parent
144
- if (this.artifactDisplay && this.artifactDisplay.placementTarget !== 'details') {
145
- this.addClass('haibun-simple-message');
146
- // Optionally set text again if the summary text differs significantly from the desired simple text
147
- // this.setText(summaryMessage);
70
+ const placement = this.artifactDisplay.placementTarget;
71
+ if (!placement || placement === 'details') {
72
+ this.artifactContainer = document.createElement('div');
73
+ this.artifactContainer.className = `haibun-artifact-container haibun-artifact-${this.artifactDisplay.artifactType.replace(/\//g, '-')}`;
74
+ this.artifactContainer.textContent = 'Artifact is loading...';
75
+ detailsElement.appendChild(this.artifactContainer);
76
+ const targetContainer = this.artifactContainer;
77
+ const onceToggleListener = async () => {
78
+ if (detailsElement.open && this.artifactDisplay && !this.hasArtifactBeenRendered) {
79
+ try {
80
+ await this.artifactDisplay.render(targetContainer);
81
+ }
82
+ catch (error) {
83
+ console.error(`[LogMessageContent] Error rendering artifact ${this.artifactDisplay.label}:`, error);
84
+ targetContainer.innerHTML = `<p class="haibun-artifact-error">Error loading artifact: ${error.message}</p>`;
85
+ }
86
+ this.hasArtifactBeenRendered = true;
87
+ }
88
+ };
89
+ detailsElement.addEventListener('toggle', () => { void onceToggleListener(); });
90
+ }
91
+ else {
92
+ // Special placement, artifact rendered outside detailsElement
93
+ void this.renderSpecialPlacementArtifact(this.artifactDisplay, placement);
94
+ }
148
95
  }
96
+ this.append(detailsElement);
149
97
  }
150
98
  else {
151
- // No context: display simple message
152
99
  this.addClass('haibun-simple-message');
153
- this.setText(message); // Use original message
100
+ this.setText(message);
101
+ }
102
+ }
103
+ async renderSpecialPlacementArtifact(artifactDisplay, placement) {
104
+ const createAndRenderArtifact = async (targetElementUpdater) => {
105
+ const container = document.createElement('div');
106
+ container.className = `haibun-artifact-special-placement haibun-artifact-${artifactDisplay.artifactType.replace(/\//g, '-')}`;
107
+ container.textContent = 'Artifact is loading...';
108
+ try {
109
+ await artifactDisplay.render(container);
110
+ }
111
+ catch (error) {
112
+ console.error(`[LogMessageContent] Error rendering artifact ${artifactDisplay.label} for special placement ${placement}:`, error);
113
+ container.innerHTML = `<p class="haibun-artifact-error">Error loading artifact: ${error.message}</p>`;
114
+ }
115
+ targetElementUpdater(container);
116
+ };
117
+ if (placement === 'body') {
118
+ await createAndRenderArtifact(container => document.body.appendChild(container));
119
+ }
120
+ else if (placement === 'haibun-video') {
121
+ const haibunVideoContainer = document.querySelector('#haibun-video');
122
+ if (haibunVideoContainer) {
123
+ await createAndRenderArtifact(container => {
124
+ haibunVideoContainer.replaceChildren(container);
125
+ haibunVideoContainer.style.display = 'flex';
126
+ });
127
+ }
128
+ else {
129
+ console.warn('[LogMessageContent] #haibun-video container not found for artifact placement.');
130
+ }
154
131
  }
155
132
  }
156
133
  }
@@ -159,9 +136,8 @@ class LogMessageSummary extends LogComponent {
159
136
  constructor(summaryMessage, initialLabel) {
160
137
  super('summary', 'haibun-log-message-summary');
161
138
  this.labelSpan = document.createElement('span');
162
- this.labelSpan.className = 'details-type'; // Class for styling the label
163
- this.updateLabel(initialLabel); // Set initial label with formatting
164
- // Set text first, then append span
139
+ this.labelSpan.className = 'details-type';
140
+ this.updateLabel(initialLabel);
165
141
  this.setText(summaryMessage);
166
142
  this.append(this.labelSpan);
167
143
  }
@@ -170,7 +146,6 @@ class LogMessageSummary extends LogComponent {
170
146
  }
171
147
  }
172
148
  // --- Artifact Display Components (Details) ---
173
- // Factory function to create the correct ArtifactDisplay instance
174
149
  function createArtifactDisplay(artifact) {
175
150
  const { artifactType } = artifact;
176
151
  switch (artifactType) {
@@ -182,121 +157,14 @@ function createArtifactDisplay(artifact) {
182
157
  case 'json': return new JsonArtifactDisplay(artifact);
183
158
  case 'json/http/trace':
184
159
  return new JsonArtifactHTTPTrace(artifact);
160
+ case 'resolvedFeatures': {
161
+ return new ResolvedFeaturesArtifactDisplay(artifact);
162
+ }
185
163
  default: {
186
164
  throw Error(`Unsupported artifact type "${artifact.artifactType}" for display from ${artifactType}`);
187
165
  }
188
166
  }
189
167
  }
190
- class HtmlArtifactDisplay extends ArtifactDisplay {
191
- artifact;
192
- placementTarget = 'details';
193
- constructor(artifact) {
194
- super(artifact, 'iframe');
195
- this.artifact = artifact;
196
- this.element.style.border = 'none';
197
- this.element.style.width = '100%';
198
- this.element.style.height = '80vh';
199
- }
200
- render() {
201
- if (this.artifact.html) {
202
- this.element.srcdoc = this.artifact.html;
203
- }
204
- }
205
- }
206
- class ImageArtifactDisplay extends ArtifactDisplay {
207
- artifact;
208
- placementTarget = 'details';
209
- constructor(artifact) {
210
- super(artifact, 'img');
211
- this.artifact = artifact;
212
- this.element.alt = 'Screen capture artifact';
213
- }
214
- render() {
215
- this.element.src = this.artifact.path;
216
- }
217
- }
218
- class VideoArtifactDisplay extends ArtifactDisplay {
219
- artifact;
220
- placementTarget;
221
- constructor(artifact) {
222
- super(artifact, 'video');
223
- this.artifact = artifact;
224
- const videoElement = this.element;
225
- videoElement.controls = true;
226
- videoElement.style.width = '320px';
227
- this.placementTarget = document.querySelector('#haibun-video') ? 'haibun-video' : 'details';
228
- if (this.placementTarget === 'details') {
229
- console.info('Cannot find #haibun-video container; appending video to details.');
230
- }
231
- }
232
- render() {
233
- this.element.src = this.artifact.path;
234
- }
235
- }
236
- class SpeechArtifactDisplay extends ArtifactDisplay {
237
- artifact;
238
- placementTarget;
239
- constructor(artifact) {
240
- super(artifact, 'audio');
241
- this.artifact = artifact;
242
- const audioElement = this.element;
243
- audioElement.controls = true;
244
- audioElement.style.width = '320px';
245
- // create audio element that plays when it is clicked
246
- audioElement.addEventListener('click', () => {
247
- audioElement.play().catch((error) => {
248
- console.error('Error playing audio:', error);
249
- });
250
- });
251
- }
252
- render() {
253
- this.element.src = this.artifact.path;
254
- }
255
- }
256
- class VideoStartArtifactDisplay extends ArtifactDisplay {
257
- artifact;
258
- placementTarget = 'body';
259
- constructor(artifact) {
260
- super(artifact, 'span');
261
- this.artifact = artifact;
262
- this.element.id = 'haibun-video-start';
263
- }
264
- render() {
265
- this.setData('start', `${this.artifact.start}`);
266
- }
267
- }
268
- class JsonArtifactHTTPTrace extends ArtifactDisplay {
269
- artifact;
270
- placementTarget;
271
- constructor(artifact) {
272
- super(artifact, 'pre', 'haibun-message-details-json');
273
- this.artifact = artifact;
274
- this.placementTarget = document.querySelector('#sequence-diagram') ? 'haibun-sequence-diagram' : 'details';
275
- }
276
- deriveLabel() {
277
- return '⇄ Trace';
278
- }
279
- render() {
280
- if (this.artifact.httpEvent !== 'route') {
281
- sequenceDiagramGenerator.processEvent(this.artifact.trace, this.artifact.httpEvent);
282
- }
283
- this.append(disclosureJson(this.artifact.trace));
284
- }
285
- }
286
- class JsonArtifactDisplay extends ArtifactDisplay {
287
- artifact;
288
- placementTarget = 'details';
289
- constructor(artifact) {
290
- super(artifact, 'pre', 'haibun-message-details-json');
291
- this.artifact = artifact;
292
- }
293
- deriveLabel() {
294
- return this.artifact.artifactType;
295
- }
296
- render() {
297
- this.append(disclosureJson(this.artifact.json || {}));
298
- }
299
- }
300
168
  // --- Helper Functions ---
301
169
  function calculateRelativeTime(timestamp) {
302
170
  const startTime = parseInt(document.body.dataset.startTime || `${Date.now()}`, 10);
@@ -306,7 +174,6 @@ function formatTime(relativeTimeMs) {
306
174
  return (relativeTimeMs / 1000).toFixed(3).replace('.', ':');
307
175
  }
308
176
  function getSummaryMessage(message, messageContext) {
309
- // Check for STEP_END incident and access details via incidentDetails
310
177
  if (messageContext?.incident === EExecutionMessageType.STEP_END && messageContext.incidentDetails?.result?.in) {
311
178
  return `${message} ${messageContext.incidentDetails.result.in}`;
312
179
  }
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/monitor/messages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/monitor/messages.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,21 @@
1
- import { SequenceDiagramGenerator } from './mermaidDiagram.js';
2
1
  import { TLogLevel, TLogArgs, TMessageContext } from '@haibun/core/build/lib/interfaces/logger.js';
3
- import { TAnyFixme } from '@haibun/core/build/lib/fixme.js';
2
+ export type TLogEntry = {
3
+ level: TLogLevel;
4
+ message: TLogArgs;
5
+ messageContext?: TMessageContext;
6
+ timestamp: number;
7
+ };
4
8
  declare global {
5
9
  interface Window {
6
- haibunLogData: TAnyFixme[];
10
+ haibunCapturedMessages: TLogEntry[];
7
11
  receiveLogData: (logEntry: {
8
12
  level: TLogLevel;
9
13
  message: TLogArgs;
10
14
  messageContext?: TMessageContext;
11
15
  timestamp: number;
12
16
  }) => void;
17
+ webSocket?: WebSocket;
13
18
  }
14
19
  }
15
- export declare const sequenceDiagramGenerator: SequenceDiagramGenerator;
20
+ export declare function renderLogEntry(logEntryData: TLogEntry): void;
16
21
  //# sourceMappingURL=monitor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"monitor.d.ts","sourceRoot":"","sources":["../../src/monitor/monitor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAyB,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAG1H,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAE5D,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf,aAAa,EAAE,SAAS,EAAE,CAAC;QAC3B,cAAc,EAAE,CAAC,QAAQ,EAAE;YAAE,KAAK,EAAE,SAAS,CAAC;YAAC,OAAO,EAAE,QAAQ,CAAC;YAAC,cAAc,CAAC,EAAE,eAAe,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,KAAK,IAAI,CAAC;KACjI;CACD;AAYD,eAAO,MAAM,wBAAwB,0BAAiC,CAAC"}
1
+ {"version":3,"file":"monitor.d.ts","sourceRoot":"","sources":["../../src/monitor/monitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAyB,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAI1H,MAAM,MAAM,SAAS,GAAG;IACvB,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,EAAE,QAAQ,CAAC;IAClB,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf,sBAAsB,EAAE,SAAS,EAAE,CAAC;QACpC,cAAc,EAAE,CAAC,QAAQ,EAAE;YAAE,KAAK,EAAE,SAAS,CAAC;YAAC,OAAO,EAAE,QAAQ,CAAC;YAAC,cAAc,CAAC,EAAE,eAAe,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,KAAK,IAAI,CAAC;QACjI,SAAS,CAAC,EAAE,SAAS,CAAC;KACtB;CACD;AAWD,wBAAgB,cAAc,CAAC,YAAY,EAAE,SAAS,QAwBrD"}
@@ -1,24 +1,16 @@
1
- import mermaid from 'mermaid';
2
- import { SequenceDiagramGenerator } from './mermaidDiagram.js';
3
1
  import { EExecutionMessageType } from '@haibun/core/build/lib/interfaces/logger.js';
4
2
  import { LogEntry } from './messages.js';
5
3
  import { setupControls } from './controls.js';
6
- window.haibunLogData = window.haibunLogData || [];
7
- console.log('monitor', window.haibunLogData);
4
+ window.haibunCapturedMessages = window.haibunCapturedMessages || [];
5
+ console.info('monitor.ts: window.haibunCapturedMessages initialized.');
8
6
  // Function exposed to Playwright to receive new logs
9
7
  window.receiveLogData = (logEntry) => {
10
- window.haibunLogData.push(logEntry);
11
- renderLogEntry(logEntry);
12
- void sequenceDiagramGenerator.update();
8
+ window.haibunCapturedMessages.push(logEntry);
9
+ renderLogEntry(logEntry); // Add this line to render the log entry immediately
13
10
  };
14
- export const sequenceDiagramGenerator = new SequenceDiagramGenerator();
15
- function renderLogEntry(logEntryData) {
11
+ export function renderLogEntry(logEntryData) {
16
12
  const { level, message, messageContext, timestamp } = logEntryData;
17
13
  const container = document.getElementById('haibun-log-display-area');
18
- if (!container) {
19
- console.error('Could not find log display area #haibun-log-display-area');
20
- return;
21
- }
22
14
  const logEntry = new LogEntry(level, timestamp, message, messageContext);
23
15
  const logEntryElement = logEntry.element; // Get the actual DOM element
24
16
  container.appendChild(logEntryElement);
@@ -41,20 +33,18 @@ function renderLogEntry(logEntryData) {
41
33
  function renderAllLogs() {
42
34
  const container = document.getElementById('haibun-log-display-area');
43
35
  if (container) {
44
- window.haibunLogData.forEach(renderLogEntry);
45
- void sequenceDiagramGenerator.update();
36
+ console.log(`Rendering ${window.haibunCapturedMessages.length} log entries...`);
37
+ window.haibunCapturedMessages.forEach(renderLogEntry);
46
38
  }
47
39
  }
48
40
  // Initial render on page load
49
41
  document.addEventListener('DOMContentLoaded', () => {
50
- console.log("Monitor DOMContentLoaded");
51
42
  // Set start time on body for relative calculations
52
43
  if (!document.body.dataset.startTime) {
53
44
  document.body.dataset.startTime = `${Date.now()}`;
54
45
  }
55
- mermaid.initialize({ startOnLoad: false, securityLevel: 'loose' });
56
46
  renderAllLogs();
57
47
  setupControls();
58
- console.log("Initial logs rendered.");
48
+ console.info("Initial logs rendered.");
59
49
  });
60
50
  //# sourceMappingURL=monitor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/monitor/monitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/monitor/monitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,qBAAqB,EAAmB,MAAM,6CAA6C,CAAC;AAC1H,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAiB9C,MAAM,CAAC,sBAAsB,GAAG,MAAM,CAAC,sBAAsB,IAAI,EAAE,CAAC;AACpE,OAAO,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;AAEvE,qDAAqD;AACrD,MAAM,CAAC,cAAc,GAAG,CAAC,QAAQ,EAAE,EAAE;IACpC,MAAM,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7C,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,oDAAoD;AAC/E,CAAC,CAAC;AAEF,MAAM,UAAU,cAAc,CAAC,YAAuB;IACrD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC;IACnE,MAAM,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,yBAAyB,CAAC,CAAC;IAErE,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IACzE,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,6BAA6B;IAEvE,SAAS,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IAEvC,iEAAiE;IACjE,IAAI,cAAc,EAAE,QAAQ,KAAK,qBAAqB,CAAC,QAAQ,EAAE,CAAC;QACjE,2EAA2E;QAC3E,MAAM,sBAAsB,GAAG,SAAS,CAAC,gBAAgB,CAAC,sCAAsC,CAAC,CAAC;QAClG,IAAI,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,eAAe,GAAG,sBAAsB,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAClF,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACP,2DAA2D;YAC3D,OAAO,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;QACrF,CAAC;IACF,CAAC;IAED,0CAA0C;IAC1C,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC;AAC9C,CAAC;AACD,SAAS,aAAa;IACrB,MAAM,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,yBAAyB,CAAC,CAAC;IACrE,IAAI,SAAS,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,sBAAsB,CAAC,MAAM,iBAAiB,CAAC,CAAC;QAChF,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACvD,CAAC;AACF,CAAC;AAED,8BAA8B;AAC9B,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAClD,mDAAmD;IACnD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QACtC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;IACnD,CAAC;IAED,aAAa,EAAE,CAAC;IAChB,aAAa,EAAE,CAAC;IAChB,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;AAExC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=resolvedFeaturesArtifactDisplay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolvedFeaturesArtifactDisplay.d.ts","sourceRoot":"","sources":["../../src/monitor/resolvedFeaturesArtifactDisplay.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=resolvedFeaturesArtifactDisplay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolvedFeaturesArtifactDisplay.js","sourceRoot":"","sources":["../../src/monitor/resolvedFeaturesArtifactDisplay.ts"],"names":[],"mappings":""}
@@ -0,0 +1,32 @@
1
+ import { TArtifactHTTPTrace, THTTPTraceContent } from '@haibun/core/build/lib/interfaces/logger.js';
2
+ export declare class SequenceDiagramGenerator {
3
+ private needsUpdate;
4
+ private diagramLines;
5
+ private pageNames;
6
+ private pageCounter;
7
+ private participantAdded;
8
+ private mermaidContainerId;
9
+ private parentElement;
10
+ private currentDiagramString;
11
+ constructor(id: string, parentElement: HTMLElement);
12
+ private ensureMermaidContainer;
13
+ private addParticipant;
14
+ private resetDiagramState;
15
+ private buildDiagramString;
16
+ generateDiagramFromHistory(): void;
17
+ processSingleEvent(trace: THTTPTraceContent, httpEvent: TArtifactHTTPTrace['httpEvent'], filters?: {
18
+ request: {
19
+ method: string[];
20
+ accept: string[];
21
+ };
22
+ response: {
23
+ type: string[];
24
+ };
25
+ }): void;
26
+ getDiagram(): string;
27
+ getNeedsUpdate(): boolean;
28
+ setNeedsUpdate(value: boolean): void;
29
+ update(): Promise<void>;
30
+ }
31
+ export declare function skipEvent(filters: any, httpEvent: any, serverName: any, { requestingURL, headers }: THTTPTraceContent): boolean;
32
+ //# sourceMappingURL=sequenceDiagramGenerator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sequenceDiagramGenerator.d.ts","sourceRoot":"","sources":["../../src/monitor/sequenceDiagramGenerator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAwBpG,qBAAa,wBAAwB;IACpC,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,YAAY,CAAiC;IACrD,OAAO,CAAC,SAAS,CAA8B;IAC/C,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,gBAAgB,CAA+B;IACpD,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,oBAAoB,CAAM;gBAEtB,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW;IAOlD,OAAO,CAAC,sBAAsB;IAWjC,OAAO,CAAC,cAAc;IActB,OAAO,CAAC,iBAAiB;IAQtB,OAAO,CAAC,kBAAkB;IAOtB,0BAA0B,IAAI,IAAI;IAsClC,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,OAAO;;;;;;;;KAAc,GAAG,IAAI;IAuGrH,UAAU,IAAI,MAAM;IAKjB,cAAc,IAAI,OAAO;IAKzB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAIjC,MAAM;CA+CnB;AACD,wBAAgB,SAAS,CAAC,OAAO,KAAA,EAAE,SAAS,KAAA,EAAE,UAAU,KAAA,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,iBAAiB,WAkCtG"}