diff --git a/package.json b/package.json index 85fa378a..5acd8eff 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,13 @@ "main": "dist/cjs/index.js", "module": "dist/esm/index.js", "types": "dist/ts/index.d.ts", + "exports": { + "./is-test-runner": { + "import": "./src/is-test-runner/is-test-runner.mjs", + "browser": "./src/is-test-runner/is-test-runner.mjs", + "require": "./src/is-test-runner/is-test-runner.cjs" + } + }, "files": [ "bin", "dist/**/*", diff --git a/src/is-test-runner/is-test-runner.cjs b/src/is-test-runner/is-test-runner.cjs new file mode 100644 index 00000000..7212fa3e --- /dev/null +++ b/src/is-test-runner/is-test-runner.cjs @@ -0,0 +1,6 @@ +/** + * Returns whether the story is rendering inside of the Storybook test runner. + */ +export function isTestRunner() { + return process?.env?.STORYBOOK_TEST_RUNNER === 'true'; +} diff --git a/src/is-test-runner.ts b/src/is-test-runner/is-test-runner.mjs similarity index 58% rename from src/is-test-runner.ts rename to src/is-test-runner/is-test-runner.mjs index eb546e12..1907dec4 100644 --- a/src/is-test-runner.ts +++ b/src/is-test-runner/is-test-runner.mjs @@ -2,12 +2,9 @@ * Returns whether the story is rendering inside of the Storybook test runner. */ export function isTestRunner() { - const isTestRunnerInNode = process?.env?.STORYBOOK_TEST_RUNNER === 'true'; - const isTestRunnerInBrowser = !!( + return!!( typeof window !== 'undefined' && window && window.navigator.userAgent.match(/StorybookTestRunner/) ); - - return isTestRunnerInNode || isTestRunnerInBrowser; }