screenwright 0.1.28 → 0.1.29

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 (37) hide show
  1. package/dist/src/composition/DemoVideo.d.ts.map +1 -1
  2. package/dist/src/composition/DemoVideo.js +14 -11
  3. package/dist/src/composition/DemoVideo.js.map +1 -1
  4. package/dist/src/composition/SceneSlide.d.ts +1 -0
  5. package/dist/src/composition/SceneSlide.d.ts.map +1 -1
  6. package/dist/src/composition/SceneSlide.js +8 -3
  7. package/dist/src/composition/SceneSlide.js.map +1 -1
  8. package/dist/src/composition/remotion-root.d.ts.map +1 -1
  9. package/dist/src/composition/remotion-root.js +5 -5
  10. package/dist/src/composition/remotion-root.js.map +1 -1
  11. package/dist/src/composition/time-remap.d.ts +17 -6
  12. package/dist/src/composition/time-remap.d.ts.map +1 -1
  13. package/dist/src/composition/time-remap.js +40 -16
  14. package/dist/src/composition/time-remap.js.map +1 -1
  15. package/dist/src/config/config-schema.js +1 -1
  16. package/dist/src/config/config-schema.js.map +1 -1
  17. package/dist/src/generator/prompts.d.ts +1 -1
  18. package/dist/src/generator/prompts.d.ts.map +1 -1
  19. package/dist/src/generator/prompts.js +9 -7
  20. package/dist/src/generator/prompts.js.map +1 -1
  21. package/dist/src/index.d.ts +2 -2
  22. package/dist/src/index.d.ts.map +1 -1
  23. package/dist/src/runtime/action-helpers.d.ts +6 -1
  24. package/dist/src/runtime/action-helpers.d.ts.map +1 -1
  25. package/dist/src/runtime/action-helpers.js +8 -2
  26. package/dist/src/runtime/action-helpers.js.map +1 -1
  27. package/dist/src/timeline/schema.d.ts +47 -0
  28. package/dist/src/timeline/schema.d.ts.map +1 -1
  29. package/dist/src/timeline/schema.js +8 -0
  30. package/dist/src/timeline/schema.js.map +1 -1
  31. package/dist/src/timeline/types.d.ts +8 -0
  32. package/dist/src/timeline/types.d.ts.map +1 -1
  33. package/dist/src/version.d.ts +1 -1
  34. package/dist/src/version.js +1 -1
  35. package/dist/tsconfig.tsbuildinfo +1 -1
  36. package/package.json +1 -1
  37. package/skill/SKILL.md +9 -7
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "screenwright",
3
- "version": "0.1.28",
3
+ "version": "0.1.29",
4
4
  "description": "Turn Playwright E2E tests into polished product demo videos",
5
5
  "license": "MIT",
6
6
  "author": "Guillaume Dupuy",
package/skill/SKILL.md CHANGED
@@ -2,7 +2,7 @@
2
2
  name: screenwright
3
3
  description: Turn Playwright E2E tests into polished product demo videos
4
4
  user_invocable: true
5
- version: 0.1.28
5
+ version: 0.1.29
6
6
  ---
7
7
 
8
8
  # Screenwright
@@ -68,7 +68,9 @@ The scenario must:
68
68
  - Import `ScreenwrightHelpers` from `screenwright`
69
69
  - Export a default async function: `export default async function scenario(sw: ScreenwrightHelpers)`
70
70
  - Use the `sw.*` API exclusively:
71
- - `sw.scene(title, description?)` — scene/chapter boundary
71
+ - `sw.scene(title)` — scene marker only, no slide
72
+ - `sw.scene(title, description?)` — scene marker with optional description, no slide
73
+ - `sw.scene(title, { description?, slide?: { duration?, brandColor?, textColor?, fontFamily?, titleFontSize? } })` — scene with optional transition slide (pass `{ slide: {} }` for defaults)
72
74
  - `sw.navigate(url, { narration? })` — navigate to URL
73
75
  - `sw.click(selector, { narration? })` — click element
74
76
  - `sw.fill(selector, value, { narration? })` — type into input (character by character)
@@ -90,7 +92,7 @@ The scenario must:
90
92
  import type { ScreenwrightHelpers } from 'screenwright';
91
93
 
92
94
  export default async function scenario(sw: ScreenwrightHelpers) {
93
- await sw.scene('Signing In');
95
+ await sw.scene('Signing In', { slide: {} });
94
96
  await sw.navigate('http://localhost:3000/login', {
95
97
  narration: "Let's start by logging into the dashboard.",
96
98
  });
@@ -102,7 +104,7 @@ export default async function scenario(sw: ScreenwrightHelpers) {
102
104
  narration: 'Click sign in.',
103
105
  });
104
106
 
105
- await sw.scene('Viewing the Dashboard');
107
+ await sw.scene('Viewing the Dashboard', { slide: {} });
106
108
  await sw.narrate('The dashboard shows our key metrics at a glance.');
107
109
  }
108
110
  ```
@@ -113,12 +115,12 @@ export default async function scenario(sw: ScreenwrightHelpers) {
113
115
  import type { ScreenwrightHelpers } from 'screenwright';
114
116
 
115
117
  export default async function scenario(sw: ScreenwrightHelpers) {
116
- await sw.scene('Starting the Application');
118
+ await sw.scene('Starting the Application', { slide: {} });
117
119
  await sw.navigate('http://localhost:3000/apply', {
118
120
  narration: 'We begin on the application form.',
119
121
  });
120
122
 
121
- await sw.scene('Personal Information');
123
+ await sw.scene('Personal Information', { slide: {} });
122
124
  await sw.fill('[data-testid="first-name"]', 'Jordan', {
123
125
  narration: "Let's fill in our personal details.",
124
126
  });
@@ -133,7 +135,7 @@ export default async function scenario(sw: ScreenwrightHelpers) {
133
135
  await sw.click('[data-testid="role-select"]');
134
136
  await sw.click('[data-testid="role-engineering"]');
135
137
 
136
- await sw.scene('Review and Submit');
138
+ await sw.scene('Review and Submit', { slide: {} });
137
139
  await sw.narrate('Everything looks good. Time to submit.');
138
140
  await sw.wait(1500);
139
141
  await sw.press('Tab');