diff --git a/package.json b/package.json index d709e81..41e97b1 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "storywright", "description": "Storybook setup.", "license": "MIT", - "version": "0.0.27-storybook7.14", + "version": "0.0.27-storybook7.15", "main": "lib/index.js", "module": "lib/index.js", "typings": "lib/index.d.ts", diff --git a/src/StoryWrightProcessor/GetStoriesV2.js b/src/StoryWrightProcessor/GetStoriesV2.js index 8c3980b..caa42fd 100644 --- a/src/StoryWrightProcessor/GetStoriesV2.js +++ b/src/StoryWrightProcessor/GetStoriesV2.js @@ -14,7 +14,7 @@ function getStoriesWithSteps() { const errors = []; for (let story of Object.values(stories)) { try { - const steps = story.parameters?.storyWright.steps; + const steps = story.parameters?.storyWright?.steps; if (Array.isArray(steps)) { story.steps = steps; } diff --git a/src/StoryWrightProcessor/StoryWrightProcessor.ts b/src/StoryWrightProcessor/StoryWrightProcessor.ts index c3ec19b..edfd7df 100644 --- a/src/StoryWrightProcessor/StoryWrightProcessor.ts +++ b/src/StoryWrightProcessor/StoryWrightProcessor.ts @@ -54,6 +54,15 @@ export class StoryWrightProcessor { }; const getStoriesScriptPath = scriptKind[options.stepsApi]; const getStoriesScript = readFileSync(getStoriesScriptPath, "utf8"); + + if (options.stepsApi === "parameters") { + // Wait for Storybook Preview API to be available + // it's used in GetStoriesV2.js to access story parameters + await page.waitForFunction(() => { + return window["__STORYBOOK_PREVIEW__"]; + }); + } + const { storiesWithSteps, errors } = await page.evaluate<{ storiesWithSteps: Story[]; errors: string[];