UNPKG

@storybook/addon-themes

Version:

Storybook Themes addon: Switch between themes from the toolbar

33 lines (29 loc) 1.43 kB
import CJS_COMPAT_NODE_URL_lys08foovg from 'node:url'; import CJS_COMPAT_NODE_PATH_lys08foovg from 'node:path'; import CJS_COMPAT_NODE_MODULE_lys08foovg from "node:module"; var __filename = CJS_COMPAT_NODE_URL_lys08foovg.fileURLToPath(import.meta.url); var __dirname = CJS_COMPAT_NODE_PATH_lys08foovg.dirname(__filename); var require = CJS_COMPAT_NODE_MODULE_lys08foovg.createRequire(import.meta.url); // ------------------------------------------------------------ // end of CJS compatibility banner, injected by Storybook's esbuild configuration // ------------------------------------------------------------ // src/postinstall.ts import { PackageManagerName } from "storybook/internal/common"; import { spawnSync } from "child_process"; var PACKAGE_MANAGER_TO_COMMAND = { [PackageManagerName.NPM]: "npx", [PackageManagerName.PNPM]: "pnpm dlx", [PackageManagerName.YARN1]: "npx", [PackageManagerName.YARN2]: "yarn dlx", [PackageManagerName.BUN]: "bunx" }, selectPackageManagerCommand = (packageManager) => PACKAGE_MANAGER_TO_COMMAND[packageManager]; async function postinstall({ packageManager = PackageManagerName.NPM }) { let commandString = selectPackageManagerCommand(packageManager), [command, ...commandArgs] = commandString.split(" "); spawnSync(command, [...commandArgs, "@storybook/auto-config", "themes"], { stdio: "inherit", cwd: process.cwd() }); } export { postinstall as default };