@haibun/web-playwright 1.75.2 → 2.0.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.
@@ -0,0 +1,14 @@
1
+ import { ArtifactDisplay } from './artifactDisplayBase.js';
2
+ import type { TResolvedFeature } from '@haibun/core/lib/defs.js';
3
+ export declare class FeatureStepsArtifactDisplay extends ArtifactDisplay {
4
+ private feature;
5
+ constructor(feature: TResolvedFeature);
6
+ render(container: HTMLElement): Promise<void>;
7
+ private generateHTML;
8
+ private formatStep;
9
+ private getSourceInfo;
10
+ private getVariableInfo;
11
+ private escapeHtml;
12
+ }
13
+ export declare function getFeatureStepsCSS(): string;
14
+ //# sourceMappingURL=FeatureStepsArtifactDisplay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FeatureStepsArtifactDisplay.d.ts","sourceRoot":"","sources":["../../../src/monitor/artifactDisplays/FeatureStepsArtifactDisplay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAgB,MAAM,0BAA0B,CAAC;AAE/E,qBAAa,2BAA4B,SAAQ,eAAe;IAC/D,OAAO,CAAC,OAAO,CAAmB;gBAEtB,OAAO,EAAE,gBAAgB;IAK/B,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAInD,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,UAAU;CAKlB;AAED,wBAAgB,kBAAkB,IAAI,MAAM,CA4G3C"}
@@ -0,0 +1,173 @@
1
+ import { ArtifactDisplay } from './artifactDisplayBase.js';
2
+ export class FeatureStepsArtifactDisplay extends ArtifactDisplay {
3
+ feature;
4
+ constructor(feature) {
5
+ super('featureSteps', 'Feature Steps');
6
+ this.feature = feature;
7
+ }
8
+ async render(container) {
9
+ container.innerHTML = this.generateHTML();
10
+ }
11
+ generateHTML() {
12
+ const steps = this.feature.featureSteps.map((step, idx) => this.formatStep(step, idx)).join('\n');
13
+ return `
14
+ <div class="haibun-feature-steps-display">
15
+ <div class="haibun-feature-steps-header">
16
+ <strong>Feature:</strong> ${this.escapeHtml(this.feature.path)}
17
+ </div>
18
+ <div class="haibun-feature-steps-list">
19
+ ${steps}
20
+ </div>
21
+ </div>
22
+ `;
23
+ }
24
+ formatStep(step, index) {
25
+ const seqPath = step.seqPath.join('.');
26
+ const sourceInfo = this.getSourceInfo(step);
27
+ const variableInfo = this.getVariableInfo(step);
28
+ return `
29
+ <div class="haibun-feature-step" data-seq-path="${seqPath}" data-step-index="${index}">
30
+ <div class="haibun-step-main">
31
+ <span class="haibun-step-number">${index + 1}</span>
32
+ <span class="haibun-step-text">${this.escapeHtml(step.in)}</span>
33
+ </div>
34
+ ${sourceInfo ? `<div class="haibun-step-source">${sourceInfo}</div>` : ''}
35
+ ${variableInfo ? `<div class="haibun-step-variables">${variableInfo}</div>` : ''}
36
+ </div>
37
+ `;
38
+ }
39
+ getSourceInfo(step) {
40
+ // If step came from a different file (background), show it
41
+ if (step.path && step.path !== this.feature.path) {
42
+ return `<span class="haibun-source-label">from:</span> ${this.escapeHtml(step.path)}`;
43
+ }
44
+ return '';
45
+ }
46
+ getVariableInfo(step) {
47
+ const vars = step.action?.stepValuesMap;
48
+ if (!vars || Object.keys(vars).length === 0) {
49
+ return '';
50
+ }
51
+ const varLines = Object.entries(vars).map(([key, value]) => {
52
+ const origin = value.origin || 'literal';
53
+ const originClass = `haibun-var-origin-${origin}`;
54
+ return `<span class="haibun-variable ${originClass}"><span class="haibun-var-key">${this.escapeHtml(key)}:</span> <span class="haibun-var-value">${this.escapeHtml(String(value.value))}</span> <span class="haibun-var-origin">(${origin})</span></span>`;
55
+ }).join(', ');
56
+ return `<span class="haibun-vars-label">vars:</span> ${varLines}`;
57
+ }
58
+ escapeHtml(text) {
59
+ const div = document.createElement('div');
60
+ div.textContent = text;
61
+ return div.innerHTML;
62
+ }
63
+ }
64
+ export function getFeatureStepsCSS() {
65
+ return `
66
+ .haibun-feature-steps-display {
67
+ font-family: monospace;
68
+ padding: 1rem;
69
+ background: #f5f5f5;
70
+ border-radius: 4px;
71
+ margin: 0.5rem 0;
72
+ }
73
+
74
+ .haibun-feature-steps-header {
75
+ margin-bottom: 1rem;
76
+ padding-bottom: 0.5rem;
77
+ border-bottom: 2px solid #ddd;
78
+ }
79
+
80
+ .haibun-feature-steps-list {
81
+ display: flex;
82
+ flex-direction: column;
83
+ gap: 0.5rem;
84
+ }
85
+
86
+ .haibun-feature-step {
87
+ padding: 0.5rem;
88
+ background: white;
89
+ border-left: 3px solid #ccc;
90
+ transition: all 0.2s ease;
91
+ }
92
+
93
+ .haibun-feature-step.haibun-step-executing {
94
+ border-left-color: #4CAF50;
95
+ background: #E8F5E9;
96
+ box-shadow: 0 2px 4px rgba(0,0,0,0.1);
97
+ }
98
+
99
+ .haibun-feature-step.haibun-step-executed {
100
+ border-left-color: #2196F3;
101
+ background: #E3F2FD;
102
+ opacity: 0.7;
103
+ }
104
+
105
+ .haibun-step-main {
106
+ display: flex;
107
+ align-items: baseline;
108
+ gap: 0.5rem;
109
+ }
110
+
111
+ .haibun-step-number {
112
+ display: inline-block;
113
+ min-width: 2em;
114
+ color: #666;
115
+ font-weight: bold;
116
+ }
117
+
118
+ .haibun-step-text {
119
+ flex: 1;
120
+ color: #333;
121
+ }
122
+
123
+ .haibun-step-source,
124
+ .haibun-step-variables {
125
+ font-size: 0.85em;
126
+ color: #666;
127
+ margin-left: 2.5rem;
128
+ margin-top: 0.25rem;
129
+ }
130
+
131
+ .haibun-source-label,
132
+ .haibun-vars-label {
133
+ font-weight: bold;
134
+ color: #888;
135
+ margin-right: 0.25rem;
136
+ }
137
+
138
+ .haibun-variable {
139
+ display: inline-block;
140
+ padding: 0.125rem 0.25rem;
141
+ border-radius: 3px;
142
+ background: #f0f0f0;
143
+ }
144
+
145
+ .haibun-var-origin-env {
146
+ background: #FFF9C4;
147
+ }
148
+
149
+ .haibun-var-origin-var {
150
+ background: #E1BEE7;
151
+ }
152
+
153
+ .haibun-var-origin-literal {
154
+ background: #f0f0f0;
155
+ }
156
+
157
+ .haibun-var-key {
158
+ color: #d32f2f;
159
+ font-weight: 600;
160
+ }
161
+
162
+ .haibun-var-value {
163
+ color: #1976d2;
164
+ }
165
+
166
+ .haibun-var-origin {
167
+ font-size: 0.9em;
168
+ color: #888;
169
+ font-style: italic;
170
+ }
171
+ `;
172
+ }
173
+ //# sourceMappingURL=FeatureStepsArtifactDisplay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FeatureStepsArtifactDisplay.js","sourceRoot":"","sources":["../../../src/monitor/artifactDisplays/FeatureStepsArtifactDisplay.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import { TResolvedFeature } from '@haibun/core/lib/defs.js';
2
+ /**
3
+ * Generate feature overview for the monitor
4
+ * Shows all steps that will execute with source annotations
5
+ */
6
+ export type TStepAnnotation = {
7
+ stepIndex: number;
8
+ seqPath: number[];
9
+ text: string;
10
+ sourcePath: string;
11
+ isBackground: boolean;
12
+ indent: number;
13
+ stepperName: string;
14
+ actionName: string;
15
+ variables: Array<{
16
+ name: string;
17
+ value: unknown;
18
+ origin: string;
19
+ }>;
20
+ };
21
+ export type TFeatureOverview = {
22
+ featurePath: string;
23
+ base: string;
24
+ dependencies: string[];
25
+ steps: TStepAnnotation[];
26
+ };
27
+ /**
28
+ * Generate a feature overview showing all steps with annotations
29
+ */
30
+ export declare function generateFeatureOverview(feature: TResolvedFeature): TFeatureOverview;
31
+ /**
32
+ * Format the feature overview as HTML for the monitor
33
+ */
34
+ export declare function formatFeatureOverviewAsHTML(overview: TFeatureOverview): string;
35
+ /**
36
+ * Generate CSS for the feature overview
37
+ */
38
+ export declare function getFeatureOverviewCSS(): string;
39
+ //# sourceMappingURL=featureOverview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"featureOverview.d.ts","sourceRoot":"","sources":["../../src/monitor/featureOverview.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D;;;GAGG;AAEH,MAAM,MAAM,eAAe,GAAG;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnE,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,EAAE,eAAe,EAAE,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,GAAG,gBAAgB,CA6CnF;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,CAuD9E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAoH9C"}
@@ -0,0 +1,218 @@
1
+ /**
2
+ * Generate a feature overview showing all steps with annotations
3
+ */
4
+ export function generateFeatureOverview(feature) {
5
+ const dependencies = new Set();
6
+ const steps = [];
7
+ for (let i = 0; i < feature.featureSteps.length; i++) {
8
+ const step = feature.featureSteps[i];
9
+ // Track dependencies
10
+ if (step.path !== feature.path) {
11
+ dependencies.add(step.path);
12
+ }
13
+ // Extract variables
14
+ const variables = [];
15
+ if (step.action.stepValuesMap) {
16
+ for (const [name, valueInfo] of Object.entries(step.action.stepValuesMap)) {
17
+ if (!Array.isArray(valueInfo.value) && valueInfo.value !== undefined) {
18
+ variables.push({
19
+ name,
20
+ value: valueInfo.value,
21
+ origin: valueInfo.origin,
22
+ });
23
+ }
24
+ }
25
+ }
26
+ steps.push({
27
+ stepIndex: i,
28
+ seqPath: step.seqPath || [],
29
+ text: step.in,
30
+ sourcePath: step.path,
31
+ isBackground: step.path !== feature.path,
32
+ indent: (step.seqPath?.length || 1) - 1,
33
+ stepperName: step.action.stepperName,
34
+ actionName: step.action.actionName,
35
+ variables,
36
+ });
37
+ }
38
+ return {
39
+ featurePath: feature.path,
40
+ base: feature.base,
41
+ dependencies: Array.from(dependencies),
42
+ steps,
43
+ };
44
+ }
45
+ /**
46
+ * Format the feature overview as HTML for the monitor
47
+ */
48
+ export function formatFeatureOverviewAsHTML(overview) {
49
+ const lines = [];
50
+ lines.push('<div class="haibun-feature-overview">');
51
+ lines.push(`<div class="haibun-feature-path">${escapeHtml(overview.featurePath)}</div>`);
52
+ if (overview.dependencies.length > 0) {
53
+ lines.push('<div class="haibun-feature-dependencies">');
54
+ lines.push('<span class="haibun-dependencies-label">Includes:</span>');
55
+ for (const dep of overview.dependencies) {
56
+ lines.push(`<span class="haibun-dependency">${escapeHtml(dep)}</span>`);
57
+ }
58
+ lines.push('</div>');
59
+ }
60
+ lines.push('<div class="haibun-feature-steps">');
61
+ for (const step of overview.steps) {
62
+ const indent = ' '.repeat(step.indent);
63
+ const bgClass = step.isBackground ? ' haibun-step-from-background' : '';
64
+ const dataAttrs = `data-step-index="${step.stepIndex}" data-seq-path="${step.seqPath.join('.')}"`;
65
+ lines.push(`<div class="haibun-step-preview${bgClass}" ${dataAttrs}>`);
66
+ // Main step text
67
+ lines.push(`<span class="haibun-step-text">${indent}${escapeHtml(step.text)}</span>`);
68
+ // Source annotation (right margin)
69
+ const annotations = [];
70
+ if (step.isBackground) {
71
+ const shortPath = step.sourcePath.split('/').pop() || step.sourcePath;
72
+ annotations.push(`<span class="haibun-annotation-source" title="${escapeHtml(step.sourcePath)}">← ${escapeHtml(shortPath)}</span>`);
73
+ }
74
+ // Variable annotations
75
+ if (step.variables.length > 0) {
76
+ const varList = step.variables
77
+ .map(v => {
78
+ const originMark = v.origin === 'env' ? '⟨env⟩' : v.origin === 'var' ? '⟨var⟩' : '';
79
+ return `${v.name}=${v.value}${originMark}`;
80
+ })
81
+ .join(', ');
82
+ annotations.push(`<span class="haibun-annotation-vars" title="Variables">${escapeHtml(varList)}</span>`);
83
+ }
84
+ if (annotations.length > 0) {
85
+ lines.push(`<span class="haibun-step-annotations">${annotations.join(' ')}</span>`);
86
+ }
87
+ lines.push('</div>');
88
+ }
89
+ lines.push('</div>');
90
+ lines.push('</div>');
91
+ return lines.join('\n');
92
+ }
93
+ /**
94
+ * Generate CSS for the feature overview
95
+ */
96
+ export function getFeatureOverviewCSS() {
97
+ return `
98
+ .haibun-feature-overview {
99
+ background: #f9f9f9;
100
+ border: 1px solid #ddd;
101
+ border-radius: 4px;
102
+ padding: 12px;
103
+ margin: 10px 0;
104
+ font-family: 'Roboto Mono', monospace;
105
+ font-size: 0.9em;
106
+ }
107
+
108
+ .haibun-feature-path {
109
+ font-weight: bold;
110
+ color: #333;
111
+ margin-bottom: 8px;
112
+ font-size: 1.1em;
113
+ }
114
+
115
+ .haibun-feature-dependencies {
116
+ margin-bottom: 12px;
117
+ padding: 6px;
118
+ background: #fff8e1;
119
+ border-left: 3px solid #ffc107;
120
+ font-size: 0.85em;
121
+ }
122
+
123
+ .haibun-dependencies-label {
124
+ font-weight: bold;
125
+ margin-right: 8px;
126
+ color: #f57c00;
127
+ }
128
+
129
+ .haibun-dependency {
130
+ display: inline-block;
131
+ margin-right: 8px;
132
+ padding: 2px 6px;
133
+ background: #fff;
134
+ border: 1px solid #ffc107;
135
+ border-radius: 3px;
136
+ color: #e65100;
137
+ }
138
+
139
+ .haibun-feature-steps {
140
+ background: #fff;
141
+ border: 1px solid #e0e0e0;
142
+ border-radius: 3px;
143
+ padding: 8px;
144
+ max-height: 400px;
145
+ overflow-y: auto;
146
+ }
147
+
148
+ .haibun-step-preview {
149
+ display: flex;
150
+ justify-content: space-between;
151
+ padding: 4px 6px;
152
+ margin: 2px 0;
153
+ border-left: 3px solid transparent;
154
+ transition: all 0.2s;
155
+ }
156
+
157
+ .haibun-step-preview:hover {
158
+ background: #f5f5f5;
159
+ }
160
+
161
+ .haibun-step-preview.haibun-step-current {
162
+ background: #fff3e0;
163
+ border-left-color: #ff9800;
164
+ font-weight: bold;
165
+ }
166
+
167
+ .haibun-step-preview.haibun-step-executed {
168
+ opacity: 0.6;
169
+ background: #f0f0f0;
170
+ }
171
+
172
+ .haibun-step-preview.haibun-step-from-background {
173
+ background: #e8f5e9;
174
+ border-left-color: #4caf50;
175
+ }
176
+
177
+ .haibun-step-preview.haibun-step-from-background.haibun-step-current {
178
+ background: #c8e6c9;
179
+ border-left-color: #2e7d32;
180
+ }
181
+
182
+ .haibun-step-text {
183
+ flex: 1;
184
+ white-space: pre;
185
+ color: #333;
186
+ }
187
+
188
+ .haibun-step-annotations {
189
+ display: flex;
190
+ gap: 8px;
191
+ margin-left: 12px;
192
+ font-size: 0.85em;
193
+ white-space: nowrap;
194
+ }
195
+
196
+ .haibun-annotation-source {
197
+ color: #4caf50;
198
+ font-style: italic;
199
+ }
200
+
201
+ .haibun-annotation-vars {
202
+ color: #2196f3;
203
+ font-family: monospace;
204
+ }
205
+
206
+ .haibun-step-annotations span {
207
+ padding: 2px 4px;
208
+ border-radius: 2px;
209
+ background: rgba(0, 0, 0, 0.05);
210
+ }
211
+ `;
212
+ }
213
+ function escapeHtml(text) {
214
+ const div = document.createElement('div');
215
+ div.textContent = text;
216
+ return div.innerHTML;
217
+ }
218
+ //# sourceMappingURL=featureOverview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"featureOverview.js","sourceRoot":"","sources":["../../src/monitor/featureOverview.ts"],"names":[],"mappings":"AA0BA;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAyB;IAChE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IACvC,MAAM,KAAK,GAAsB,EAAE,CAAC;IAEpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtD,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAErC,qBAAqB;QACrB,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;YAChC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;QAED,oBAAoB;QACpB,MAAM,SAAS,GAA4D,EAAE,CAAC;QAC9E,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YAC/B,KAAK,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC3E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACtE,SAAS,CAAC,IAAI,CAAC;wBACd,IAAI;wBACJ,KAAK,EAAE,SAAS,CAAC,KAAK;wBACtB,MAAM,EAAE,SAAS,CAAC,MAAM;qBACxB,CAAC,CAAC;gBACJ,CAAC;YACF,CAAC;QACF,CAAC;QAED,KAAK,CAAC,IAAI,CAAC;YACV,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;YAC3B,IAAI,EAAE,IAAI,CAAC,EAAE;YACb,UAAU,EAAE,IAAI,CAAC,IAAI;YACrB,YAAY,EAAE,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI;YACxC,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;YACvC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YACpC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;YAClC,SAAS;SACT,CAAC,CAAC;IACJ,CAAC;IAED,OAAO;QACN,WAAW,EAAE,OAAO,CAAC,IAAI;QACzB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;QACtC,KAAK;KACL,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CAAC,QAA0B;IACrE,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;IACpD,KAAK,CAAC,IAAI,CAAC,oCAAoC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAEzF,IAAI,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;QACxD,KAAK,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;QACvE,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;YACzC,KAAK,CAAC,IAAI,CAAC,mCAAmC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzE,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;IACjD,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,MAAM,SAAS,GAAG,oBAAoB,IAAI,CAAC,SAAS,oBAAoB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;QAElG,KAAK,CAAC,IAAI,CAAC,kCAAkC,OAAO,KAAK,SAAS,GAAG,CAAC,CAAC;QAEvE,iBAAiB;QACjB,KAAK,CAAC,IAAI,CAAC,kCAAkC,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEtF,mCAAmC;QACnC,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC;YACtE,WAAW,CAAC,IAAI,CAAC,iDAAiD,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACrI,CAAC;QAED,uBAAuB;QACvB,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS;iBAC5B,GAAG,CAAC,CAAC,CAAC,EAAE;gBACR,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpF,OAAO,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG,UAAU,EAAE,CAAC;YAC5C,CAAC,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,CAAC;YACb,WAAW,CAAC,IAAI,CAAC,0DAA0D,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1G,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,yCAAyC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACrF,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtB,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAErB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAErB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACpC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkHP,CAAC;AACF,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC/B,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC;IACvB,OAAO,GAAG,CAAC,SAAS,CAAC;AACtB,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@haibun/web-playwright",
3
3
  "type": "module",
4
- "version": "1.75.2",
4
+ "version": "2.0.0",
5
5
  "description": "",
6
6
  "main": "build/web-playwright.js",
7
7
  "exports": { ".": "./build/web-playwright.js", "./*": "./build/*" },
@@ -19,10 +19,10 @@
19
19
  "author": "",
20
20
  "license": "ISC",
21
21
  "dependencies": {
22
- "@haibun/core": "1.75.2",
23
- "@haibun/domain-storage": "1.75.2",
24
- "@haibun/storage-mem": "1.75.2",
25
- "playwright": "1.52"
22
+ "@haibun/core": "2.0.0",
23
+ "@haibun/domain-storage": "2.0.0",
24
+ "@haibun/storage-mem": "2.0.0",
25
+ "playwright": "^1.56.1"
26
26
  },
27
27
  "gitHead": "7cf9680bd922fb622fb59f1e6bf5b65284cb8fd5",
28
28
  "devDependencies": {