@haibun/web-playwright 3.5.0 → 3.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/interactionSteps.d.ts +7 -0
- package/build/interactionSteps.d.ts.map +1 -1
- package/build/interactionSteps.js +65 -2
- package/build/interactionSteps.js.map +1 -1
- package/build/jsonExtractSteps.d.ts.map +1 -1
- package/build/jsonExtractSteps.js +9 -4
- package/build/jsonExtractSteps.js.map +1 -1
- package/build/rest-playwright.d.ts +1 -1
- package/build/rest-playwright.d.ts.map +1 -1
- package/build/rest-playwright.js +5 -4
- package/build/rest-playwright.js.map +1 -1
- package/build/web-playwright.d.ts +1 -0
- package/build/web-playwright.d.ts.map +1 -1
- package/build/web-playwright.js +4 -1
- package/build/web-playwright.js.map +1 -1
- package/package.json +10 -10
- package/build/monitor/MonitorHandler.d.ts +0 -47
- package/build/monitor/MonitorHandler.d.ts.map +0 -1
- package/build/monitor/MonitorHandler.js +0 -152
- package/build/monitor/MonitorHandler.js.map +0 -1
- package/build/monitor/artifactDisplays/HtmlArtifactDisplay.d.ts +0 -9
- package/build/monitor/artifactDisplays/HtmlArtifactDisplay.d.ts.map +0 -1
- package/build/monitor/artifactDisplays/HtmlArtifactDisplay.js +0 -27
- package/build/monitor/artifactDisplays/HtmlArtifactDisplay.js.map +0 -1
- package/build/monitor/artifactDisplays/ImageArtifactDisplay.d.ts +0 -9
- package/build/monitor/artifactDisplays/ImageArtifactDisplay.d.ts.map +0 -1
- package/build/monitor/artifactDisplays/ImageArtifactDisplay.js +0 -17
- package/build/monitor/artifactDisplays/ImageArtifactDisplay.js.map +0 -1
- package/build/monitor/artifactDisplays/JsonArtifactDisplay.d.ts +0 -8
- package/build/monitor/artifactDisplays/JsonArtifactDisplay.d.ts.map +0 -1
- package/build/monitor/artifactDisplays/JsonArtifactDisplay.js +0 -26
- package/build/monitor/artifactDisplays/JsonArtifactDisplay.js.map +0 -1
- package/build/monitor/artifactDisplays/JsonArtifactHTTPTrace.d.ts +0 -13
- package/build/monitor/artifactDisplays/JsonArtifactHTTPTrace.d.ts.map +0 -1
- package/build/monitor/artifactDisplays/JsonArtifactHTTPTrace.js +0 -47
- package/build/monitor/artifactDisplays/JsonArtifactHTTPTrace.js.map +0 -1
- package/build/monitor/artifactDisplays/ResolvedFeaturesArtifactDisplay.d.ts +0 -9
- package/build/monitor/artifactDisplays/ResolvedFeaturesArtifactDisplay.d.ts.map +0 -1
- package/build/monitor/artifactDisplays/ResolvedFeaturesArtifactDisplay.js +0 -38
- package/build/monitor/artifactDisplays/ResolvedFeaturesArtifactDisplay.js.map +0 -1
- package/build/monitor/artifactDisplays/SequenceDiagramGenerator.d.ts +0 -32
- package/build/monitor/artifactDisplays/SequenceDiagramGenerator.d.ts.map +0 -1
- package/build/monitor/artifactDisplays/SequenceDiagramGenerator.js +0 -258
- package/build/monitor/artifactDisplays/SequenceDiagramGenerator.js.map +0 -1
- package/build/monitor/artifactDisplays/SpeechArtifactDisplay.d.ts +0 -9
- package/build/monitor/artifactDisplays/SpeechArtifactDisplay.d.ts.map +0 -1
- package/build/monitor/artifactDisplays/SpeechArtifactDisplay.js +0 -19
- package/build/monitor/artifactDisplays/SpeechArtifactDisplay.js.map +0 -1
- package/build/monitor/artifactDisplays/VideoArtifactDisplay.d.ts +0 -9
- package/build/monitor/artifactDisplays/VideoArtifactDisplay.d.ts.map +0 -1
- package/build/monitor/artifactDisplays/VideoArtifactDisplay.js +0 -21
- package/build/monitor/artifactDisplays/VideoArtifactDisplay.js.map +0 -1
- package/build/monitor/artifactDisplays/VideoStartArtifactDisplay.d.ts +0 -9
- package/build/monitor/artifactDisplays/VideoStartArtifactDisplay.d.ts.map +0 -1
- package/build/monitor/artifactDisplays/VideoStartArtifactDisplay.js +0 -16
- package/build/monitor/artifactDisplays/VideoStartArtifactDisplay.js.map +0 -1
- package/build/monitor/artifactDisplays/artifactDisplayBase.d.ts +0 -20
- package/build/monitor/artifactDisplays/artifactDisplayBase.d.ts.map +0 -1
- package/build/monitor/artifactDisplays/artifactDisplayBase.js +0 -40
- package/build/monitor/artifactDisplays/artifactDisplayBase.js.map +0 -1
- package/build/monitor/controls.d.ts +0 -13
- package/build/monitor/controls.d.ts.map +0 -1
- package/build/monitor/controls.js +0 -311
- package/build/monitor/controls.js.map +0 -1
- package/build/monitor/disclosureJson.d.ts +0 -3
- package/build/monitor/disclosureJson.d.ts.map +0 -1
- package/build/monitor/disclosureJson.js +0 -353
- package/build/monitor/disclosureJson.js.map +0 -1
- package/build/monitor/graph/feature-bases.d.ts +0 -5
- package/build/monitor/graph/feature-bases.d.ts.map +0 -1
- package/build/monitor/graph/feature-bases.js +0 -36
- package/build/monitor/graph/feature-bases.js.map +0 -1
- package/build/monitor/graph/generateMermaidGraph.d.ts +0 -4
- package/build/monitor/graph/generateMermaidGraph.d.ts.map +0 -1
- package/build/monitor/graph/generateMermaidGraph.js +0 -119
- package/build/monitor/graph/generateMermaidGraph.js.map +0 -1
- package/build/monitor/graph/graphUtils.d.ts +0 -3
- package/build/monitor/graph/graphUtils.d.ts.map +0 -1
- package/build/monitor/graph/graphUtils.js +0 -16
- package/build/monitor/graph/graphUtils.js.map +0 -1
- package/build/monitor/graph/mermaidGraphLinks.d.ts +0 -3
- package/build/monitor/graph/mermaidGraphLinks.d.ts.map +0 -1
- package/build/monitor/graph/mermaidGraphLinks.js +0 -31
- package/build/monitor/graph/mermaidGraphLinks.js.map +0 -1
- package/build/monitor/messages.d.ts +0 -14
- package/build/monitor/messages.d.ts.map +0 -1
- package/build/monitor/messages.js +0 -191
- package/build/monitor/messages.js.map +0 -1
- package/build/monitor/monitor.d.ts +0 -24
- package/build/monitor/monitor.d.ts.map +0 -1
- package/build/monitor/monitor.js +0 -69
- package/build/monitor/monitor.js.map +0 -1
- package/build/monitor/test-utils.d.ts +0 -9
- package/build/monitor/test-utils.d.ts.map +0 -1
- package/build/monitor/test-utils.js +0 -70
- package/build/monitor/test-utils.js.map +0 -1
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
import { join, resolve } from 'path';
|
|
2
|
-
import { existsSync } from 'fs';
|
|
3
|
-
import { pathToFileURL } from 'url';
|
|
4
|
-
import { chromium } from 'playwright';
|
|
5
|
-
import { EMediaTypes } from '@haibun/domain-storage/media-types.js';
|
|
6
|
-
import { getPackageLocation } from '@haibun/core/lib/util/workspace-lib.js';
|
|
7
|
-
import { sleep } from '@haibun/core/lib/util/index.js';
|
|
8
|
-
import { actualURI } from '@haibun/core/lib/util/actualURI.js';
|
|
9
|
-
import { BasePromptManager } from '@haibun/core/lib/base-prompt-manager.js';
|
|
10
|
-
const monitorLocation = join(getPackageLocation(import.meta), '..', '..', 'web', 'monitor.html');
|
|
11
|
-
const capturedMessages = [];
|
|
12
|
-
class ButtonPrompter extends BasePromptManager {
|
|
13
|
-
monitorHandler;
|
|
14
|
-
buttonPrompts = new Map();
|
|
15
|
-
constructor(monitorHandler) {
|
|
16
|
-
super();
|
|
17
|
-
this.monitorHandler = monitorHandler;
|
|
18
|
-
}
|
|
19
|
-
showPrompt(prompt) {
|
|
20
|
-
this.buttonPrompts.set(prompt.id, prompt);
|
|
21
|
-
void this.monitorHandler.inMonitor((prompts) => window.showPromptControls(prompts), JSON.stringify(Array.from(this.buttonPrompts.values())));
|
|
22
|
-
// Show statement input for debugger prompts that allow arbitrary input
|
|
23
|
-
if (prompt.options?.includes('*')) {
|
|
24
|
-
void this.monitorHandler.inMonitor(() => window.showStatementInput());
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
hidePrompt(id) {
|
|
28
|
-
this.buttonPrompts.delete(id);
|
|
29
|
-
void this.monitorHandler.inMonitor((prompts) => window.showPromptControls(prompts), JSON.stringify(this.buttonPrompts));
|
|
30
|
-
// Hide statement input when no prompts with '*' option remain
|
|
31
|
-
const hasStatementPrompts = Array.from(this.buttonPrompts.values()).some(p => p.options?.includes('*'));
|
|
32
|
-
if (!hasStatementPrompts) {
|
|
33
|
-
void this.monitorHandler.inMonitor(() => window.hideStatementInput());
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
// Expose resolve and cancel as public methods
|
|
37
|
-
resolve(id, response) {
|
|
38
|
-
super.resolve(id, response);
|
|
39
|
-
}
|
|
40
|
-
cancel(id, reason) {
|
|
41
|
-
super.cancel(id, reason);
|
|
42
|
-
}
|
|
43
|
-
// Public getter for accessing prompts
|
|
44
|
-
getPrompts() {
|
|
45
|
-
return this.buttonPrompts;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
export class MonitorHandler {
|
|
49
|
-
world;
|
|
50
|
-
storage;
|
|
51
|
-
headless;
|
|
52
|
-
subscriber;
|
|
53
|
-
monitorPage;
|
|
54
|
-
buttonPrompter;
|
|
55
|
-
steppers; // Store steppers for statement execution
|
|
56
|
-
constructor(world, storage, headless) {
|
|
57
|
-
this.world = world;
|
|
58
|
-
this.storage = storage;
|
|
59
|
-
this.headless = headless;
|
|
60
|
-
}
|
|
61
|
-
async updateWorld(world) {
|
|
62
|
-
this.world = world;
|
|
63
|
-
await this.inMonitor((monitorLoc) => {
|
|
64
|
-
let base = document.querySelector('base');
|
|
65
|
-
if (!base) {
|
|
66
|
-
base = document.createElement('base');
|
|
67
|
-
document.head.appendChild(base);
|
|
68
|
-
}
|
|
69
|
-
base.href = `${monitorLoc}/`;
|
|
70
|
-
}, resolve(await this.getMonitorLoc()));
|
|
71
|
-
}
|
|
72
|
-
async initMonitor() {
|
|
73
|
-
this.world.logger.info(`Creating new monitor page`);
|
|
74
|
-
const browser = await chromium.launch({ headless: this.headless });
|
|
75
|
-
const context = await browser.newContext();
|
|
76
|
-
this.monitorPage = await context.newPage();
|
|
77
|
-
this.buttonPrompter = new ButtonPrompter(this);
|
|
78
|
-
await this.monitorPage.exposeFunction('haibunResolvePrompt', (id, response) => {
|
|
79
|
-
this.buttonPrompter.resolve(id, response);
|
|
80
|
-
});
|
|
81
|
-
await this.monitorPage.exposeFunction('haibunSubmitStatement', (statement) => {
|
|
82
|
-
// Find the first prompt that accepts arbitrary input and resolve it with the statement
|
|
83
|
-
const statementPrompt = Array.from(this.buttonPrompter.getPrompts().values())
|
|
84
|
-
.find(p => p.options?.includes('*'));
|
|
85
|
-
if (statementPrompt) {
|
|
86
|
-
this.buttonPrompter.resolve(statementPrompt.id, statement);
|
|
87
|
-
}
|
|
88
|
-
});
|
|
89
|
-
await this.waitForMonitorPage();
|
|
90
|
-
await this.monitorPage.goto(pathToFileURL(monitorLocation).toString(), { waitUntil: 'networkidle' });
|
|
91
|
-
this.subscriber = {
|
|
92
|
-
out: (level, message, messageContext) => {
|
|
93
|
-
const logEntry = {
|
|
94
|
-
level,
|
|
95
|
-
message,
|
|
96
|
-
messageContext,
|
|
97
|
-
timestamp: Date.now()
|
|
98
|
-
};
|
|
99
|
-
capturedMessages.push(logEntry);
|
|
100
|
-
void this.inMonitor((entry) => {
|
|
101
|
-
window.receiveLogData(JSON.parse(entry));
|
|
102
|
-
}, JSON.stringify(logEntry));
|
|
103
|
-
}
|
|
104
|
-
};
|
|
105
|
-
this.world.prompter.subscribe(this.buttonPrompter);
|
|
106
|
-
}
|
|
107
|
-
async getMonitorLoc() {
|
|
108
|
-
return await this.storage.getCaptureLocation({ ...this.world, mediaType: EMediaTypes.html });
|
|
109
|
-
}
|
|
110
|
-
async writeMonitor() {
|
|
111
|
-
if (!this.monitorPage || this.monitorPage.isClosed()) {
|
|
112
|
-
this.world.logger.error('Monitor page is closed, cannot write monitor file.');
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
await sleep(500);
|
|
116
|
-
await this.inMonitor(() => {
|
|
117
|
-
const promptControls = document.getElementById('haibun-prompt-controls-container');
|
|
118
|
-
if (promptControls && promptControls.parentNode) {
|
|
119
|
-
promptControls.parentNode.removeChild(promptControls);
|
|
120
|
-
}
|
|
121
|
-
const base = document.querySelector('base');
|
|
122
|
-
if (base) {
|
|
123
|
-
base.parentNode?.removeChild(base);
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
const content = (await this.monitorPage.content()) + `
|
|
127
|
-
<script>
|
|
128
|
-
window.haibunStaticPage = true;
|
|
129
|
-
window.haibunCapturedMessages = ${JSON.stringify(capturedMessages, null, 2)};
|
|
130
|
-
document.getElementById('haibun-log-display-area').innerHTML = '';
|
|
131
|
-
</script>
|
|
132
|
-
`;
|
|
133
|
-
const outHtmlFile = join(await this.getMonitorLoc(), 'monitor.html');
|
|
134
|
-
const monitorPath = actualURI(outHtmlFile);
|
|
135
|
-
this.world.logger.info(`Writing monitor HTML to ${monitorPath}`);
|
|
136
|
-
await this.storage.writeFile(outHtmlFile, content, EMediaTypes.html);
|
|
137
|
-
const outMessages = join(await this.getMonitorLoc(), 'monitor.json');
|
|
138
|
-
await this.storage.writeFile(outMessages, JSON.stringify(capturedMessages, null, 2), EMediaTypes.html);
|
|
139
|
-
}
|
|
140
|
-
async inMonitor(toRun, context) {
|
|
141
|
-
await this.monitorPage.evaluate(toRun, context);
|
|
142
|
-
}
|
|
143
|
-
async waitForMonitorPage() {
|
|
144
|
-
let waitForMonitor = 0;
|
|
145
|
-
while (!existsSync(monitorLocation) && waitForMonitor < 20) {
|
|
146
|
-
if (waitForMonitor++ === 1)
|
|
147
|
-
this.world.logger.info(`Waiting up to ${20 * .5} seconds for monitor.html`);
|
|
148
|
-
await sleep(500);
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
//# sourceMappingURL=MonitorHandler.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MonitorHandler.js","sourceRoot":"","sources":["../../src/monitor/MonitorHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAQ,MAAM,YAAY,CAAC;AAK5C,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAG/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAe5E,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;AACjG,MAAM,gBAAgB,GAAgB,EAAE,CAAC;AAEzC,MAAM,cAAe,SAAQ,iBAAiB;IACrC,cAAc,CAAiB;IAC/B,aAAa,GAAyB,IAAI,GAAG,EAAE,CAAC;IAExD,YAAY,cAA8B;QACzC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACtC,CAAC;IAES,UAAU,CAAC,MAAe;QACnC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC1C,KAAK,IAAI,CAAC,cAAc,CAAC,SAAS,CACjC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAC/C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CACvD,CAAC;QAEF,uEAAuE;QACvE,IAAI,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACnC,KAAK,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACvE,CAAC;IACF,CAAC;IAES,UAAU,CAAC,EAAU;QAC9B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC9B,KAAK,IAAI,CAAC,cAAc,CAAC,SAAS,CACjC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAC/C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAClC,CAAC;QAEF,8DAA8D;QAC9D,MAAM,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC1B,KAAK,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACvE,CAAC;IACF,CAAC;IAED,8CAA8C;IACvC,OAAO,CAAC,EAAU,EAAE,QAAyB;QACnD,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC7B,CAAC;IACM,MAAM,CAAC,EAAU,EAAE,MAAe;QACxC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED,sCAAsC;IAC/B,UAAU;QAChB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;CACD;AAED,MAAM,OAAO,cAAc;IAMN;IAAuB;IAA2B;IALtE,UAAU,CAAa;IACvB,WAAW,CAAO;IAClB,cAAc,CAAiB;IAC/B,QAAQ,CAAc,CAAC,yCAAyC;IAEhE,YAAoB,KAAa,EAAU,OAAiB,EAAU,QAAiB;QAAnE,UAAK,GAAL,KAAK,CAAQ;QAAU,YAAO,GAAP,OAAO,CAAU;QAAU,aAAQ,GAAR,QAAQ,CAAS;IACvF,CAAC;IACD,KAAK,CAAC,WAAW,CAAC,KAAa;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,MAAM,IAAI,CAAC,SAAS,CAAS,CAAC,UAAU,EAAE,EAAE;YAC3C,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC1C,IAAI,CAAC,IAAI,EAAE,CAAC;gBACX,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBACtC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC;YACD,IAAI,CAAC,IAAI,GAAG,GAAG,UAAU,GAAG,CAAC;QAC9B,CAAC,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,WAAW;QAChB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAE3C,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,qBAAqB,EAAE,CAAC,EAAU,EAAE,QAAyB,EAAE,EAAE;YACtG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,uBAAuB,EAAE,CAAC,SAAiB,EAAE,EAAE;YACpF,uFAAuF;YACvF,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,CAAC;iBAC3E,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YACtC,IAAI,eAAe,EAAE,CAAC;gBACrB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC5D,CAAC;QACF,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC;QAErG,IAAI,CAAC,UAAU,GAAG;YACjB,GAAG,EAAE,CAAC,KAAgB,EAAE,OAAiB,EAAE,cAAgC,EAAE,EAAE;gBAC9E,MAAM,QAAQ,GAAc;oBAC3B,KAAK;oBACL,OAAO;oBACP,cAAc;oBACd,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;iBACrB,CAAA;gBAED,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBAC/B,KAAK,IAAI,CAAC,SAAS,CAAS,CAAC,KAAK,EAAE,EAAE;oBACrC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAc,CAAC,CAAA;gBACtD,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC9B,CAAC;SACD,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACpD,CAAC;IACD,KAAK,CAAC,aAAa;QAClB,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9F,CAAC;IAED,KAAK,CAAC,YAAY;QACjB,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC;YACtD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;YAC9E,OAAO;QACR,CAAC;QACD,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;QAEjB,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE;YACzB,MAAM,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC,kCAAkC,CAAC,CAAC;YACnF,IAAI,cAAc,IAAI,cAAc,CAAC,UAAU,EAAE,CAAC;gBACjD,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;YACvD,CAAC;YACD,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC5C,IAAI,IAAI,EAAE,CAAC;gBACV,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,GAAG;;;kCAGrB,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;;;CAG1E,CAAC;QACA,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,EAAE,cAAc,CAAC,CAAC;QACrE,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,WAAW,EAAE,CAAC,CAAC;QACjE,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACrE,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,EAAE,cAAc,CAAC,CAAC;QACrE,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IACxG,CAAC;IACD,KAAK,CAAC,SAAS,CAAI,KAAqB,EAAE,OAAmB;QAC5D,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,kBAAkB;QACvB,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,cAAc,GAAG,EAAE,EAAE,CAAC;YAC5D,IAAI,cAAc,EAAE,KAAK,CAAC;gBAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE,2BAA2B,CAAC,CAAC;YACxG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC;IACF,CAAC;CACD"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { TArtifactHTML } from "@haibun/core/lib/interfaces/logger.js";
|
|
2
|
-
import { ArtifactDisplay } from "./artifactDisplayBase.js";
|
|
3
|
-
export declare class HtmlArtifactDisplay extends ArtifactDisplay {
|
|
4
|
-
protected artifact: TArtifactHTML;
|
|
5
|
-
readonly placementTarget = "details";
|
|
6
|
-
constructor(artifact: TArtifactHTML);
|
|
7
|
-
render(container: HTMLElement): void;
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=HtmlArtifactDisplay.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HtmlArtifactDisplay.d.ts","sourceRoot":"","sources":["../../../src/monitor/artifactDisplays/HtmlArtifactDisplay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,qBAAa,mBAAoB,SAAQ,eAAe;IAE3C,SAAS,CAAC,QAAQ,EAAE,aAAa;IAD7C,QAAQ,CAAC,eAAe,aAAa;gBACf,QAAQ,EAAE,aAAa;IAGtC,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI;CAgB3C"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { ArtifactDisplay } from "./artifactDisplayBase.js";
|
|
2
|
-
export class HtmlArtifactDisplay extends ArtifactDisplay {
|
|
3
|
-
artifact;
|
|
4
|
-
placementTarget = 'details';
|
|
5
|
-
constructor(artifact) {
|
|
6
|
-
super(artifact);
|
|
7
|
-
this.artifact = artifact;
|
|
8
|
-
}
|
|
9
|
-
render(container) {
|
|
10
|
-
container.innerHTML = ''; // Clear placeholder
|
|
11
|
-
const iframe = document.createElement('iframe');
|
|
12
|
-
iframe.style.border = 'none';
|
|
13
|
-
iframe.style.width = '100%';
|
|
14
|
-
iframe.style.height = '80vh';
|
|
15
|
-
if ('html' in this.artifact && typeof this.artifact.html === 'string') {
|
|
16
|
-
iframe.srcdoc = this.artifact.html;
|
|
17
|
-
}
|
|
18
|
-
else if ('path' in this.artifact && typeof this.artifact.path === 'string') {
|
|
19
|
-
iframe.src = this.artifact.path;
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
iframe.srcdoc = '<p class="haibun-artifact-error">Error: HTML content not available or in an unexpected format.</p>';
|
|
23
|
-
}
|
|
24
|
-
container.appendChild(iframe);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=HtmlArtifactDisplay.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HtmlArtifactDisplay.js","sourceRoot":"","sources":["../../../src/monitor/artifactDisplays/HtmlArtifactDisplay.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,MAAM,OAAO,mBAAoB,SAAQ,eAAe;IAEjC;IADb,eAAe,GAAG,SAAS,CAAC;IACrC,YAAsB,QAAuB;QAC5C,KAAK,CAAC,QAAQ,CAAC,CAAC;QADK,aAAQ,GAAR,QAAQ,CAAe;IAE7C,CAAC;IACM,MAAM,CAAC,SAAsB;QACnC,SAAS,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC,oBAAoB;QAC9C,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;QAC5B,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QAE7B,IAAI,MAAM,IAAI,IAAI,CAAC,QAAQ,IAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QACpC,CAAC;aAAM,IAAI,MAAM,IAAI,IAAI,CAAC,QAAQ,IAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9E,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QACjC,CAAC;aAAM,CAAC;YACP,MAAM,CAAC,MAAM,GAAG,oGAAoG,CAAC;QACtH,CAAC;QACD,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;CACD"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { TArtifactImage } from '@haibun/core/lib/interfaces/logger.js';
|
|
2
|
-
import { ArtifactDisplay } from './artifactDisplayBase.js';
|
|
3
|
-
export declare class ImageArtifactDisplay extends ArtifactDisplay {
|
|
4
|
-
protected artifact: TArtifactImage;
|
|
5
|
-
readonly placementTarget = "details";
|
|
6
|
-
constructor(artifact: TArtifactImage);
|
|
7
|
-
render(container: HTMLElement): void;
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=ImageArtifactDisplay.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ImageArtifactDisplay.d.ts","sourceRoot":"","sources":["../../../src/monitor/artifactDisplays/ImageArtifactDisplay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,qBAAa,oBAAqB,SAAQ,eAAe;IAEzC,SAAS,CAAC,QAAQ,EAAE,cAAc;IAD9C,QAAQ,CAAC,eAAe,aAAa;gBACf,QAAQ,EAAE,cAAc;IAIvC,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI;CAM9C"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { ArtifactDisplay } from './artifactDisplayBase.js';
|
|
2
|
-
export class ImageArtifactDisplay extends ArtifactDisplay {
|
|
3
|
-
artifact;
|
|
4
|
-
placementTarget = 'details'; // This artifact is always placed in details
|
|
5
|
-
constructor(artifact) {
|
|
6
|
-
super(artifact); // type is 'image' by default from TArtifactImage
|
|
7
|
-
this.artifact = artifact;
|
|
8
|
-
// Element creation is deferred to render method
|
|
9
|
-
}
|
|
10
|
-
render(container) {
|
|
11
|
-
const imgElement = document.createElement('img');
|
|
12
|
-
imgElement.alt = 'Screen capture artifact'; // Default alt text
|
|
13
|
-
imgElement.src = this.artifact.path;
|
|
14
|
-
container.replaceChildren(imgElement); // Clear placeholder and add image
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=ImageArtifactDisplay.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ImageArtifactDisplay.js","sourceRoot":"","sources":["../../../src/monitor/artifactDisplays/ImageArtifactDisplay.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,MAAM,OAAO,oBAAqB,SAAQ,eAAe;IAE/B;IADb,eAAe,GAAG,SAAS,CAAC,CAAC,4CAA4C;IAClF,YAAsB,QAAwB;QAC1C,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,iDAAiD;QADhD,aAAQ,GAAR,QAAQ,CAAgB;QAE1C,gDAAgD;IACpD,CAAC;IACM,MAAM,CAAC,SAAsB;QAChC,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACjD,UAAU,CAAC,GAAG,GAAG,yBAAyB,CAAC,CAAC,mBAAmB;QAC/D,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QACpC,SAAS,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,kCAAkC;IAC7E,CAAC;CACJ"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { TArtifactJSON } from "@haibun/core/lib/interfaces/logger.js";
|
|
2
|
-
import { ArtifactDisplay } from "./artifactDisplayBase.js";
|
|
3
|
-
export declare class JsonArtifactDisplay extends ArtifactDisplay {
|
|
4
|
-
readonly placementTarget = "details";
|
|
5
|
-
constructor(artifact: TArtifactJSON);
|
|
6
|
-
render(container: HTMLElement): void;
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=JsonArtifactDisplay.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"JsonArtifactDisplay.d.ts","sourceRoot":"","sources":["../../../src/monitor/artifactDisplays/JsonArtifactDisplay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAG3D,qBAAa,mBAAoB,SAAQ,eAAe;IACvD,QAAQ,CAAC,eAAe,aAAa;gBACzB,QAAQ,EAAE,aAAa;IAGnC,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI;CAgBpC"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { ArtifactDisplay } from "./artifactDisplayBase.js";
|
|
2
|
-
import { disclosureJson } from "../disclosureJson.js";
|
|
3
|
-
export class JsonArtifactDisplay extends ArtifactDisplay {
|
|
4
|
-
placementTarget = 'details';
|
|
5
|
-
constructor(artifact) {
|
|
6
|
-
super(artifact);
|
|
7
|
-
}
|
|
8
|
-
render(container) {
|
|
9
|
-
const artifact = this.artifact;
|
|
10
|
-
try {
|
|
11
|
-
const jsonElement = disclosureJson(artifact.json);
|
|
12
|
-
container.innerHTML = '';
|
|
13
|
-
if (jsonElement) {
|
|
14
|
-
const preElement = document.createElement('pre');
|
|
15
|
-
preElement.classList.add('haibun-message-details-json');
|
|
16
|
-
preElement.appendChild(jsonElement);
|
|
17
|
-
container.appendChild(preElement);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
catch (error) {
|
|
21
|
-
console.error(`Error rendering JSON artifact:`, error);
|
|
22
|
-
container.innerHTML = `<p class="haibun-artifact-error">Error rendering JSON: ${error.message}</p>`;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=JsonArtifactDisplay.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"JsonArtifactDisplay.js","sourceRoot":"","sources":["../../../src/monitor/artifactDisplays/JsonArtifactDisplay.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,OAAO,mBAAoB,SAAQ,eAAe;IAC9C,eAAe,GAAG,SAAS,CAAC;IACrC,YAAY,QAAuB;QAClC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACjB,CAAC;IACD,MAAM,CAAC,SAAsB;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAyB,CAAC;QAChD,IAAI,CAAC;YACJ,MAAM,WAAW,GAAG,cAAc,CAAC,QAAQ,CAAC,IAA+B,CAAC,CAAC;YAC7E,SAAS,CAAC,SAAS,GAAG,EAAE,CAAC;YACzB,IAAI,WAAW,EAAE,CAAC;gBACjB,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBACjD,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;gBACxD,UAAU,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;gBACpC,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YACnC,CAAC;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;YACvD,SAAS,CAAC,SAAS,GAAG,0DAA2D,KAAe,CAAC,OAAO,MAAM,CAAC;QAChH,CAAC;IACF,CAAC;CACD"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { TArtifactHTTPTrace } from '@haibun/core/lib/interfaces/logger.js';
|
|
2
|
-
import { ArtifactDisplay } from './artifactDisplayBase.js';
|
|
3
|
-
import { SequenceDiagramGenerator } from './SequenceDiagramGenerator.js';
|
|
4
|
-
export declare class JsonArtifactHTTPTrace extends ArtifactDisplay {
|
|
5
|
-
protected artifact: TArtifactHTTPTrace;
|
|
6
|
-
readonly placementTarget: 'details' | 'haibun-focus';
|
|
7
|
-
diagramGenerator: SequenceDiagramGenerator;
|
|
8
|
-
id: string;
|
|
9
|
-
constructor(artifact: TArtifactHTTPTrace);
|
|
10
|
-
deriveLabel(): string;
|
|
11
|
-
render(container: HTMLElement): Promise<void>;
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=JsonArtifactHTTPTrace.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"JsonArtifactHTTPTrace.d.ts","sourceRoot":"","sources":["../../../src/monitor/artifactDisplays/JsonArtifactHTTPTrace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAG3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,qBAAa,qBAAsB,SAAQ,eAAe;IAK7C,SAAS,CAAC,QAAQ,EAAE,kBAAkB;IAJlD,QAAQ,CAAC,eAAe,EAAE,SAAS,GAAG,cAAc,CAAC;IACrD,gBAAgB,EAAE,wBAAwB,CAAC;IAC3C,EAAE,EAAE,MAAM,CAAC;gBAEW,QAAQ,EAAE,kBAAkB;IAK3C,WAAW,IAAI,MAAM;IAIf,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CA8B1D"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { ArtifactDisplay } from './artifactDisplayBase.js';
|
|
2
|
-
import { disclosureJson } from '../disclosureJson.js';
|
|
3
|
-
import { SequenceDiagramGenerator } from './SequenceDiagramGenerator.js';
|
|
4
|
-
export class JsonArtifactHTTPTrace extends ArtifactDisplay {
|
|
5
|
-
artifact;
|
|
6
|
-
placementTarget;
|
|
7
|
-
diagramGenerator;
|
|
8
|
-
id;
|
|
9
|
-
constructor(artifact) {
|
|
10
|
-
super(artifact);
|
|
11
|
-
this.artifact = artifact;
|
|
12
|
-
this.placementTarget = document.querySelector('#sequence-diagram') ? 'haibun-focus' : 'details';
|
|
13
|
-
}
|
|
14
|
-
deriveLabel() {
|
|
15
|
-
return '⇄ Trace';
|
|
16
|
-
}
|
|
17
|
-
async render(container) {
|
|
18
|
-
container.innerHTML = '';
|
|
19
|
-
const preElement = document.createElement('pre');
|
|
20
|
-
preElement.classList.add('haibun-message-details-json');
|
|
21
|
-
const jsonDetailElement = disclosureJson(this.artifact.trace);
|
|
22
|
-
if (jsonDetailElement) {
|
|
23
|
-
preElement.appendChild(jsonDetailElement);
|
|
24
|
-
}
|
|
25
|
-
container.appendChild(preElement);
|
|
26
|
-
if (!this.diagramGenerator) {
|
|
27
|
-
this.id = Math.random().toString(36).substring(2, 15);
|
|
28
|
-
this.diagramGenerator = new SequenceDiagramGenerator(this.id, container);
|
|
29
|
-
}
|
|
30
|
-
if (this.artifact.httpEvent !== 'route') {
|
|
31
|
-
const seqDiagElement = document.getElementById('sequence-diagram');
|
|
32
|
-
if (seqDiagElement && seqDiagElement.offsetParent !== null) {
|
|
33
|
-
try {
|
|
34
|
-
await this.diagramGenerator.update();
|
|
35
|
-
}
|
|
36
|
-
catch (error) {
|
|
37
|
-
console.error("Error updating sequence diagram:", error);
|
|
38
|
-
const errorP = document.createElement('p');
|
|
39
|
-
errorP.className = 'haibun-artifact-error';
|
|
40
|
-
errorP.textContent = `Error updating sequence diagram: ${error.message}`;
|
|
41
|
-
container.appendChild(errorP);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=JsonArtifactHTTPTrace.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"JsonArtifactHTTPTrace.js","sourceRoot":"","sources":["../../../src/monitor/artifactDisplays/JsonArtifactHTTPTrace.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,MAAM,OAAO,qBAAsB,SAAQ,eAAe;IAKnC;IAJb,eAAe,CAA6B;IACrD,gBAAgB,CAA2B;IAC3C,EAAE,CAAS;IAEX,YAAsB,QAA4B;QACjD,KAAK,CAAC,QAAQ,CAAC,CAAC;QADK,aAAQ,GAAR,QAAQ,CAAoB;QAEjD,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;IACjG,CAAC;IAEM,WAAW;QACjB,OAAO,SAAS,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,SAAsB;QACzC,SAAS,CAAC,SAAS,GAAG,EAAE,CAAC;QAEzB,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACjD,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QACxD,MAAM,iBAAiB,GAAG,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAkC,CAAC,CAAC;QAC3F,IAAI,iBAAiB,EAAE,CAAC;YACvB,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;QAC3C,CAAC;QACD,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAElC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC5B,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACtD,IAAI,CAAC,gBAAgB,GAAG,IAAI,wBAAwB,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAC1E,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,KAAK,OAAO,EAAE,CAAC;YACzC,MAAM,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;YACnE,IAAI,cAAc,IAAI,cAAc,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;gBAC5D,IAAI,CAAC;oBACJ,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;gBACtC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;oBACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;oBAC3C,MAAM,CAAC,SAAS,GAAG,uBAAuB,CAAC;oBAC3C,MAAM,CAAC,WAAW,GAAG,oCAAqC,KAAe,CAAC,OAAO,EAAE,CAAC;oBACpF,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;CACD"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { TArtifactResolvedFeatures } from "@haibun/core/lib/interfaces/logger.js";
|
|
2
|
-
import { ArtifactDisplay } from "./artifactDisplayBase.js";
|
|
3
|
-
export declare class ResolvedFeaturesArtifactDisplay extends ArtifactDisplay {
|
|
4
|
-
protected artifact: TArtifactResolvedFeatures;
|
|
5
|
-
readonly placementTarget = "details";
|
|
6
|
-
constructor(artifact: TArtifactResolvedFeatures);
|
|
7
|
-
render(container: HTMLElement): Promise<void>;
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=ResolvedFeaturesArtifactDisplay.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ResolvedFeaturesArtifactDisplay.d.ts","sourceRoot":"","sources":["../../../src/monitor/artifactDisplays/ResolvedFeaturesArtifactDisplay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAElF,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAW3D,qBAAa,+BAAgC,SAAQ,eAAe;IAGvD,SAAS,CAAC,QAAQ,EAAE,yBAAyB;IAFzD,QAAQ,CAAC,eAAe,aAAa;gBAEf,QAAQ,EAAE,yBAAyB;IAI5C,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAyB1D"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { generateMermaidGraphAsMarkdown } from "../graph/generateMermaidGraph.js";
|
|
2
|
-
import { ArtifactDisplay } from "./artifactDisplayBase.js";
|
|
3
|
-
import mermaid from 'mermaid';
|
|
4
|
-
mermaid.initialize({
|
|
5
|
-
maxTextSize: 1000000,
|
|
6
|
-
maxEdges: 10000,
|
|
7
|
-
});
|
|
8
|
-
let instanceCounter = 0;
|
|
9
|
-
export class ResolvedFeaturesArtifactDisplay extends ArtifactDisplay {
|
|
10
|
-
artifact;
|
|
11
|
-
placementTarget = 'details';
|
|
12
|
-
constructor(artifact) {
|
|
13
|
-
super(artifact);
|
|
14
|
-
this.artifact = artifact;
|
|
15
|
-
}
|
|
16
|
-
async render(container) {
|
|
17
|
-
// The artifact is already typed as TArtifactResolvedFeatures due to the constructor
|
|
18
|
-
if (!this.artifact.resolvedFeatures || this.artifact.resolvedFeatures.length === 0) {
|
|
19
|
-
container.innerHTML = '<p>No resolved features to display.</p>';
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
const mermaidGraph = await generateMermaidGraphAsMarkdown(this.artifact.resolvedFeatures, false);
|
|
23
|
-
const graphSvgId = `mermaid-graph-svg-${instanceCounter++}-${Date.now()}`;
|
|
24
|
-
container.innerHTML = ''; // Clear placeholder
|
|
25
|
-
try {
|
|
26
|
-
const { svg, bindFunctions } = await mermaid.render(graphSvgId, mermaidGraph);
|
|
27
|
-
container.innerHTML = svg;
|
|
28
|
-
if (bindFunctions) {
|
|
29
|
-
bindFunctions(container);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
catch (error) {
|
|
33
|
-
console.error('Error rendering Mermaid graph:', error);
|
|
34
|
-
container.innerHTML = `<p class="haibun-artifact-error">Error rendering graph: ${error.message}</p>`;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=ResolvedFeaturesArtifactDisplay.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ResolvedFeaturesArtifactDisplay.js","sourceRoot":"","sources":["../../../src/monitor/artifactDisplays/ResolvedFeaturesArtifactDisplay.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,CAAC,UAAU,CAAC;IAClB,WAAW,EAAE,OAAO;IACpB,QAAQ,EAAE,KAAK;CACf,CAAC,CAAC;AAEH,IAAI,eAAe,GAAG,CAAC,CAAC;AAExB,MAAM,OAAO,+BAAgC,SAAQ,eAAe;IAG7C;IAFb,eAAe,GAAG,SAAS,CAAC;IAErC,YAAsB,QAAmC;QACxD,KAAK,CAAC,QAAQ,CAAC,CAAC;QADK,aAAQ,GAAR,QAAQ,CAA2B;IAEzD,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,SAAsB;QACzC,oFAAoF;QACpF,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,IAAI,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpF,SAAS,CAAC,SAAS,GAAG,yCAAyC,CAAC;YAChE,OAAO;QACR,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,8BAA8B,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;QAEjG,MAAM,UAAU,GAAG,qBAAqB,eAAe,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAE1E,SAAS,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC,oBAAoB;QAE9C,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YAC9E,SAAS,CAAC,SAAS,GAAG,GAAG,CAAC;YAE1B,IAAI,aAAa,EAAE,CAAC;gBACnB,aAAa,CAAC,SAAS,CAAC,CAAC;YAC1B,CAAC;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;YACvD,SAAS,CAAC,SAAS,GAAG,2DAA4D,KAAe,CAAC,OAAO,MAAM,CAAC;QACjH,CAAC;IACF,CAAC;CACD"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { TArtifactHTTPTrace, THTTPTraceContent } from '@haibun/core/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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SequenceDiagramGenerator.d.ts","sourceRoot":"","sources":["../../../src/monitor/artifactDisplays/SequenceDiagramGenerator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAsB9F,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;IACvD,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;IAU9B,OAAO,CAAC,cAAc;IActB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,kBAAkB;IAOnB,0BAA0B,IAAI,IAAI;IA4BlC,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,OAAO;;;;;;;;KAAc,GAAG,IAAI;IAuFrH,UAAU,IAAI,MAAM;IAKpB,cAAc,IAAI,OAAO;IAKzB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAI9B,MAAM;CA2CnB;AACD,wBAAgB,SAAS,CAAC,OAAO,KAAA,EAAE,SAAS,KAAA,EAAE,UAAU,KAAA,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,iBAAiB,WA0BtG"}
|