screenwright 0.1.37 → 0.1.39
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/dist/src/composition/DemoVideo.d.ts.map +1 -1
- package/dist/src/composition/DemoVideo.js +45 -93
- package/dist/src/composition/DemoVideo.js.map +1 -1
- package/dist/src/composition/remotion-root.d.ts.map +1 -1
- package/dist/src/composition/remotion-root.js +6 -3
- package/dist/src/composition/remotion-root.js.map +1 -1
- package/dist/src/composition/time-remap.d.ts +48 -16
- package/dist/src/composition/time-remap.d.ts.map +1 -1
- package/dist/src/composition/time-remap.js +133 -77
- package/dist/src/composition/time-remap.js.map +1 -1
- package/dist/src/composition/transition-styles.js +2 -2
- package/dist/src/composition/transition-styles.js.map +1 -1
- package/dist/src/runtime/action-helpers.d.ts.map +1 -1
- package/dist/src/runtime/action-helpers.js +38 -20
- package/dist/src/runtime/action-helpers.js.map +1 -1
- package/dist/src/runtime/instrumented-page.d.ts.map +1 -1
- package/dist/src/runtime/instrumented-page.js +3 -1
- package/dist/src/runtime/instrumented-page.js.map +1 -1
- package/dist/src/timeline/schema.d.ts +156 -1
- package/dist/src/timeline/schema.d.ts.map +1 -1
- package/dist/src/timeline/schema.js +6 -1
- package/dist/src/timeline/schema.js.map +1 -1
- package/dist/src/timeline/types.d.ts +1 -0
- package/dist/src/timeline/types.d.ts.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/skill/SKILL.md +1 -1
|
@@ -4,109 +4,165 @@ export function msToFrames(ms, fps) {
|
|
|
4
4
|
}
|
|
5
5
|
/**
|
|
6
6
|
* Filter scenes that have a `slide` field and resolve their duration.
|
|
7
|
-
*
|
|
8
|
-
* (stale source time from transition waits + navigate page loads).
|
|
7
|
+
* Pass allEvents to get correct eventIndex for stable ordering with transitions.
|
|
9
8
|
*/
|
|
10
9
|
export function resolveSlideScenes(scenes, allEvents) {
|
|
11
10
|
return scenes
|
|
12
11
|
.filter(s => s.slide !== undefined)
|
|
13
|
-
.map(s => {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
const transEnd = s.timestampMs + afterTrans.durationMs;
|
|
19
|
-
const firstAction = allEvents.find((e) => e.type === 'action' && e.timestampMs >= transEnd - 50);
|
|
20
|
-
if (firstAction?.action === 'navigate') {
|
|
21
|
-
const settled = allEvents.find(e => e.timestampMs > firstAction.timestampMs + 50);
|
|
22
|
-
deadAfterMs = settled
|
|
23
|
-
? settled.timestampMs - s.timestampMs
|
|
24
|
-
: afterTrans.durationMs;
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
deadAfterMs = afterTrans.durationMs;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
return {
|
|
32
|
-
timestampMs: s.timestampMs,
|
|
33
|
-
slideDurationMs: s.slide.duration ?? DEFAULT_SLIDE_DURATION_MS,
|
|
34
|
-
deadAfterMs,
|
|
35
|
-
};
|
|
36
|
-
});
|
|
12
|
+
.map(s => ({
|
|
13
|
+
timestampMs: s.timestampMs,
|
|
14
|
+
slideDurationMs: s.slide.duration ?? DEFAULT_SLIDE_DURATION_MS,
|
|
15
|
+
eventIndex: allEvents ? allEvents.indexOf(s) : 0,
|
|
16
|
+
}));
|
|
37
17
|
}
|
|
38
18
|
/**
|
|
39
|
-
*
|
|
40
|
-
*
|
|
19
|
+
* Walk timeline events and resolve each transition's frame references.
|
|
20
|
+
* beforeSourceMs = settledAtMs (or timestampMs) of the last visual action before it.
|
|
21
|
+
* afterSourceMs = settledAtMs (or timestampMs) of the first visual action after it.
|
|
41
22
|
*/
|
|
42
|
-
export function
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
for (
|
|
46
|
-
|
|
23
|
+
export function resolveTransitions(events) {
|
|
24
|
+
const result = [];
|
|
25
|
+
const actions = events.filter((e) => e.type === 'action');
|
|
26
|
+
for (let i = 0; i < events.length; i++) {
|
|
27
|
+
const event = events[i];
|
|
28
|
+
if (event.type !== 'transition')
|
|
47
29
|
continue;
|
|
48
|
-
const
|
|
49
|
-
const
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
30
|
+
const lastBefore = findLastAction(actions, event.timestampMs);
|
|
31
|
+
const firstAfter = actions.find(a => a.timestampMs > event.timestampMs) ?? null;
|
|
32
|
+
result.push({
|
|
33
|
+
timestampMs: event.timestampMs,
|
|
34
|
+
transitionDurationMs: event.durationMs,
|
|
35
|
+
transition: event.transition,
|
|
36
|
+
beforeSourceMs: lastBefore
|
|
37
|
+
? (lastBefore.settledAtMs ?? lastBefore.timestampMs)
|
|
38
|
+
: event.timestampMs,
|
|
39
|
+
afterSourceMs: firstAfter
|
|
40
|
+
? (firstAfter.settledAtMs ?? firstAfter.timestampMs)
|
|
41
|
+
: event.timestampMs,
|
|
42
|
+
hasContentBefore: lastBefore !== null,
|
|
43
|
+
hasContentAfter: firstAfter !== null,
|
|
44
|
+
eventIndex: i,
|
|
57
45
|
});
|
|
58
|
-
accumulated += slideDurationMs;
|
|
59
46
|
}
|
|
60
|
-
return
|
|
47
|
+
return result;
|
|
48
|
+
}
|
|
49
|
+
function findLastAction(actions, beforeOrAt) {
|
|
50
|
+
let last = null;
|
|
51
|
+
for (const a of actions) {
|
|
52
|
+
if (a.timestampMs <= beforeOrAt)
|
|
53
|
+
last = a;
|
|
54
|
+
else
|
|
55
|
+
break;
|
|
56
|
+
}
|
|
57
|
+
return last;
|
|
58
|
+
}
|
|
59
|
+
function buildSortedInsertions(slideScenes, transitions) {
|
|
60
|
+
const ins = [];
|
|
61
|
+
for (const ss of slideScenes) {
|
|
62
|
+
ins.push({ sourceTimeMs: ss.timestampMs, durationMs: ss.slideDurationMs, kind: 'slide', eventIndex: ss.eventIndex });
|
|
63
|
+
}
|
|
64
|
+
for (const t of transitions) {
|
|
65
|
+
ins.push({ sourceTimeMs: t.timestampMs, durationMs: t.transitionDurationMs, kind: 'transition', eventIndex: t.eventIndex });
|
|
66
|
+
}
|
|
67
|
+
ins.sort((a, b) => a.sourceTimeMs - b.sourceTimeMs || a.eventIndex - b.eventIndex);
|
|
68
|
+
return ins;
|
|
61
69
|
}
|
|
62
70
|
/**
|
|
63
71
|
* Map an output-time position back to its source-time position.
|
|
64
|
-
* During
|
|
65
|
-
*
|
|
66
|
-
* Source times that fall in a dead zone are clamped to its end.
|
|
72
|
+
* During an insertion (slide or transition), returns the insertion's
|
|
73
|
+
* source timestamp (freeze-frame). Otherwise subtracts accumulated offsets.
|
|
67
74
|
*/
|
|
68
|
-
export function sourceTimeMs(outputTimeMs, slideScenes) {
|
|
69
|
-
const
|
|
75
|
+
export function sourceTimeMs(outputTimeMs, slideScenes, transitions = []) {
|
|
76
|
+
const insertions = buildSortedInsertions(slideScenes, transitions);
|
|
70
77
|
let accumulated = 0;
|
|
71
|
-
for (const
|
|
72
|
-
const
|
|
73
|
-
const
|
|
74
|
-
if (outputTimeMs <
|
|
75
|
-
return
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
}
|
|
80
|
-
accumulated += ss.slideDurationMs;
|
|
81
|
-
}
|
|
82
|
-
return clampDeadZones(outputTimeMs - accumulated, sorted);
|
|
83
|
-
}
|
|
84
|
-
function clampDeadZones(sourceTime, slides) {
|
|
85
|
-
for (const ss of slides) {
|
|
86
|
-
if (ss.deadAfterMs > 0 && sourceTime >= ss.timestampMs && sourceTime < ss.timestampMs + ss.deadAfterMs) {
|
|
87
|
-
return ss.timestampMs + ss.deadAfterMs;
|
|
88
|
-
}
|
|
78
|
+
for (const ins of insertions) {
|
|
79
|
+
const start = ins.sourceTimeMs + accumulated;
|
|
80
|
+
const end = start + ins.durationMs;
|
|
81
|
+
if (outputTimeMs < start)
|
|
82
|
+
return outputTimeMs - accumulated;
|
|
83
|
+
if (outputTimeMs < end)
|
|
84
|
+
return ins.sourceTimeMs;
|
|
85
|
+
accumulated += ins.durationMs;
|
|
89
86
|
}
|
|
90
|
-
return
|
|
87
|
+
return outputTimeMs - accumulated;
|
|
91
88
|
}
|
|
92
89
|
export function totalSlideDurationMs(slideScenes) {
|
|
93
90
|
let total = 0;
|
|
94
|
-
for (const ss of slideScenes)
|
|
91
|
+
for (const ss of slideScenes)
|
|
95
92
|
total += ss.slideDurationMs;
|
|
96
|
-
}
|
|
97
93
|
return total;
|
|
98
94
|
}
|
|
95
|
+
export function totalTransitionDurationMs(transitions) {
|
|
96
|
+
let total = 0;
|
|
97
|
+
for (const t of transitions)
|
|
98
|
+
total += t.transitionDurationMs;
|
|
99
|
+
return total;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Compute output-time intervals for both slides and transitions,
|
|
103
|
+
* accounting for all preceding insertions.
|
|
104
|
+
*/
|
|
105
|
+
export function computeOutputSegments(scenes, transitions, allEvents) {
|
|
106
|
+
const slideScenes = resolveSlideScenes(scenes, allEvents);
|
|
107
|
+
const insertions = buildSortedInsertions(slideScenes, transitions);
|
|
108
|
+
// Build queues sorted by eventIndex (matching insertion sort order within each kind).
|
|
109
|
+
const slideQueue = scenes.filter(s => s.slide);
|
|
110
|
+
if (allEvents) {
|
|
111
|
+
slideQueue.sort((a, b) => allEvents.indexOf(a) - allEvents.indexOf(b));
|
|
112
|
+
}
|
|
113
|
+
const transQueue = [...transitions].sort((a, b) => a.eventIndex - b.eventIndex);
|
|
114
|
+
let si = 0;
|
|
115
|
+
let ti = 0;
|
|
116
|
+
const slides = [];
|
|
117
|
+
const transSegs = [];
|
|
118
|
+
let accumulated = 0;
|
|
119
|
+
for (const ins of insertions) {
|
|
120
|
+
const outputStart = ins.sourceTimeMs + accumulated;
|
|
121
|
+
const outputEnd = outputStart + ins.durationMs;
|
|
122
|
+
if (ins.kind === 'slide') {
|
|
123
|
+
const sc = slideQueue[si++];
|
|
124
|
+
if (sc) {
|
|
125
|
+
slides.push({
|
|
126
|
+
slideStartMs: outputStart,
|
|
127
|
+
slideEndMs: outputEnd,
|
|
128
|
+
slideDurationMs: ins.durationMs,
|
|
129
|
+
sceneTitle: sc.title,
|
|
130
|
+
sceneDescription: sc.description,
|
|
131
|
+
slideConfig: sc.slide,
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
const rt = transQueue[ti++];
|
|
137
|
+
if (rt) {
|
|
138
|
+
transSegs.push({
|
|
139
|
+
outputStartMs: outputStart,
|
|
140
|
+
outputEndMs: outputEnd,
|
|
141
|
+
durationMs: ins.durationMs,
|
|
142
|
+
transition: rt.transition,
|
|
143
|
+
beforeSourceMs: rt.beforeSourceMs,
|
|
144
|
+
afterSourceMs: rt.afterSourceMs,
|
|
145
|
+
hasContentBefore: rt.hasContentBefore,
|
|
146
|
+
hasContentAfter: rt.hasContentAfter,
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
accumulated += ins.durationMs;
|
|
151
|
+
}
|
|
152
|
+
return { slides, transitions: transSegs };
|
|
153
|
+
}
|
|
99
154
|
/**
|
|
100
|
-
* Shift every event's timestampMs forward by
|
|
101
|
-
* durations that precede it.
|
|
155
|
+
* Shift every event's timestampMs forward by accumulated insertion
|
|
156
|
+
* durations (slides + transitions) that precede it.
|
|
157
|
+
* Returns a new array (no mutation).
|
|
102
158
|
*/
|
|
103
|
-
export function remapEvents(events, slideScenes) {
|
|
104
|
-
const
|
|
159
|
+
export function remapEvents(events, slideScenes, transitions = []) {
|
|
160
|
+
const insertions = buildSortedInsertions(slideScenes, transitions);
|
|
105
161
|
return events.map(event => {
|
|
106
162
|
let offset = 0;
|
|
107
|
-
for (const
|
|
108
|
-
if (event.timestampMs >=
|
|
109
|
-
offset +=
|
|
163
|
+
for (const ins of insertions) {
|
|
164
|
+
if (event.timestampMs >= ins.sourceTimeMs) {
|
|
165
|
+
offset += ins.durationMs;
|
|
110
166
|
}
|
|
111
167
|
else {
|
|
112
168
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-remap.js","sourceRoot":"","sources":["../../../src/composition/time-remap.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAC;AAE9C,MAAM,UAAU,UAAU,CAAC,EAAU,EAAE,GAAW;IAChD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;AACvC,CAAC;
|
|
1
|
+
{"version":3,"file":"time-remap.js","sourceRoot":"","sources":["../../../src/composition/time-remap.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,10 +43,10 @@ function doorway(p) {
|
|
|
43
43
|
function swap(p) {
|
|
44
44
|
return {
|
|
45
45
|
exit: {
|
|
46
|
-
transform: `perspective(1200px) translateX(${p * 100}%) rotateY(${
|
|
46
|
+
transform: `perspective(1200px) translateX(${-p * 100}%) rotateY(${p * 45}deg) scale(${1 - p * 0.35})`,
|
|
47
47
|
},
|
|
48
48
|
entrance: {
|
|
49
|
-
transform: `perspective(1200px) translateX(${(
|
|
49
|
+
transform: `perspective(1200px) translateX(${(1 - p) * 100}%) rotateY(${-(1 - p) * 45}deg) scale(${0.65 + p * 0.35})`,
|
|
50
50
|
},
|
|
51
51
|
backdrop: '#000000',
|
|
52
52
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transition-styles.js","sourceRoot":"","sources":["../../../src/composition/transition-styles.ts"],"names":[],"mappings":"AAaA,SAAS,SAAS,CAAC,CAAS;IAC1B,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,IAAI,CAAC,CAAS;IACrB,OAAO;QACL,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE;QACxB,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;KACzB,CAAC;AACJ,CAAC;AAED,SAAS,IAAI,CAAC,CAAS;IACrB,OAAO;QACL,IAAI,EAAE,EAAE,QAAQ,EAAE,eAAe,CAAC,GAAG,GAAG,IAAI,EAAE;QAC9C,QAAQ,EAAE,EAAE;KACb,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,CAAS;IACxB,OAAO;QACL,IAAI,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,GAAG,GAAG,IAAI,EAAE;QAC/C,QAAQ,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,EAAE;KACzD,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,CAAS;IAC1B,OAAO;QACL,IAAI,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,GAAG,GAAG,IAAI,EAAE;QAC/C,QAAQ,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,EAAE;KACzD,CAAC;AACJ,CAAC;AAED,SAAS,IAAI,CAAC,CAAS;IACrB,OAAO;QACL,IAAI,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE;QAC5D,QAAQ,EAAE,EAAE,SAAS,EAAE,SAAS,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE;KAC/D,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,CAAS;IACxB,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC;IAC9B,OAAO;QACL,IAAI,EAAG,EAAE,QAAQ,EAAE,kBAAkB,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE;QAC7E,KAAK,EAAE,EAAE,QAAQ,EAAE,kBAAkB,EAAE,SAAS,EAAE,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE;QAC5E,QAAQ,EAAE,EAAE,SAAS,EAAE,SAAS,KAAK,GAAG,EAAE;QAC1C,QAAQ,EAAE,SAAS;KACpB,CAAC;AACJ,CAAC;AAED,SAAS,IAAI,CAAC,CAAS;IACrB,OAAO;QACL,IAAI,EAAE;YACJ,SAAS,EAAE,kCAAkC,CAAC,GAAG,GAAG,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"transition-styles.js","sourceRoot":"","sources":["../../../src/composition/transition-styles.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-helpers.d.ts","sourceRoot":"","sources":["../../../src/runtime/action-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE7E,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,oBAAoB,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClF,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3E,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,UAAU,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrD;AAYD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAGpG;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,iBAAiB,GAAG,mBAAmB,
|
|
1
|
+
{"version":3,"file":"action-helpers.d.ts","sourceRoot":"","sources":["../../../src/runtime/action-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE7E,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,oBAAoB,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClF,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3E,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,UAAU,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrD;AAYD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAGpG;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,iBAAiB,GAAG,mBAAmB,CA+L3F"}
|
|
@@ -61,15 +61,18 @@ export function createHelpers(page, collector) {
|
|
|
61
61
|
async navigate(url, actionOpts) {
|
|
62
62
|
if (actionOpts?.narration)
|
|
63
63
|
await emitNarration(actionOpts.narration);
|
|
64
|
-
collector.
|
|
65
|
-
type: 'action',
|
|
66
|
-
action: 'navigate',
|
|
67
|
-
selector: url,
|
|
68
|
-
durationMs: 0,
|
|
69
|
-
boundingBox: null,
|
|
70
|
-
});
|
|
64
|
+
const startMs = collector.elapsed();
|
|
71
65
|
try {
|
|
72
66
|
await page.goto(url, { waitUntil: 'domcontentloaded' });
|
|
67
|
+
collector.emit({
|
|
68
|
+
type: 'action',
|
|
69
|
+
action: 'navigate',
|
|
70
|
+
selector: url,
|
|
71
|
+
durationMs: 0,
|
|
72
|
+
boundingBox: null,
|
|
73
|
+
timestampMs: startMs,
|
|
74
|
+
settledAtMs: collector.elapsed(),
|
|
75
|
+
});
|
|
73
76
|
}
|
|
74
77
|
catch (err) {
|
|
75
78
|
throw actionError('navigate', url, err);
|
|
@@ -83,14 +86,17 @@ export function createHelpers(page, collector) {
|
|
|
83
86
|
await moveCursorTo(center.x, center.y);
|
|
84
87
|
const locator = page.locator(selector).first();
|
|
85
88
|
const box = await locator.boundingBox();
|
|
89
|
+
const startMs = collector.elapsed();
|
|
90
|
+
await locator.click();
|
|
86
91
|
collector.emit({
|
|
87
92
|
type: 'action',
|
|
88
93
|
action: 'click',
|
|
89
94
|
selector,
|
|
90
95
|
durationMs: 200,
|
|
91
96
|
boundingBox: box ? { x: Math.round(box.x), y: Math.round(box.y), width: Math.round(box.width), height: Math.round(box.height) } : null,
|
|
97
|
+
timestampMs: startMs,
|
|
98
|
+
settledAtMs: collector.elapsed(),
|
|
92
99
|
});
|
|
93
|
-
await locator.click();
|
|
94
100
|
}
|
|
95
101
|
catch (err) {
|
|
96
102
|
throw actionError('click', selector, err);
|
|
@@ -105,6 +111,10 @@ export function createHelpers(page, collector) {
|
|
|
105
111
|
const locator = page.locator(selector).first();
|
|
106
112
|
const box = await locator.boundingBox();
|
|
107
113
|
await locator.click();
|
|
114
|
+
const startMs = collector.elapsed();
|
|
115
|
+
for (const char of value) {
|
|
116
|
+
await page.keyboard.type(char, { delay: CHAR_TYPE_DELAY_MS });
|
|
117
|
+
}
|
|
108
118
|
collector.emit({
|
|
109
119
|
type: 'action',
|
|
110
120
|
action: 'fill',
|
|
@@ -112,10 +122,9 @@ export function createHelpers(page, collector) {
|
|
|
112
122
|
value,
|
|
113
123
|
durationMs: value.length * CHAR_TYPE_DELAY_MS,
|
|
114
124
|
boundingBox: box ? { x: Math.round(box.x), y: Math.round(box.y), width: Math.round(box.width), height: Math.round(box.height) } : null,
|
|
125
|
+
timestampMs: startMs,
|
|
126
|
+
settledAtMs: collector.elapsed(),
|
|
115
127
|
});
|
|
116
|
-
for (const char of value) {
|
|
117
|
-
await page.keyboard.type(char, { delay: CHAR_TYPE_DELAY_MS });
|
|
118
|
-
}
|
|
119
128
|
}
|
|
120
129
|
catch (err) {
|
|
121
130
|
throw actionError('fill', selector, err);
|
|
@@ -129,14 +138,17 @@ export function createHelpers(page, collector) {
|
|
|
129
138
|
await moveCursorTo(center.x, center.y);
|
|
130
139
|
const locator = page.locator(selector).first();
|
|
131
140
|
const box = await locator.boundingBox();
|
|
141
|
+
const startMs = collector.elapsed();
|
|
142
|
+
await locator.hover();
|
|
132
143
|
collector.emit({
|
|
133
144
|
type: 'action',
|
|
134
145
|
action: 'hover',
|
|
135
146
|
selector,
|
|
136
147
|
durationMs: 200,
|
|
137
148
|
boundingBox: box ? { x: Math.round(box.x), y: Math.round(box.y), width: Math.round(box.width), height: Math.round(box.height) } : null,
|
|
149
|
+
timestampMs: startMs,
|
|
150
|
+
settledAtMs: collector.elapsed(),
|
|
138
151
|
});
|
|
139
|
-
await locator.hover();
|
|
140
152
|
}
|
|
141
153
|
catch (err) {
|
|
142
154
|
throw actionError('hover', selector, err);
|
|
@@ -145,15 +157,18 @@ export function createHelpers(page, collector) {
|
|
|
145
157
|
async press(key, actionOpts) {
|
|
146
158
|
if (actionOpts?.narration)
|
|
147
159
|
await emitNarration(actionOpts.narration);
|
|
148
|
-
collector.
|
|
149
|
-
type: 'action',
|
|
150
|
-
action: 'press',
|
|
151
|
-
selector: key,
|
|
152
|
-
durationMs: 100,
|
|
153
|
-
boundingBox: null,
|
|
154
|
-
});
|
|
160
|
+
const startMs = collector.elapsed();
|
|
155
161
|
try {
|
|
156
162
|
await page.keyboard.press(key);
|
|
163
|
+
collector.emit({
|
|
164
|
+
type: 'action',
|
|
165
|
+
action: 'press',
|
|
166
|
+
selector: key,
|
|
167
|
+
durationMs: 100,
|
|
168
|
+
boundingBox: null,
|
|
169
|
+
timestampMs: startMs,
|
|
170
|
+
settledAtMs: collector.elapsed(),
|
|
171
|
+
});
|
|
157
172
|
}
|
|
158
173
|
catch (err) {
|
|
159
174
|
throw actionError('press', key, err);
|
|
@@ -171,12 +186,15 @@ export function createHelpers(page, collector) {
|
|
|
171
186
|
if (durationMs <= 0 || !Number.isFinite(durationMs)) {
|
|
172
187
|
throw new Error(`sw.transition() duration must be a positive number, got ${durationMs}`);
|
|
173
188
|
}
|
|
189
|
+
const events = collector.getEvents();
|
|
190
|
+
if (events.length > 0 && events[events.length - 1].type === 'transition') {
|
|
191
|
+
console.warn('sw.transition() called twice with no action between them — both transitions will stack at the same output position.');
|
|
192
|
+
}
|
|
174
193
|
collector.emit({
|
|
175
194
|
type: 'transition',
|
|
176
195
|
transition: opts?.type ?? 'fade',
|
|
177
196
|
durationMs,
|
|
178
197
|
});
|
|
179
|
-
await page.waitForTimeout(durationMs);
|
|
180
198
|
},
|
|
181
199
|
};
|
|
182
200
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-helpers.js","sourceRoot":"","sources":["../../../src/runtime/action-helpers.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"action-helpers.js","sourceRoot":"","sources":["../../../src/runtime/action-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instrumented-page.d.ts","sourceRoot":"","sources":["../../../src/runtime/instrumented-page.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAc,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAiB,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE9E,MAAM,MAAM,UAAU,GAAG,CAAC,EAAE,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEpE,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"instrumented-page.d.ts","sourceRoot":"","sources":["../../../src/runtime/instrumented-page.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAc,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAiB,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE9E,MAAM,MAAM,UAAU,GAAG,CAAC,EAAE,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEpE,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,CAsJ5F"}
|
|
@@ -117,7 +117,9 @@ export async function runScenario(scenario, opts) {
|
|
|
117
117
|
await context.close().catch(() => { });
|
|
118
118
|
await browser.close().catch(() => { });
|
|
119
119
|
}
|
|
120
|
-
const videoDurationMs = collector.getEvents()
|
|
120
|
+
const videoDurationMs = collector.getEvents()
|
|
121
|
+
.filter(e => e.type !== 'transition')
|
|
122
|
+
.reduce((max, e) => {
|
|
121
123
|
const ts = e.timestampMs + ('durationMs' in e ? (e.durationMs ?? 0) : 0);
|
|
122
124
|
return Math.max(max, ts);
|
|
123
125
|
}, 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instrumented-page.js","sourceRoot":"","sources":["../../../src/runtime/instrumented-page.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"instrumented-page.js","sourceRoot":"","sources":["../../../src/runtime/instrumented-page.ts"],"names":[],"mappings":"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"}
|