UNPKG

@storybook/addon-styling-webpack

Version:

A base addon for configuring popular styling tools in Webpack

45 lines (42 loc) 1.24 kB
import { spawn } from 'child_process'; // src/postinstall.ts var spawnAsync = (cmd, args, options) => { return new Promise((resolve, reject) => { const process2 = spawn(cmd, args, options); process2.on("close", (code) => { if (code === 0) { resolve(); } else { reject(new Error(`Process exited with code ${code}`)); } }); process2.on("error", (err) => { reject(err); }); }); }; var PACKAGE_MANAGER_TO_COMMAND = { npm: ["npx"], pnpm: ["pnpm", "dlx"], yarn1: ["npx"], yarn2: ["yarn", "dlx"] }; var selectPackageManagerCommand = (packageManager) => PACKAGE_MANAGER_TO_COMMAND[packageManager]; var spawnPackageManagerScript = async (packageManager, args) => { const [command, ...baseArgs] = selectPackageManagerCommand(packageManager); await spawnAsync(command, [...baseArgs, ...args], { stdio: "inherit", cwd: process.cwd(), shell: true }); }; var automigrate = async ({ packageManager = "npm" }) => { try { await spawnPackageManagerScript(packageManager, ["@storybook/auto-config", "styling"]); } catch (e) { console.error(e); process.exit(1); } }; var postinstall_default = automigrate; export { postinstall_default as default };