@storybook/cli 7.0.0-rc.1 → 7.0.0-rc.3
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.
- package/dist/{chunk-QSZMPUNV.mjs → chunk-4G5MX7TM.mjs} +1 -1
- package/dist/generate.js +3 -3
- package/dist/generate.mjs +3 -3
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/package.json +10 -10
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var __require=(x=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(x,{get:(a,b)=>(typeof require<"u"?require:a)[b]}):x)(function(x){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+x+'" is not supported')});import deprecate from"util-deprecate";var useNpmWarning=deprecate(()=>{},"`--use-npm` is deprecated and will be removed in Storybook 8.0. \nPlease use the `--package-manager=npm` option instead.\nRead more at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#cli-option---use-npm-deprecated");import chalk2 from"chalk";import{gt,satisfies as satisfies2}from"semver";import{sync as spawnSync}from"cross-spawn";import path2 from"path";import fs2 from"fs";import path,{join as join2}from"path";import fs from"fs";import fse from"fs-extra";import chalk from"chalk";import{satisfies}from"semver";import stripJsonComments from"strip-json-comments";import{dirname,join}from"path";import downloadTarball from"@ndelangen/get-tarball";import getNpmTarballUrl from"get-npm-tarball-url";import*as tempy from"tempy";import{minVersion,validRange}from"semver";function ltMajor(versionRange,major){return validRange(versionRange)&&minVersion(versionRange).major<major}function gtMajor(versionRange,major){return validRange(versionRange)&&minVersion(versionRange).major>major}function eqMajor(versionRange,major){return validRange(versionRange)&&minVersion(versionRange).major===major}var externalFrameworks=[{name:"qwik",packageName:"storybook-framework-qwik"},{name:"solid",frameworks:["storybook-solidjs-vite"],renderer:"storybook-solidjs"}],SUPPORTED_RENDERERS=["react","react-native","vue","vue3","angular","mithril","riot","ember","marionette","marko","preact","svelte","qwik","rax","aurelia","solid"],ProjectType=(ProjectType2=>(ProjectType2.UNDETECTED="UNDETECTED",ProjectType2.UNSUPPORTED="UNSUPPORTED",ProjectType2.REACT_SCRIPTS="REACT_SCRIPTS",ProjectType2.REACT="REACT",ProjectType2.REACT_NATIVE="REACT_NATIVE",ProjectType2.REACT_PROJECT="REACT_PROJECT",ProjectType2.WEBPACK_REACT="WEBPACK_REACT",ProjectType2.NEXTJS="NEXTJS",ProjectType2.VUE="VUE",ProjectType2.VUE3="VUE3",ProjectType2.SFC_VUE="SFC_VUE",ProjectType2.ANGULAR="ANGULAR",ProjectType2.EMBER="EMBER",ProjectType2.WEB_COMPONENTS="WEB_COMPONENTS",ProjectType2.MITHRIL="MITHRIL",ProjectType2.MARIONETTE="MARIONETTE",ProjectType2.MARKO="MARKO",ProjectType2.HTML="HTML",ProjectType2.QWIK="QWIK",ProjectType2.RIOT="RIOT",ProjectType2.PREACT="PREACT",ProjectType2.SVELTE="SVELTE",ProjectType2.SVELTEKIT="SVELTEKIT",ProjectType2.RAX="RAX",ProjectType2.AURELIA="AURELIA",ProjectType2.SERVER="SERVER",ProjectType2.NX="NX",ProjectType2.SOLID="SOLID",ProjectType2))(ProjectType||{});var supportedTemplates=[{preset:"SFC_VUE",dependencies:{"vue-loader":versionRange=>ltMajor(versionRange,16),vuetify:versionRange=>ltMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"VUE",dependencies:{vue:versionRange=>ltMajor(versionRange,3),nuxt:versionRange=>ltMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"VUE3",dependencies:{vue:versionRange=>versionRange==="next"||eqMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"EMBER",dependencies:["ember-cli"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"NEXTJS",dependencies:{next:versionRange=>eqMajor(versionRange,9)||gtMajor(versionRange,9)},matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"QWIK",dependencies:["@builder.io/qwik"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"REACT_PROJECT",peerDependencies:["react"],matcherFunction:({peerDependencies})=>peerDependencies.every(Boolean)},{preset:"REACT_NATIVE",dependencies:["react-native","react-native-scripts"],matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"REACT_SCRIPTS",files:["/node_modules/.bin/react-scripts"],dependencies:["react-scripts"],matcherFunction:({dependencies,files})=>dependencies.every(Boolean)||files.every(Boolean)},{preset:"ANGULAR",dependencies:["@angular/core"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"WEB_COMPONENTS",dependencies:["lit-element","lit-html","lit"],matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"MITHRIL",dependencies:["mithril"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"MARIONETTE",dependencies:["backbone.marionette"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"MARKO",dependencies:["marko"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"RIOT",dependencies:["riot"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"PREACT",dependencies:["preact"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"SVELTEKIT",dependencies:["@sveltejs/kit"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"SVELTE",dependencies:["svelte"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"RAX",dependencies:["rax"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"AURELIA",dependencies:["aurelia-bootstrapper"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"SOLID",dependencies:["solid-js"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"WEBPACK_REACT",dependencies:["react","webpack"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"REACT",dependencies:["react"],matcherFunction:({dependencies})=>dependencies.every(Boolean)}],unsupportedTemplate={preset:"UNSUPPORTED",dependencies:{nuxt:versionRange=>eqMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},notInstallableProjectTypes=["UNDETECTED","UNSUPPORTED"],installableProjectTypes=Object.values(ProjectType).filter(type=>!notInstallableProjectTypes.includes(type)).map(type=>type.toLowerCase());var versions_default={"@storybook/addon-a11y":"7.0.0-rc.1","@storybook/addon-actions":"7.0.0-rc.1","@storybook/addon-backgrounds":"7.0.0-rc.1","@storybook/addon-controls":"7.0.0-rc.1","@storybook/addon-docs":"7.0.0-rc.1","@storybook/addon-essentials":"7.0.0-rc.1","@storybook/addon-highlight":"7.0.0-rc.1","@storybook/addon-interactions":"7.0.0-rc.1","@storybook/addon-jest":"7.0.0-rc.1","@storybook/addon-links":"7.0.0-rc.1","@storybook/addon-mdx-gfm":"7.0.0-rc.1","@storybook/addon-measure":"7.0.0-rc.1","@storybook/addon-outline":"7.0.0-rc.1","@storybook/addon-storyshots":"7.0.0-rc.1","@storybook/addon-storyshots-puppeteer":"7.0.0-rc.1","@storybook/addon-storysource":"7.0.0-rc.1","@storybook/addon-toolbars":"7.0.0-rc.1","@storybook/addon-viewport":"7.0.0-rc.1","@storybook/addons":"7.0.0-rc.1","@storybook/angular":"7.0.0-rc.1","@storybook/api":"7.0.0-rc.1","@storybook/blocks":"7.0.0-rc.1","@storybook/builder-manager":"7.0.0-rc.1","@storybook/builder-vite":"7.0.0-rc.1","@storybook/builder-webpack5":"7.0.0-rc.1","@storybook/channel-postmessage":"7.0.0-rc.1","@storybook/channel-websocket":"7.0.0-rc.1","@storybook/channels":"7.0.0-rc.1","@storybook/cli":"7.0.0-rc.1","@storybook/client-api":"7.0.0-rc.1","@storybook/client-logger":"7.0.0-rc.1","@storybook/codemod":"7.0.0-rc.1","@storybook/components":"7.0.0-rc.1","@storybook/core-client":"7.0.0-rc.1","@storybook/core-common":"7.0.0-rc.1","@storybook/core-events":"7.0.0-rc.1","@storybook/core-server":"7.0.0-rc.1","@storybook/core-webpack":"7.0.0-rc.1","@storybook/csf-plugin":"7.0.0-rc.1","@storybook/csf-tools":"7.0.0-rc.1","@storybook/docs-tools":"7.0.0-rc.1","@storybook/ember":"7.0.0-rc.1","@storybook/html":"7.0.0-rc.1","@storybook/html-vite":"7.0.0-rc.1","@storybook/html-webpack5":"7.0.0-rc.1","@storybook/instrumenter":"7.0.0-rc.1","@storybook/manager":"7.0.0-rc.1","@storybook/manager-api":"7.0.0-rc.1","@storybook/nextjs":"7.0.0-rc.1","@storybook/node-logger":"7.0.0-rc.1","@storybook/postinstall":"7.0.0-rc.1","@storybook/preact":"7.0.0-rc.1","@storybook/preact-vite":"7.0.0-rc.1","@storybook/preact-webpack5":"7.0.0-rc.1","@storybook/preset-create-react-app":"7.0.0-rc.1","@storybook/preset-html-webpack":"7.0.0-rc.1","@storybook/preset-preact-webpack":"7.0.0-rc.1","@storybook/preset-react-webpack":"7.0.0-rc.1","@storybook/preset-server-webpack":"7.0.0-rc.1","@storybook/preset-svelte-webpack":"7.0.0-rc.1","@storybook/preset-vue-webpack":"7.0.0-rc.1","@storybook/preset-vue3-webpack":"7.0.0-rc.1","@storybook/preset-web-components-webpack":"7.0.0-rc.1","@storybook/preview":"7.0.0-rc.1","@storybook/preview-api":"7.0.0-rc.1","@storybook/preview-web":"7.0.0-rc.1","@storybook/react":"7.0.0-rc.1","@storybook/react-dom-shim":"7.0.0-rc.1","@storybook/react-vite":"7.0.0-rc.1","@storybook/react-webpack5":"7.0.0-rc.1","@storybook/router":"7.0.0-rc.1","@storybook/server":"7.0.0-rc.1","@storybook/server-webpack5":"7.0.0-rc.1","@storybook/source-loader":"7.0.0-rc.1","@storybook/store":"7.0.0-rc.1","@storybook/svelte":"7.0.0-rc.1","@storybook/svelte-vite":"7.0.0-rc.1","@storybook/svelte-webpack5":"7.0.0-rc.1","@storybook/sveltekit":"7.0.0-rc.1","@storybook/telemetry":"7.0.0-rc.1","@storybook/theming":"7.0.0-rc.1","@storybook/types":"7.0.0-rc.1","@storybook/vue":"7.0.0-rc.1","@storybook/vue-vite":"7.0.0-rc.1","@storybook/vue-webpack5":"7.0.0-rc.1","@storybook/vue3":"7.0.0-rc.1","@storybook/vue3-vite":"7.0.0-rc.1","@storybook/vue3-webpack5":"7.0.0-rc.1","@storybook/web-components":"7.0.0-rc.1","@storybook/web-components-vite":"7.0.0-rc.1","@storybook/web-components-webpack5":"7.0.0-rc.1",sb:"7.0.0-rc.1",storybook:"7.0.0-rc.1"};function getCliDir(){return dirname(__require.resolve("@storybook/cli/package.json"))}var resolveUsingBranchInstall=async(packageManager,request)=>{let tempDirectory=tempy.directory(),version=versions_default[request]||await packageManager.latestVersion(request),url=getNpmTarballUrl(request,version,{registry:packageManager.getRegistryURL()});return await downloadTarball({url,dir:tempDirectory}),join(tempDirectory,"package")};async function getRendererDir(packageManager,renderer){let externalFramework=externalFrameworks.find(framework=>framework.name===renderer),frameworkPackageName=externalFramework?.renderer||externalFramework?.packageName||`@storybook/${renderer}`,packageJsonPath=`${frameworkPackageName}/package.json`,errors=[];try{return dirname(__require.resolve(packageJsonPath,{paths:[process.cwd()]}))}catch(e){errors.push(e)}try{return await resolveUsingBranchInstall(packageManager,frameworkPackageName)}catch(e){errors.push(e)}throw new Error(`Cannot find ${packageJsonPath}, ${errors.map(e=>e.stack).join(`
|
|
1
|
+
var __require=(x=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(x,{get:(a,b)=>(typeof require<"u"?require:a)[b]}):x)(function(x){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+x+'" is not supported')});import deprecate from"util-deprecate";var useNpmWarning=deprecate(()=>{},"`--use-npm` is deprecated and will be removed in Storybook 8.0. \nPlease use the `--package-manager=npm` option instead.\nRead more at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#cli-option---use-npm-deprecated");import chalk2 from"chalk";import{gt,satisfies as satisfies2}from"semver";import{sync as spawnSync}from"cross-spawn";import path2 from"path";import fs2 from"fs";import path,{join as join2}from"path";import fs from"fs";import fse from"fs-extra";import chalk from"chalk";import{satisfies}from"semver";import stripJsonComments from"strip-json-comments";import{dirname,join}from"path";import downloadTarball from"@ndelangen/get-tarball";import getNpmTarballUrl from"get-npm-tarball-url";import*as tempy from"tempy";import{minVersion,validRange}from"semver";function ltMajor(versionRange,major){return validRange(versionRange)&&minVersion(versionRange).major<major}function gtMajor(versionRange,major){return validRange(versionRange)&&minVersion(versionRange).major>major}function eqMajor(versionRange,major){return validRange(versionRange)&&minVersion(versionRange).major===major}var externalFrameworks=[{name:"qwik",packageName:"storybook-framework-qwik"},{name:"solid",frameworks:["storybook-solidjs-vite"],renderer:"storybook-solidjs"}],SUPPORTED_RENDERERS=["react","react-native","vue","vue3","angular","mithril","riot","ember","marionette","marko","preact","svelte","qwik","rax","aurelia","solid"],ProjectType=(ProjectType2=>(ProjectType2.UNDETECTED="UNDETECTED",ProjectType2.UNSUPPORTED="UNSUPPORTED",ProjectType2.REACT_SCRIPTS="REACT_SCRIPTS",ProjectType2.REACT="REACT",ProjectType2.REACT_NATIVE="REACT_NATIVE",ProjectType2.REACT_PROJECT="REACT_PROJECT",ProjectType2.WEBPACK_REACT="WEBPACK_REACT",ProjectType2.NEXTJS="NEXTJS",ProjectType2.VUE="VUE",ProjectType2.VUE3="VUE3",ProjectType2.SFC_VUE="SFC_VUE",ProjectType2.ANGULAR="ANGULAR",ProjectType2.EMBER="EMBER",ProjectType2.WEB_COMPONENTS="WEB_COMPONENTS",ProjectType2.MITHRIL="MITHRIL",ProjectType2.MARIONETTE="MARIONETTE",ProjectType2.MARKO="MARKO",ProjectType2.HTML="HTML",ProjectType2.QWIK="QWIK",ProjectType2.RIOT="RIOT",ProjectType2.PREACT="PREACT",ProjectType2.SVELTE="SVELTE",ProjectType2.SVELTEKIT="SVELTEKIT",ProjectType2.RAX="RAX",ProjectType2.AURELIA="AURELIA",ProjectType2.SERVER="SERVER",ProjectType2.NX="NX",ProjectType2.SOLID="SOLID",ProjectType2))(ProjectType||{});var supportedTemplates=[{preset:"SFC_VUE",dependencies:{"vue-loader":versionRange=>ltMajor(versionRange,16),vuetify:versionRange=>ltMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"VUE",dependencies:{vue:versionRange=>ltMajor(versionRange,3),nuxt:versionRange=>ltMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"VUE3",dependencies:{vue:versionRange=>versionRange==="next"||eqMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"EMBER",dependencies:["ember-cli"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"NEXTJS",dependencies:{next:versionRange=>eqMajor(versionRange,9)||gtMajor(versionRange,9)},matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"QWIK",dependencies:["@builder.io/qwik"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"REACT_PROJECT",peerDependencies:["react"],matcherFunction:({peerDependencies})=>peerDependencies.every(Boolean)},{preset:"REACT_NATIVE",dependencies:["react-native","react-native-scripts"],matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"REACT_SCRIPTS",files:["/node_modules/.bin/react-scripts"],dependencies:["react-scripts"],matcherFunction:({dependencies,files})=>dependencies.every(Boolean)||files.every(Boolean)},{preset:"ANGULAR",dependencies:["@angular/core"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"WEB_COMPONENTS",dependencies:["lit-element","lit-html","lit"],matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"MITHRIL",dependencies:["mithril"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"MARIONETTE",dependencies:["backbone.marionette"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"MARKO",dependencies:["marko"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"RIOT",dependencies:["riot"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"PREACT",dependencies:["preact"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"SVELTEKIT",dependencies:["@sveltejs/kit"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"SVELTE",dependencies:["svelte"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"RAX",dependencies:["rax"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"AURELIA",dependencies:["aurelia-bootstrapper"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"SOLID",dependencies:["solid-js"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"WEBPACK_REACT",dependencies:["react","webpack"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"REACT",dependencies:["react"],matcherFunction:({dependencies})=>dependencies.every(Boolean)}],unsupportedTemplate={preset:"UNSUPPORTED",dependencies:{nuxt:versionRange=>eqMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},notInstallableProjectTypes=["UNDETECTED","UNSUPPORTED"],installableProjectTypes=Object.values(ProjectType).filter(type=>!notInstallableProjectTypes.includes(type)).map(type=>type.toLowerCase());var versions_default={"@storybook/addon-a11y":"7.0.0-rc.3","@storybook/addon-actions":"7.0.0-rc.3","@storybook/addon-backgrounds":"7.0.0-rc.3","@storybook/addon-controls":"7.0.0-rc.3","@storybook/addon-docs":"7.0.0-rc.3","@storybook/addon-essentials":"7.0.0-rc.3","@storybook/addon-highlight":"7.0.0-rc.3","@storybook/addon-interactions":"7.0.0-rc.3","@storybook/addon-jest":"7.0.0-rc.3","@storybook/addon-links":"7.0.0-rc.3","@storybook/addon-mdx-gfm":"7.0.0-rc.3","@storybook/addon-measure":"7.0.0-rc.3","@storybook/addon-outline":"7.0.0-rc.3","@storybook/addon-storyshots":"7.0.0-rc.3","@storybook/addon-storyshots-puppeteer":"7.0.0-rc.3","@storybook/addon-storysource":"7.0.0-rc.3","@storybook/addon-toolbars":"7.0.0-rc.3","@storybook/addon-viewport":"7.0.0-rc.3","@storybook/addons":"7.0.0-rc.3","@storybook/angular":"7.0.0-rc.3","@storybook/api":"7.0.0-rc.3","@storybook/blocks":"7.0.0-rc.3","@storybook/builder-manager":"7.0.0-rc.3","@storybook/builder-vite":"7.0.0-rc.3","@storybook/builder-webpack5":"7.0.0-rc.3","@storybook/channel-postmessage":"7.0.0-rc.3","@storybook/channel-websocket":"7.0.0-rc.3","@storybook/channels":"7.0.0-rc.3","@storybook/cli":"7.0.0-rc.3","@storybook/client-api":"7.0.0-rc.3","@storybook/client-logger":"7.0.0-rc.3","@storybook/codemod":"7.0.0-rc.3","@storybook/components":"7.0.0-rc.3","@storybook/core-client":"7.0.0-rc.3","@storybook/core-common":"7.0.0-rc.3","@storybook/core-events":"7.0.0-rc.3","@storybook/core-server":"7.0.0-rc.3","@storybook/core-webpack":"7.0.0-rc.3","@storybook/csf-plugin":"7.0.0-rc.3","@storybook/csf-tools":"7.0.0-rc.3","@storybook/docs-tools":"7.0.0-rc.3","@storybook/ember":"7.0.0-rc.3","@storybook/html":"7.0.0-rc.3","@storybook/html-vite":"7.0.0-rc.3","@storybook/html-webpack5":"7.0.0-rc.3","@storybook/instrumenter":"7.0.0-rc.3","@storybook/manager":"7.0.0-rc.3","@storybook/manager-api":"7.0.0-rc.3","@storybook/nextjs":"7.0.0-rc.3","@storybook/node-logger":"7.0.0-rc.3","@storybook/postinstall":"7.0.0-rc.3","@storybook/preact":"7.0.0-rc.3","@storybook/preact-vite":"7.0.0-rc.3","@storybook/preact-webpack5":"7.0.0-rc.3","@storybook/preset-create-react-app":"7.0.0-rc.3","@storybook/preset-html-webpack":"7.0.0-rc.3","@storybook/preset-preact-webpack":"7.0.0-rc.3","@storybook/preset-react-webpack":"7.0.0-rc.3","@storybook/preset-server-webpack":"7.0.0-rc.3","@storybook/preset-svelte-webpack":"7.0.0-rc.3","@storybook/preset-vue-webpack":"7.0.0-rc.3","@storybook/preset-vue3-webpack":"7.0.0-rc.3","@storybook/preset-web-components-webpack":"7.0.0-rc.3","@storybook/preview":"7.0.0-rc.3","@storybook/preview-api":"7.0.0-rc.3","@storybook/preview-web":"7.0.0-rc.3","@storybook/react":"7.0.0-rc.3","@storybook/react-dom-shim":"7.0.0-rc.3","@storybook/react-vite":"7.0.0-rc.3","@storybook/react-webpack5":"7.0.0-rc.3","@storybook/router":"7.0.0-rc.3","@storybook/server":"7.0.0-rc.3","@storybook/server-webpack5":"7.0.0-rc.3","@storybook/source-loader":"7.0.0-rc.3","@storybook/store":"7.0.0-rc.3","@storybook/svelte":"7.0.0-rc.3","@storybook/svelte-vite":"7.0.0-rc.3","@storybook/svelte-webpack5":"7.0.0-rc.3","@storybook/sveltekit":"7.0.0-rc.3","@storybook/telemetry":"7.0.0-rc.3","@storybook/theming":"7.0.0-rc.3","@storybook/types":"7.0.0-rc.3","@storybook/vue":"7.0.0-rc.3","@storybook/vue-vite":"7.0.0-rc.3","@storybook/vue-webpack5":"7.0.0-rc.3","@storybook/vue3":"7.0.0-rc.3","@storybook/vue3-vite":"7.0.0-rc.3","@storybook/vue3-webpack5":"7.0.0-rc.3","@storybook/web-components":"7.0.0-rc.3","@storybook/web-components-vite":"7.0.0-rc.3","@storybook/web-components-webpack5":"7.0.0-rc.3",sb:"7.0.0-rc.3",storybook:"7.0.0-rc.3"};function getCliDir(){return dirname(__require.resolve("@storybook/cli/package.json"))}var resolveUsingBranchInstall=async(packageManager,request)=>{let tempDirectory=tempy.directory(),version=versions_default[request]||await packageManager.latestVersion(request),url=getNpmTarballUrl(request,version,{registry:packageManager.getRegistryURL()});return await downloadTarball({url,dir:tempDirectory}),join(tempDirectory,"package")};async function getRendererDir(packageManager,renderer){let externalFramework=externalFrameworks.find(framework=>framework.name===renderer),frameworkPackageName=externalFramework?.renderer||externalFramework?.packageName||`@storybook/${renderer}`,packageJsonPath=`${frameworkPackageName}/package.json`,errors=[];try{return dirname(__require.resolve(packageJsonPath,{paths:[process.cwd()]}))}catch(e){errors.push(e)}try{return await resolveUsingBranchInstall(packageManager,frameworkPackageName)}catch(e){errors.push(e)}throw new Error(`Cannot find ${packageJsonPath}, ${errors.map(e=>e.stack).join(`
|
|
2
2
|
|
|
3
3
|
`)}`)}var logger=console;function getBowerJson(){let bowerJsonPath=path.resolve("bower.json");if(!fs.existsSync(bowerJsonPath))return!1;let jsonContent=fs.readFileSync(bowerJsonPath,"utf8");return JSON.parse(jsonContent)}function readFileAsJson(jsonPath,allowComments){let filePath=path.resolve(jsonPath);if(!fs.existsSync(filePath))return!1;let fileContent=fs.readFileSync(filePath,"utf8"),jsonContent=allowComments?stripJsonComments(fileContent):fileContent;try{return JSON.parse(jsonContent)}catch(e){throw logger.error(chalk.red(`Invalid json in file: ${filePath}`)),e}}var writeFileAsJson=(jsonPath,content)=>{let filePath=path.resolve(jsonPath);return fs.existsSync(filePath)?(fs.writeFileSync(filePath,`${JSON.stringify(content,null,2)}
|
|
4
4
|
`),!0):!1},commandLog=message=>(process.stdout.write(chalk.cyan(" \u2022 ")+message),(errorMessage,errorInfo)=>{if(errorMessage){if(process.stdout.write(`. ${chalk.red("\u2716")}
|
package/dist/generate.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod));var import_commander=__toESM(require("commander")),import_path17=__toESM(require("path")),import_chalk28=__toESM(require("chalk")),import_envinfo=__toESM(require("envinfo")),import_leven=__toESM(require("leven")),import_read_pkg_up3=require("read-pkg-up"),import_node_logger7=require("@storybook/node-logger");var import_chalk25=__toESM(require("chalk")),import_prompts6=__toESM(require("prompts")),import_telemetry=require("@storybook/telemetry"),import_core_server=require("@storybook/core-server");var import_semver=require("semver");function ltMajor(versionRange,major){return(0,import_semver.validRange)(versionRange)&&(0,import_semver.minVersion)(versionRange).major<major}function gtMajor(versionRange,major){return(0,import_semver.validRange)(versionRange)&&(0,import_semver.minVersion)(versionRange).major>major}function eqMajor(versionRange,major){return(0,import_semver.validRange)(versionRange)&&(0,import_semver.minVersion)(versionRange).major===major}var externalFrameworks=[{name:"qwik",packageName:"storybook-framework-qwik"},{name:"solid",frameworks:["storybook-solidjs-vite"],renderer:"storybook-solidjs"}],SUPPORTED_RENDERERS=["react","react-native","vue","vue3","angular","mithril","riot","ember","marionette","marko","preact","svelte","qwik","rax","aurelia","solid"],ProjectType=(ProjectType2=>(ProjectType2.UNDETECTED="UNDETECTED",ProjectType2.UNSUPPORTED="UNSUPPORTED",ProjectType2.REACT_SCRIPTS="REACT_SCRIPTS",ProjectType2.REACT="REACT",ProjectType2.REACT_NATIVE="REACT_NATIVE",ProjectType2.REACT_PROJECT="REACT_PROJECT",ProjectType2.WEBPACK_REACT="WEBPACK_REACT",ProjectType2.NEXTJS="NEXTJS",ProjectType2.VUE="VUE",ProjectType2.VUE3="VUE3",ProjectType2.SFC_VUE="SFC_VUE",ProjectType2.ANGULAR="ANGULAR",ProjectType2.EMBER="EMBER",ProjectType2.WEB_COMPONENTS="WEB_COMPONENTS",ProjectType2.MITHRIL="MITHRIL",ProjectType2.MARIONETTE="MARIONETTE",ProjectType2.MARKO="MARKO",ProjectType2.HTML="HTML",ProjectType2.QWIK="QWIK",ProjectType2.RIOT="RIOT",ProjectType2.PREACT="PREACT",ProjectType2.SVELTE="SVELTE",ProjectType2.SVELTEKIT="SVELTEKIT",ProjectType2.RAX="RAX",ProjectType2.AURELIA="AURELIA",ProjectType2.SERVER="SERVER",ProjectType2.NX="NX",ProjectType2.SOLID="SOLID",ProjectType2))(ProjectType||{});var supportedTemplates=[{preset:"SFC_VUE",dependencies:{"vue-loader":versionRange=>ltMajor(versionRange,16),vuetify:versionRange=>ltMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"VUE",dependencies:{vue:versionRange=>ltMajor(versionRange,3),nuxt:versionRange=>ltMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"VUE3",dependencies:{vue:versionRange=>versionRange==="next"||eqMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"EMBER",dependencies:["ember-cli"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"NEXTJS",dependencies:{next:versionRange=>eqMajor(versionRange,9)||gtMajor(versionRange,9)},matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"QWIK",dependencies:["@builder.io/qwik"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"REACT_PROJECT",peerDependencies:["react"],matcherFunction:({peerDependencies})=>peerDependencies.every(Boolean)},{preset:"REACT_NATIVE",dependencies:["react-native","react-native-scripts"],matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"REACT_SCRIPTS",files:["/node_modules/.bin/react-scripts"],dependencies:["react-scripts"],matcherFunction:({dependencies,files})=>dependencies.every(Boolean)||files.every(Boolean)},{preset:"ANGULAR",dependencies:["@angular/core"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"WEB_COMPONENTS",dependencies:["lit-element","lit-html","lit"],matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"MITHRIL",dependencies:["mithril"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"MARIONETTE",dependencies:["backbone.marionette"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"MARKO",dependencies:["marko"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"RIOT",dependencies:["riot"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"PREACT",dependencies:["preact"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"SVELTEKIT",dependencies:["@sveltejs/kit"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"SVELTE",dependencies:["svelte"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"RAX",dependencies:["rax"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"AURELIA",dependencies:["aurelia-bootstrapper"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"SOLID",dependencies:["solid-js"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"WEBPACK_REACT",dependencies:["react","webpack"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"REACT",dependencies:["react"],matcherFunction:({dependencies})=>dependencies.every(Boolean)}],unsupportedTemplate={preset:"UNSUPPORTED",dependencies:{nuxt:versionRange=>eqMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},notInstallableProjectTypes=["UNDETECTED","UNSUPPORTED"],installableProjectTypes=Object.values(ProjectType).filter(type=>!notInstallableProjectTypes.includes(type)).map(type=>type.toLowerCase());var import_fs2=__toESM(require("fs")),import_find_up=__toESM(require("find-up")),import_semver3=__toESM(require("semver")),import_node_logger=require("@storybook/node-logger"),import_fs_extra2=require("fs-extra"),import_path3=require("path");var import_path2=__toESM(require("path")),import_fs=__toESM(require("fs")),import_fs_extra=__toESM(require("fs-extra")),import_chalk=__toESM(require("chalk")),import_semver2=require("semver"),import_strip_json_comments=__toESM(require("strip-json-comments"));var import_path=require("path"),import_get_tarball=__toESM(require("@ndelangen/get-tarball")),import_get_npm_tarball_url=__toESM(require("get-npm-tarball-url")),tempy=__toESM(require("tempy"));var versions_default={"@storybook/addon-a11y":"7.0.0-rc.1","@storybook/addon-actions":"7.0.0-rc.1","@storybook/addon-backgrounds":"7.0.0-rc.1","@storybook/addon-controls":"7.0.0-rc.1","@storybook/addon-docs":"7.0.0-rc.1","@storybook/addon-essentials":"7.0.0-rc.1","@storybook/addon-highlight":"7.0.0-rc.1","@storybook/addon-interactions":"7.0.0-rc.1","@storybook/addon-jest":"7.0.0-rc.1","@storybook/addon-links":"7.0.0-rc.1","@storybook/addon-mdx-gfm":"7.0.0-rc.1","@storybook/addon-measure":"7.0.0-rc.1","@storybook/addon-outline":"7.0.0-rc.1","@storybook/addon-storyshots":"7.0.0-rc.1","@storybook/addon-storyshots-puppeteer":"7.0.0-rc.1","@storybook/addon-storysource":"7.0.0-rc.1","@storybook/addon-toolbars":"7.0.0-rc.1","@storybook/addon-viewport":"7.0.0-rc.1","@storybook/addons":"7.0.0-rc.1","@storybook/angular":"7.0.0-rc.1","@storybook/api":"7.0.0-rc.1","@storybook/blocks":"7.0.0-rc.1","@storybook/builder-manager":"7.0.0-rc.1","@storybook/builder-vite":"7.0.0-rc.1","@storybook/builder-webpack5":"7.0.0-rc.1","@storybook/channel-postmessage":"7.0.0-rc.1","@storybook/channel-websocket":"7.0.0-rc.1","@storybook/channels":"7.0.0-rc.1","@storybook/cli":"7.0.0-rc.1","@storybook/client-api":"7.0.0-rc.1","@storybook/client-logger":"7.0.0-rc.1","@storybook/codemod":"7.0.0-rc.1","@storybook/components":"7.0.0-rc.1","@storybook/core-client":"7.0.0-rc.1","@storybook/core-common":"7.0.0-rc.1","@storybook/core-events":"7.0.0-rc.1","@storybook/core-server":"7.0.0-rc.1","@storybook/core-webpack":"7.0.0-rc.1","@storybook/csf-plugin":"7.0.0-rc.1","@storybook/csf-tools":"7.0.0-rc.1","@storybook/docs-tools":"7.0.0-rc.1","@storybook/ember":"7.0.0-rc.1","@storybook/html":"7.0.0-rc.1","@storybook/html-vite":"7.0.0-rc.1","@storybook/html-webpack5":"7.0.0-rc.1","@storybook/instrumenter":"7.0.0-rc.1","@storybook/manager":"7.0.0-rc.1","@storybook/manager-api":"7.0.0-rc.1","@storybook/nextjs":"7.0.0-rc.1","@storybook/node-logger":"7.0.0-rc.1","@storybook/postinstall":"7.0.0-rc.1","@storybook/preact":"7.0.0-rc.1","@storybook/preact-vite":"7.0.0-rc.1","@storybook/preact-webpack5":"7.0.0-rc.1","@storybook/preset-create-react-app":"7.0.0-rc.1","@storybook/preset-html-webpack":"7.0.0-rc.1","@storybook/preset-preact-webpack":"7.0.0-rc.1","@storybook/preset-react-webpack":"7.0.0-rc.1","@storybook/preset-server-webpack":"7.0.0-rc.1","@storybook/preset-svelte-webpack":"7.0.0-rc.1","@storybook/preset-vue-webpack":"7.0.0-rc.1","@storybook/preset-vue3-webpack":"7.0.0-rc.1","@storybook/preset-web-components-webpack":"7.0.0-rc.1","@storybook/preview":"7.0.0-rc.1","@storybook/preview-api":"7.0.0-rc.1","@storybook/preview-web":"7.0.0-rc.1","@storybook/react":"7.0.0-rc.1","@storybook/react-dom-shim":"7.0.0-rc.1","@storybook/react-vite":"7.0.0-rc.1","@storybook/react-webpack5":"7.0.0-rc.1","@storybook/router":"7.0.0-rc.1","@storybook/server":"7.0.0-rc.1","@storybook/server-webpack5":"7.0.0-rc.1","@storybook/source-loader":"7.0.0-rc.1","@storybook/store":"7.0.0-rc.1","@storybook/svelte":"7.0.0-rc.1","@storybook/svelte-vite":"7.0.0-rc.1","@storybook/svelte-webpack5":"7.0.0-rc.1","@storybook/sveltekit":"7.0.0-rc.1","@storybook/telemetry":"7.0.0-rc.1","@storybook/theming":"7.0.0-rc.1","@storybook/types":"7.0.0-rc.1","@storybook/vue":"7.0.0-rc.1","@storybook/vue-vite":"7.0.0-rc.1","@storybook/vue-webpack5":"7.0.0-rc.1","@storybook/vue3":"7.0.0-rc.1","@storybook/vue3-vite":"7.0.0-rc.1","@storybook/vue3-webpack5":"7.0.0-rc.1","@storybook/web-components":"7.0.0-rc.1","@storybook/web-components-vite":"7.0.0-rc.1","@storybook/web-components-webpack5":"7.0.0-rc.1",sb:"7.0.0-rc.1",storybook:"7.0.0-rc.1"};function getCliDir(){return(0,import_path.dirname)(require.resolve("@storybook/cli/package.json"))}var resolveUsingBranchInstall=async(packageManager,request)=>{let tempDirectory=tempy.directory(),version=versions_default[request]||await packageManager.latestVersion(request),url=(0,import_get_npm_tarball_url.default)(request,version,{registry:packageManager.getRegistryURL()});return await(0,import_get_tarball.default)({url,dir:tempDirectory}),(0,import_path.join)(tempDirectory,"package")};async function getRendererDir(packageManager,renderer){let externalFramework=externalFrameworks.find(framework=>framework.name===renderer),frameworkPackageName=(externalFramework==null?void 0:externalFramework.renderer)||(externalFramework==null?void 0:externalFramework.packageName)||`@storybook/${renderer}`,packageJsonPath=`${frameworkPackageName}/package.json`,errors=[];try{return(0,import_path.dirname)(require.resolve(packageJsonPath,{paths:[process.cwd()]}))}catch(e){errors.push(e)}try{return await resolveUsingBranchInstall(packageManager,frameworkPackageName)}catch(e){errors.push(e)}throw new Error(`Cannot find ${packageJsonPath}, ${errors.map(e=>e.stack).join(`
|
|
1
|
+
var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod));var import_commander=__toESM(require("commander")),import_path17=__toESM(require("path")),import_chalk28=__toESM(require("chalk")),import_envinfo=__toESM(require("envinfo")),import_leven=__toESM(require("leven")),import_read_pkg_up3=require("read-pkg-up"),import_node_logger7=require("@storybook/node-logger");var import_chalk25=__toESM(require("chalk")),import_prompts6=__toESM(require("prompts")),import_telemetry=require("@storybook/telemetry"),import_core_server=require("@storybook/core-server");var import_semver=require("semver");function ltMajor(versionRange,major){return(0,import_semver.validRange)(versionRange)&&(0,import_semver.minVersion)(versionRange).major<major}function gtMajor(versionRange,major){return(0,import_semver.validRange)(versionRange)&&(0,import_semver.minVersion)(versionRange).major>major}function eqMajor(versionRange,major){return(0,import_semver.validRange)(versionRange)&&(0,import_semver.minVersion)(versionRange).major===major}var externalFrameworks=[{name:"qwik",packageName:"storybook-framework-qwik"},{name:"solid",frameworks:["storybook-solidjs-vite"],renderer:"storybook-solidjs"}],SUPPORTED_RENDERERS=["react","react-native","vue","vue3","angular","mithril","riot","ember","marionette","marko","preact","svelte","qwik","rax","aurelia","solid"],ProjectType=(ProjectType2=>(ProjectType2.UNDETECTED="UNDETECTED",ProjectType2.UNSUPPORTED="UNSUPPORTED",ProjectType2.REACT_SCRIPTS="REACT_SCRIPTS",ProjectType2.REACT="REACT",ProjectType2.REACT_NATIVE="REACT_NATIVE",ProjectType2.REACT_PROJECT="REACT_PROJECT",ProjectType2.WEBPACK_REACT="WEBPACK_REACT",ProjectType2.NEXTJS="NEXTJS",ProjectType2.VUE="VUE",ProjectType2.VUE3="VUE3",ProjectType2.SFC_VUE="SFC_VUE",ProjectType2.ANGULAR="ANGULAR",ProjectType2.EMBER="EMBER",ProjectType2.WEB_COMPONENTS="WEB_COMPONENTS",ProjectType2.MITHRIL="MITHRIL",ProjectType2.MARIONETTE="MARIONETTE",ProjectType2.MARKO="MARKO",ProjectType2.HTML="HTML",ProjectType2.QWIK="QWIK",ProjectType2.RIOT="RIOT",ProjectType2.PREACT="PREACT",ProjectType2.SVELTE="SVELTE",ProjectType2.SVELTEKIT="SVELTEKIT",ProjectType2.RAX="RAX",ProjectType2.AURELIA="AURELIA",ProjectType2.SERVER="SERVER",ProjectType2.NX="NX",ProjectType2.SOLID="SOLID",ProjectType2))(ProjectType||{});var supportedTemplates=[{preset:"SFC_VUE",dependencies:{"vue-loader":versionRange=>ltMajor(versionRange,16),vuetify:versionRange=>ltMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"VUE",dependencies:{vue:versionRange=>ltMajor(versionRange,3),nuxt:versionRange=>ltMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"VUE3",dependencies:{vue:versionRange=>versionRange==="next"||eqMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"EMBER",dependencies:["ember-cli"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"NEXTJS",dependencies:{next:versionRange=>eqMajor(versionRange,9)||gtMajor(versionRange,9)},matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"QWIK",dependencies:["@builder.io/qwik"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"REACT_PROJECT",peerDependencies:["react"],matcherFunction:({peerDependencies})=>peerDependencies.every(Boolean)},{preset:"REACT_NATIVE",dependencies:["react-native","react-native-scripts"],matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"REACT_SCRIPTS",files:["/node_modules/.bin/react-scripts"],dependencies:["react-scripts"],matcherFunction:({dependencies,files})=>dependencies.every(Boolean)||files.every(Boolean)},{preset:"ANGULAR",dependencies:["@angular/core"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"WEB_COMPONENTS",dependencies:["lit-element","lit-html","lit"],matcherFunction:({dependencies})=>dependencies.some(Boolean)},{preset:"MITHRIL",dependencies:["mithril"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"MARIONETTE",dependencies:["backbone.marionette"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"MARKO",dependencies:["marko"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"RIOT",dependencies:["riot"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"PREACT",dependencies:["preact"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"SVELTEKIT",dependencies:["@sveltejs/kit"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"SVELTE",dependencies:["svelte"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"RAX",dependencies:["rax"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"AURELIA",dependencies:["aurelia-bootstrapper"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"SOLID",dependencies:["solid-js"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"WEBPACK_REACT",dependencies:["react","webpack"],matcherFunction:({dependencies})=>dependencies.every(Boolean)},{preset:"REACT",dependencies:["react"],matcherFunction:({dependencies})=>dependencies.every(Boolean)}],unsupportedTemplate={preset:"UNSUPPORTED",dependencies:{nuxt:versionRange=>eqMajor(versionRange,3)},matcherFunction:({dependencies})=>dependencies.some(Boolean)},notInstallableProjectTypes=["UNDETECTED","UNSUPPORTED"],installableProjectTypes=Object.values(ProjectType).filter(type=>!notInstallableProjectTypes.includes(type)).map(type=>type.toLowerCase());var import_fs2=__toESM(require("fs")),import_find_up=__toESM(require("find-up")),import_semver3=__toESM(require("semver")),import_node_logger=require("@storybook/node-logger"),import_fs_extra2=require("fs-extra"),import_path3=require("path");var import_path2=__toESM(require("path")),import_fs=__toESM(require("fs")),import_fs_extra=__toESM(require("fs-extra")),import_chalk=__toESM(require("chalk")),import_semver2=require("semver"),import_strip_json_comments=__toESM(require("strip-json-comments"));var import_path=require("path"),import_get_tarball=__toESM(require("@ndelangen/get-tarball")),import_get_npm_tarball_url=__toESM(require("get-npm-tarball-url")),tempy=__toESM(require("tempy"));var versions_default={"@storybook/addon-a11y":"7.0.0-rc.3","@storybook/addon-actions":"7.0.0-rc.3","@storybook/addon-backgrounds":"7.0.0-rc.3","@storybook/addon-controls":"7.0.0-rc.3","@storybook/addon-docs":"7.0.0-rc.3","@storybook/addon-essentials":"7.0.0-rc.3","@storybook/addon-highlight":"7.0.0-rc.3","@storybook/addon-interactions":"7.0.0-rc.3","@storybook/addon-jest":"7.0.0-rc.3","@storybook/addon-links":"7.0.0-rc.3","@storybook/addon-mdx-gfm":"7.0.0-rc.3","@storybook/addon-measure":"7.0.0-rc.3","@storybook/addon-outline":"7.0.0-rc.3","@storybook/addon-storyshots":"7.0.0-rc.3","@storybook/addon-storyshots-puppeteer":"7.0.0-rc.3","@storybook/addon-storysource":"7.0.0-rc.3","@storybook/addon-toolbars":"7.0.0-rc.3","@storybook/addon-viewport":"7.0.0-rc.3","@storybook/addons":"7.0.0-rc.3","@storybook/angular":"7.0.0-rc.3","@storybook/api":"7.0.0-rc.3","@storybook/blocks":"7.0.0-rc.3","@storybook/builder-manager":"7.0.0-rc.3","@storybook/builder-vite":"7.0.0-rc.3","@storybook/builder-webpack5":"7.0.0-rc.3","@storybook/channel-postmessage":"7.0.0-rc.3","@storybook/channel-websocket":"7.0.0-rc.3","@storybook/channels":"7.0.0-rc.3","@storybook/cli":"7.0.0-rc.3","@storybook/client-api":"7.0.0-rc.3","@storybook/client-logger":"7.0.0-rc.3","@storybook/codemod":"7.0.0-rc.3","@storybook/components":"7.0.0-rc.3","@storybook/core-client":"7.0.0-rc.3","@storybook/core-common":"7.0.0-rc.3","@storybook/core-events":"7.0.0-rc.3","@storybook/core-server":"7.0.0-rc.3","@storybook/core-webpack":"7.0.0-rc.3","@storybook/csf-plugin":"7.0.0-rc.3","@storybook/csf-tools":"7.0.0-rc.3","@storybook/docs-tools":"7.0.0-rc.3","@storybook/ember":"7.0.0-rc.3","@storybook/html":"7.0.0-rc.3","@storybook/html-vite":"7.0.0-rc.3","@storybook/html-webpack5":"7.0.0-rc.3","@storybook/instrumenter":"7.0.0-rc.3","@storybook/manager":"7.0.0-rc.3","@storybook/manager-api":"7.0.0-rc.3","@storybook/nextjs":"7.0.0-rc.3","@storybook/node-logger":"7.0.0-rc.3","@storybook/postinstall":"7.0.0-rc.3","@storybook/preact":"7.0.0-rc.3","@storybook/preact-vite":"7.0.0-rc.3","@storybook/preact-webpack5":"7.0.0-rc.3","@storybook/preset-create-react-app":"7.0.0-rc.3","@storybook/preset-html-webpack":"7.0.0-rc.3","@storybook/preset-preact-webpack":"7.0.0-rc.3","@storybook/preset-react-webpack":"7.0.0-rc.3","@storybook/preset-server-webpack":"7.0.0-rc.3","@storybook/preset-svelte-webpack":"7.0.0-rc.3","@storybook/preset-vue-webpack":"7.0.0-rc.3","@storybook/preset-vue3-webpack":"7.0.0-rc.3","@storybook/preset-web-components-webpack":"7.0.0-rc.3","@storybook/preview":"7.0.0-rc.3","@storybook/preview-api":"7.0.0-rc.3","@storybook/preview-web":"7.0.0-rc.3","@storybook/react":"7.0.0-rc.3","@storybook/react-dom-shim":"7.0.0-rc.3","@storybook/react-vite":"7.0.0-rc.3","@storybook/react-webpack5":"7.0.0-rc.3","@storybook/router":"7.0.0-rc.3","@storybook/server":"7.0.0-rc.3","@storybook/server-webpack5":"7.0.0-rc.3","@storybook/source-loader":"7.0.0-rc.3","@storybook/store":"7.0.0-rc.3","@storybook/svelte":"7.0.0-rc.3","@storybook/svelte-vite":"7.0.0-rc.3","@storybook/svelte-webpack5":"7.0.0-rc.3","@storybook/sveltekit":"7.0.0-rc.3","@storybook/telemetry":"7.0.0-rc.3","@storybook/theming":"7.0.0-rc.3","@storybook/types":"7.0.0-rc.3","@storybook/vue":"7.0.0-rc.3","@storybook/vue-vite":"7.0.0-rc.3","@storybook/vue-webpack5":"7.0.0-rc.3","@storybook/vue3":"7.0.0-rc.3","@storybook/vue3-vite":"7.0.0-rc.3","@storybook/vue3-webpack5":"7.0.0-rc.3","@storybook/web-components":"7.0.0-rc.3","@storybook/web-components-vite":"7.0.0-rc.3","@storybook/web-components-webpack5":"7.0.0-rc.3",sb:"7.0.0-rc.3",storybook:"7.0.0-rc.3"};function getCliDir(){return(0,import_path.dirname)(require.resolve("@storybook/cli/package.json"))}var resolveUsingBranchInstall=async(packageManager,request)=>{let tempDirectory=tempy.directory(),version=versions_default[request]||await packageManager.latestVersion(request),url=(0,import_get_npm_tarball_url.default)(request,version,{registry:packageManager.getRegistryURL()});return await(0,import_get_tarball.default)({url,dir:tempDirectory}),(0,import_path.join)(tempDirectory,"package")};async function getRendererDir(packageManager,renderer){let externalFramework=externalFrameworks.find(framework=>framework.name===renderer),frameworkPackageName=(externalFramework==null?void 0:externalFramework.renderer)||(externalFramework==null?void 0:externalFramework.packageName)||`@storybook/${renderer}`,packageJsonPath=`${frameworkPackageName}/package.json`,errors=[];try{return(0,import_path.dirname)(require.resolve(packageJsonPath,{paths:[process.cwd()]}))}catch(e){errors.push(e)}try{return await resolveUsingBranchInstall(packageManager,frameworkPackageName)}catch(e){errors.push(e)}throw new Error(`Cannot find ${packageJsonPath}, ${errors.map(e=>e.stack).join(`
|
|
2
2
|
|
|
3
3
|
`)}`)}var logger=console;function getBowerJson(){let bowerJsonPath=import_path2.default.resolve("bower.json");if(!import_fs.default.existsSync(bowerJsonPath))return!1;let jsonContent=import_fs.default.readFileSync(bowerJsonPath,"utf8");return JSON.parse(jsonContent)}function readFileAsJson(jsonPath,allowComments){let filePath=import_path2.default.resolve(jsonPath);if(!import_fs.default.existsSync(filePath))return!1;let fileContent=import_fs.default.readFileSync(filePath,"utf8"),jsonContent=allowComments?(0,import_strip_json_comments.default)(fileContent):fileContent;try{return JSON.parse(jsonContent)}catch(e){throw logger.error(import_chalk.default.red(`Invalid json in file: ${filePath}`)),e}}var writeFileAsJson=(jsonPath,content)=>{let filePath=import_path2.default.resolve(jsonPath);return import_fs.default.existsSync(filePath)?(import_fs.default.writeFileSync(filePath,`${JSON.stringify(content,null,2)}
|
|
4
4
|
`),!0):!1},commandLog=message=>(process.stdout.write(import_chalk.default.cyan(" \u2022 ")+message),(errorMessage,errorInfo)=>{if(errorMessage){if(process.stdout.write(`. ${import_chalk.default.red("\u2716")}
|
|
@@ -398,8 +398,8 @@ To run your Storybook, type:
|
|
|
398
398
|
`),codeLog([packageManager.getRunStorybookCommand()])),logger21.log()}async function initiate(options,pkg2){await(0,import_core_server.withTelemetry)("init",{cliOptions:options},()=>doInitiate(options,pkg2))}var import_path13=__toESM(require("path")),import_fs6=__toESM(require("fs")),import_cross_spawn3=require("cross-spawn"),import_core_common7=require("@storybook/core-common"),import_csf_tools4=require("@storybook/csf-tools");var logger22=console,LEGACY_CONFIGS=["addons","config","presets"],postinstallAddon=async(addonName,isOfficialAddon)=>{let skipMsg=null;isOfficialAddon?import_fs6.default.existsSync(".storybook")?(skipMsg="no codmods found",LEGACY_CONFIGS.forEach(config=>{try{let codemod=require.resolve(`${getPackageName(addonName,isOfficialAddon)}/postinstall/${config}.js`);commandLog(`Running postinstall script for ${addonName}`)();let configFile=import_path13.default.join(".storybook",`${config}.ts`);import_fs6.default.existsSync(configFile)||(configFile=import_path13.default.join(".storybook",`${config}.js`),import_fs6.default.existsSync(configFile)||import_fs6.default.writeFileSync(configFile,"","utf8")),(0,import_cross_spawn3.sync)("npx",["jscodeshift","-t",codemod,configFile],{stdio:"inherit",shell:!0}),skipMsg=null}catch{}})):skipMsg="no .storybook config":skipMsg="unofficial addon",skipMsg&&commandLog(`Skipping postinstall for ${addonName}, ${skipMsg}`)()},getVersionSpecifier=addon=>{let groups=/^(...*)@(.*)$/.exec(addon);return groups?[groups[1],groups[2]]:[addon,void 0]};async function add(addon,options){let{packageManager:pkgMgr}=options;options.useNpm&&(useNpmWarning(),pkgMgr="npm");let packageManager=JsPackageManagerFactory.getPackageManager({force:pkgMgr}),packageJson=packageManager.retrievePackageJson(),[addonName,versionSpecifier]=getVersionSpecifier(addon),{mainConfig,version:storybookVersion}=(0,import_core_common7.getStorybookInfo)(packageJson);if(!mainConfig){logger22.error("Unable to find storybook main.js config");return}let main=await(0,import_csf_tools4.readConfig)(mainConfig),addons=main.getFieldValue(["addons"]);addons&&!Array.isArray(addons)&&logger22.error("Expected addons array in main.js config"),logger22.log(`Verifying ${addonName}`);let latestVersion=packageManager.latestVersion(addonName);latestVersion||logger22.error(`Unknown addon ${addonName}`);let isStorybookAddon=addonName.startsWith("@storybook/"),addonWithVersion=`${addonName}@${versionSpecifier||(isStorybookAddon?storybookVersion:latestVersion)}`;logger22.log(`Installing ${addonWithVersion}`),packageManager.addDependencies({installAsDevDependencies:!0},[addonWithVersion]),logger22.log(`Adding '${addon}' to main.js addons field.`);let updatedAddons=[...addons||[],addonName];main.setFieldValue(["addons"],updatedAddons),await(0,import_csf_tools4.writeConfig)(main),options.skipPostinstall||await postinstallAddon(addon,isStorybookAddon)}var import_codemod=require("@storybook/codemod");async function migrate(migration,{glob,dryRun,list,rename,logger:logger29,parser}){if(list)(0,import_codemod.listCodemods)().forEach(key=>logger29.log(key));else if(migration)await(0,import_codemod.runCodemod)(migration,{glob,dryRun,logger:logger29,rename,parser});else throw new Error("Migrate: please specify a migration name or --list")}var import_path14=__toESM(require("path")),import_fs_extra12=require("fs-extra"),import_puppeteer_core=__toESM(require("puppeteer-core")),import_express=__toESM(require("express")),import_get_port=__toESM(require("get-port")),import_node_logger3=require("@storybook/node-logger"),read=async url=>{let browser=await usePuppeteerBrowser(),page=await browser.newPage();await page.goto(url),await page.waitForFunction(`
|
|
399
399
|
(window.__STORYBOOK_PREVIEW__ && window.__STORYBOOK_PREVIEW__.extract && window.__STORYBOOK_PREVIEW__.extract()) ||
|
|
400
400
|
(window.__STORYBOOK_STORY_STORE__ && window.__STORYBOOK_STORY_STORE__.extract && window.__STORYBOOK_STORY_STORE__.extract())
|
|
401
|
-
`);let data=JSON.parse(await page.evaluate(async()=>JSON.stringify(window.__STORYBOOK_STORY_STORE__.getStoriesJsonData(),null,2)));return setImmediate(()=>{browser.close()}),data},useLocation=async input=>{if(await(0,import_fs_extra12.stat)(import_path14.default.resolve(input)),input.match(/^http/))return[input,async()=>{}];let app=(0,import_express.default)();app.use(import_express.default.static(input));let port=await(0,import_get_port.default)();return new Promise(resolve=>{let server=app.listen(port,()=>{let result=`http://localhost:${port}/iframe.html`;import_node_logger3.logger.info(`connecting to: ${result}`),resolve([result,server.close.bind(server)])})})},usePuppeteerBrowser=async()=>{let args=["--no-sandbox ","--disable-setuid-sandbox"];try{return await import_puppeteer_core.default.launch({args,executablePath:process.env.SB_CHROMIUM_PATH})}catch{return import_node_logger3.logger.info("installing puppeteer..."),new Promise((resolve,reject)=>{require("child_process").exec(`node ${require.resolve(import_path14.default.join("puppeteer-core","install.js"))}`,error=>error?reject(error):resolve(import_puppeteer_core.default.launch({args})))})}};async function extract(input,targetPath){if(input&&targetPath){let[location,exit]=await useLocation(input),data=await read(location);await(0,import_fs_extra12.writeFile)(targetPath,JSON.stringify(data,null,2)),await exit()}else throw new Error("Extract: please specify a path where your built-storybook is (can be a public url) and a target directory")}var import_cross_spawn4=require("cross-spawn"),import_telemetry2=require("@storybook/telemetry"),import_semver23=__toESM(require("semver")),import_node_logger4=require("@storybook/node-logger"),import_core_server2=require("@storybook/core-server");var versionRegex=/(@storybook\/[^@]+)@(\S+)/,getStorybookVersion=line=>{if(line.startsWith("npm "))return null;let match=versionRegex.exec(line);return!match||!import_semver23.default.clean(match[2])?null:{package:match[1],version:match[2]}},isCorePackage=pkg2=>
|
|
402
|
-
`).map(getStorybookVersion).filter(Boolean).filter(pkg2=>isCorePackage(pkg2.package));if(!storybookPackages.length){import_node_logger4.logger.warn("No storybook core packages found."),import_node_logger4.logger.warn("'npm ls | grep storybook' can show if multiple versions are installed.");return}storybookPackages.sort((a,b)=>import_semver23.default.rcompare(a.version,b.version));let latestVersion=storybookPackages[0].version,outdated=storybookPackages.filter(pkg2=>pkg2.version!==latestVersion);outdated.length>0&&(import_node_logger4.logger.warn(`Found ${outdated.length} outdated packages (relative to '${formatPackage(storybookPackages[0])}')`),import_node_logger4.logger.warn("Please make sure your packages are updated to ensure a consistent experience."),warnPackages(outdated)),deprecatedPackages.forEach(({minVersion:minVersion2,url,deprecations})=>{if(import_semver23.default.gte(latestVersion,minVersion2)){let deprecated=storybookPackages.filter(pkg2=>deprecations.includes(pkg2.package));deprecated.length>0&&(import_node_logger4.logger.warn(`Found ${deprecated.length} deprecated packages since ${minVersion2}`),import_node_logger4.logger.warn(`See ${url}`),warnPackages(deprecated))}})},EXTRA_FLAGS={"react-scripts@<5":["--reject","/preset-create-react-app/"]},addExtraFlags=(extraFlags,flags,{dependencies,devDependencies})=>Object.entries(extraFlags).reduce((acc,entry)=>{let[pattern,extra]=entry,[pkg2,specifier]=getPackageDetails(pattern),pkgVersion=dependencies[pkg2]||devDependencies[pkg2];return pkgVersion&&import_semver23.default.satisfies(import_semver23.default.coerce(pkgVersion),specifier)?[...acc,...extra]:acc},[...flags]),
|
|
401
|
+
`);let data=JSON.parse(await page.evaluate(async()=>JSON.stringify(window.__STORYBOOK_STORY_STORE__.getStoriesJsonData(),null,2)));return setImmediate(()=>{browser.close()}),data},useLocation=async input=>{if(await(0,import_fs_extra12.stat)(import_path14.default.resolve(input)),input.match(/^http/))return[input,async()=>{}];let app=(0,import_express.default)();app.use(import_express.default.static(input));let port=await(0,import_get_port.default)();return new Promise(resolve=>{let server=app.listen(port,()=>{let result=`http://localhost:${port}/iframe.html`;import_node_logger3.logger.info(`connecting to: ${result}`),resolve([result,server.close.bind(server)])})})},usePuppeteerBrowser=async()=>{let args=["--no-sandbox ","--disable-setuid-sandbox"];try{return await import_puppeteer_core.default.launch({args,executablePath:process.env.SB_CHROMIUM_PATH})}catch{return import_node_logger3.logger.info("installing puppeteer..."),new Promise((resolve,reject)=>{require("child_process").exec(`node ${require.resolve(import_path14.default.join("puppeteer-core","install.js"))}`,error=>error?reject(error):resolve(import_puppeteer_core.default.launch({args})))})}};async function extract(input,targetPath){if(input&&targetPath){let[location,exit]=await useLocation(input),data=await read(location);await(0,import_fs_extra12.writeFile)(targetPath,JSON.stringify(data,null,2)),await exit()}else throw new Error("Extract: please specify a path where your built-storybook is (can be a public url) and a target directory")}var import_cross_spawn4=require("cross-spawn"),import_telemetry2=require("@storybook/telemetry"),import_semver23=__toESM(require("semver")),import_node_logger4=require("@storybook/node-logger"),import_core_server2=require("@storybook/core-server");var versionRegex=/(@storybook\/[^@]+)@(\S+)/,getStorybookVersion=line=>{if(line.startsWith("npm "))return null;let match=versionRegex.exec(line);return!match||!import_semver23.default.clean(match[2])?null:{package:match[1],version:match[2]}},excludeList=["@storybook/addon-bench","@storybook/addon-console","@storybook/addon-postcss","@storybook/babel-plugin-require-context-hook","@storybook/bench","@storybook/builder-vite","@storybook/csf","@storybook/design-system","@storybook/ember-cli-storybook","@storybook/eslint-config-storybook","@storybook/expect","@storybook/jest","@storybook/linter-config","@storybook/mdx1-csf","@storybook/mdx2-csf","@storybook/react-docgen-typescript-plugin","@storybook/storybook-deployer","@storybook/test-runner","@storybook/testing-library","@storybook/testing-react"],isCorePackage=pkg2=>pkg2.startsWith("@storybook/")&&!pkg2.startsWith("@storybook/preset-")&&!excludeList.includes(pkg2),deprecatedPackages=[{minVersion:"6.0.0-alpha.0",url:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#60-deprecations",deprecations:["@storybook/addon-notes","@storybook/addon-info","@storybook/addon-contexts","@storybook/addon-options","@storybook/addon-centered"]}],formatPackage=pkg2=>`${pkg2.package}@${pkg2.version}`,warnPackages=pkgs=>pkgs.forEach(pkg2=>import_node_logger4.logger.warn(`- ${formatPackage(pkg2)}`)),checkVersionConsistency=()=>{let storybookPackages=(0,import_cross_spawn4.sync)("npm",["ls"],{stdio:"pipe",shell:!0}).output.toString().split(`
|
|
402
|
+
`).map(getStorybookVersion).filter(Boolean).filter(pkg2=>isCorePackage(pkg2.package));if(!storybookPackages.length){import_node_logger4.logger.warn("No storybook core packages found."),import_node_logger4.logger.warn("'npm ls | grep storybook' can show if multiple versions are installed.");return}storybookPackages.sort((a,b)=>import_semver23.default.rcompare(a.version,b.version));let latestVersion=storybookPackages[0].version,outdated=storybookPackages.filter(pkg2=>pkg2.version!==latestVersion);outdated.length>0&&(import_node_logger4.logger.warn(`Found ${outdated.length} outdated packages (relative to '${formatPackage(storybookPackages[0])}')`),import_node_logger4.logger.warn("Please make sure your packages are updated to ensure a consistent experience."),warnPackages(outdated)),deprecatedPackages.forEach(({minVersion:minVersion2,url,deprecations})=>{if(import_semver23.default.gte(latestVersion,minVersion2)){let deprecated=storybookPackages.filter(pkg2=>deprecations.includes(pkg2.package));deprecated.length>0&&(import_node_logger4.logger.warn(`Found ${deprecated.length} deprecated packages since ${minVersion2}`),import_node_logger4.logger.warn(`See ${url}`),warnPackages(deprecated))}})},EXTRA_FLAGS={"react-scripts@<5":["--reject","/preset-create-react-app/"]},addExtraFlags=(extraFlags,flags,{dependencies,devDependencies})=>Object.entries(extraFlags).reduce((acc,entry)=>{let[pattern,extra]=entry,[pkg2,specifier]=getPackageDetails(pattern),pkgVersion=dependencies[pkg2]||devDependencies[pkg2];return pkgVersion&&import_semver23.default.satisfies(import_semver23.default.coerce(pkgVersion),specifier)?[...acc,...extra]:acc},[...flags]),doUpgrade=async({tag,prerelease,skipCheck,useNpm,packageManager:pkgMgr,dryRun,configDir,yes,...options})=>{useNpm&&(useNpmWarning(),pkgMgr="npm");let packageManager=JsPackageManagerFactory.getPackageManager({force:pkgMgr}),beforeVersion=await(0,import_telemetry2.getStorybookCoreVersion)();if(commandLog("Checking for latest versions of '@storybook/*' packages"),tag&&prerelease)throw new Error("Cannot set both --tag and --prerelease. Use --tag next to get the latest prereleae");let target="latest";prerelease?target="@next":tag&&(target=`@${tag}`);let flags=[];dryRun||flags.push("--upgrade"),flags.push("--target"),flags.push(target),flags=addExtraFlags(EXTRA_FLAGS,flags,packageManager.retrievePackageJson());let check=(0,import_cross_spawn4.sync)("npx",["npm-check-updates@latest","/storybook/",...flags],{stdio:"pipe",shell:!0}).output.toString();import_node_logger4.logger.info(check);let checkSb=(0,import_cross_spawn4.sync)("npx",["npm-check-updates@latest","sb",...flags],{stdio:"pipe",shell:!0}).output.toString();import_node_logger4.logger.info(checkSb),dryRun||(commandLog("Installing upgrades"),packageManager.installDependencies());let automigrationResults;if(skipCheck||(checkVersionConsistency(),automigrationResults=await automigrate({dryRun,yes,packageManager:pkgMgr,configDir})),!options.disableTelemetry){let afterVersion=await(0,import_telemetry2.getStorybookCoreVersion)(),{preCheckFailure,...results}=automigrationResults||{};(0,import_telemetry2.telemetry)("upgrade",{prerelease,tag,beforeVersion,afterVersion,...{automigrationResults:preCheckFailure?null:results,automigrationPreCheckFailure:preCheckFailure||null}})}};async function upgrade(options){await(0,import_core_server2.withTelemetry)("upgrade",{cliOptions:options},()=>doUpgrade(options))}var import_prompts7=__toESM(require("prompts")),import_path15=__toESM(require("path")),import_chalk26=__toESM(require("chalk")),import_boxen2=__toESM(require("boxen")),import_ts_dedent27=require("ts-dedent"),import_giget=require("giget"),import_fs_extra13=require("fs-extra");var baseTemplates={"cra/default-js":{name:"Create React App (Javascript)",script:"npx create-react-app .",expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"cra/default-ts":{name:"Create React App (Typescript)",script:"npx create-react-app . --template typescript",skipTasks:["smoke-test"],expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"nextjs/12-js":{name:"Next.js v12 (JavaScript)",script:'yarn create next-app {{beforeDir}} -e https://github.com/vercel/next.js/tree/next-12-3-2/examples/hello-world && cd {{beforeDir}} && npm pkg set "dependencies.next"="^12.2.0" && yarn && git add . && git commit --amend --no-edit && cd ..',expected:{framework:"@storybook/nextjs",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"nextjs/default-js":{name:"Next.js (JavaScript)",script:"yarn create next-app {{beforeDir}} --javascript --eslint",expected:{framework:"@storybook/nextjs",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"nextjs/default-ts":{name:"Next.js (TypeScript)",script:"yarn create next-app {{beforeDir}} --typescript --eslint",expected:{framework:"@storybook/nextjs",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"react-vite/default-js":{name:"React Vite (JS)",script:"yarn create vite . --template react",expected:{framework:"@storybook/react-vite",renderer:"@storybook/react",builder:"@storybook/builder-vite"}},"react-vite/default-ts":{name:"React Vite (TS)",script:"yarn create vite . --template react-ts",expected:{framework:"@storybook/react-vite",renderer:"@storybook/react",builder:"@storybook/builder-vite"}},"react-webpack/18-ts":{name:"React 18 Webpack5 (TS)",script:"yarn create webpack5-react .",expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"react-webpack/17-ts":{name:"React 17 Webpack5 (TS)",script:'yarn create webpack5-react . --version-react="17" --version-react-dom="17"',expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"solid-vite/default-js":{name:"SolidJS Vite (JS)",script:"npx degit solidjs/templates/js .",expected:{framework:"storybook-solidjs-vite",renderer:"storybook-solidjs",builder:"@storybook/builder-vite"},inDevelopment:!0},"solid-vite/default-ts":{name:"SolidJS Vite (TS)",script:"npx degit solidjs/templates/ts .",expected:{framework:"storybook-solidjs-vite",renderer:"storybook-solidjs",builder:"@storybook/builder-vite"},inDevelopment:!0},"vue3-vite/default-js":{name:"Vue3 Vite (JS)",script:"yarn create vite . --template vue",expected:{framework:"@storybook/vue3-vite",renderer:"@storybook/vue3",builder:"@storybook/builder-vite"}},"vue3-vite/default-ts":{name:"Vue3 Vite (TS)",script:"yarn create vite . --template vue-ts",expected:{framework:"@storybook/vue3-vite",renderer:"@storybook/vue3",builder:"@storybook/builder-vite"}},"vue2-vite/2.7-js":{name:"Vue2 Vite (vue 2.7 JS)",script:`yarn create vite . --template vanilla && yarn add --dev @vitejs/plugin-vue2 vue-template-compiler vue@2 && echo "import vue2 from '@vitejs/plugin-vue2';
|
|
403
403
|
|
|
404
404
|
export default {
|
|
405
405
|
plugins: [vue2()]
|
package/dist/generate.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{JsPackageManagerFactory,SUPPORTED_RENDERERS,__require,codeLog,commandLog,copyTemplate,copyTemplateFiles,externalFrameworks,getBabelDependencies,getBowerJson,getCliDir,getPackageDetails,getStorybookVersionSpecifier,installableProjectTypes,isNxProject,paddedLog,readFileAsJson,supportedTemplates,unsupportedTemplate,useNpmWarning,versions_default,writeFileAsJson}from"./chunk-
|
|
1
|
+
import{JsPackageManagerFactory,SUPPORTED_RENDERERS,__require,codeLog,commandLog,copyTemplate,copyTemplateFiles,externalFrameworks,getBabelDependencies,getBowerJson,getCliDir,getPackageDetails,getStorybookVersionSpecifier,installableProjectTypes,isNxProject,paddedLog,readFileAsJson,supportedTemplates,unsupportedTemplate,useNpmWarning,versions_default,writeFileAsJson}from"./chunk-4G5MX7TM.mjs";import program from"commander";import path8 from"path";import chalk26 from"chalk";import envinfo from"envinfo";import leven from"leven";import{sync as readUpSync3}from"read-pkg-up";import{logger as logger26}from"@storybook/node-logger";import chalk23 from"chalk";import prompts6 from"prompts";import{telemetry}from"@storybook/telemetry";import{withTelemetry}from"@storybook/core-server";import fs from"fs";import findUp from"find-up";import semver from"semver";import{logger}from"@storybook/node-logger";import{pathExistsSync}from"fs-extra";import{join}from"path";var detectWebpack=packageManager=>{try{let out="";if(packageManager.type==="npm")try{out=packageManager.executeCommand("npm",["ls","webpack"])}catch{out=packageManager.executeCommand("npm",["why","webpack"])}else out=packageManager.executeCommand("yarn",["why","webpack"]);if(out.includes("webpack@4")||out.includes("webpack@npm:4"))return 4;if(out.includes("webpack@5")||out.includes("webpack@npm:5"))return 5}catch{}return!1};var viteConfigFiles=["vite.config.ts","vite.config.js","vite.config.mjs"],hasDependency=(packageJson,name,matcher)=>{let version=packageJson.dependencies?.[name]||packageJson.devDependencies?.[name];return version&&typeof matcher=="function"?matcher(version):!!version},hasPeerDependency=(packageJson,name,matcher)=>{let version=packageJson.peerDependencies?.[name];return version&&typeof matcher=="function"?matcher(version):!!version},getFrameworkPreset=(packageJson,framework)=>{let matcher={dependencies:[!1],peerDependencies:[!1],files:[!1]},{preset,files,dependencies,peerDependencies,matcherFunction}=framework,dependencySearches=[];Array.isArray(dependencies)?dependencySearches=dependencies.map(name=>[name,void 0]):typeof dependencies=="object"&&(dependencySearches=Object.entries(dependencies)),dependencySearches.length>0&&(matcher.dependencies=dependencySearches.map(([name,matchFn])=>hasDependency(packageJson,name,matchFn)));let peerDependencySearches=[];return Array.isArray(peerDependencies)?peerDependencySearches=peerDependencies.map(name=>[name,void 0]):typeof peerDependencies=="object"&&(peerDependencySearches=Object.entries(peerDependencies)),peerDependencySearches.length>0&&(matcher.peerDependencies=peerDependencySearches.map(([name,matchFn])=>hasPeerDependency(packageJson,name,matchFn))),Array.isArray(files)&&files.length>0&&(matcher.files=files.map(name=>fs.existsSync(name))),matcherFunction(matcher)?preset:null};function detectFrameworkPreset(packageJson={}){let result=[...supportedTemplates,unsupportedTemplate].find(framework=>getFrameworkPreset(packageJson,framework)!==null);return result?result.preset:"UNDETECTED"}function detectBuilder(packageManager,projectType){if(findUp.sync(viteConfigFiles))return paddedLog("Detected Vite project. Setting builder to Vite"),"vite";if(detectWebpack(packageManager))return paddedLog("Detected webpack project. Setting builder to webpack"),"webpack5";switch(projectType){case"SVELTE":case"SVELTEKIT":case"VUE":case"VUE3":case"SFC_VUE":return"vite";default:return"webpack5"}}function isStorybookInstalled(dependencies,force){return dependencies?!!(!force&&dependencies.devDependencies&&SUPPORTED_RENDERERS.reduce((storybookPresent,framework)=>storybookPresent||!!dependencies.devDependencies[`@storybook/${framework}`],!1)):!1}function detectPnp(){return pathExistsSync(join(process.cwd(),".pnp.cjs"))}function detectLanguage(packageJson){let language="javascript";return!packageJson||fs.existsSync("jsconfig.json")||(hasDependency(packageJson,"typescript",version=>semver.gte(semver.coerce(version),"4.9.0"))&&(!hasDependency(packageJson,"prettier")||hasDependency(packageJson,"prettier",version=>semver.gte(semver.coerce(version),"2.8.0")))&&(!hasDependency(packageJson,"@babel/plugin-transform-typescript")||hasDependency(packageJson,"@babel/plugin-transform-typescript",version=>semver.gte(semver.coerce(version),"7.20.0")))&&(!hasDependency(packageJson,"@typescript-eslint/parser")||hasDependency(packageJson,"@typescript-eslint/parser",version=>semver.gte(semver.coerce(version),"5.44.0")))&&(!hasDependency(packageJson,"eslint-plugin-storybook")||hasDependency(packageJson,"eslint-plugin-storybook",version=>semver.gte(semver.coerce(version),"0.6.8")))?language="typescript-4-9":hasDependency(packageJson,"typescript",version=>semver.gte(semver.coerce(version),"3.8.0"))?language="typescript-3-8":hasDependency(packageJson,"typescript",version=>semver.lt(semver.coerce(version),"3.8.0"))&&logger.warn("Detected TypeScript < 3.8, populating with JavaScript examples")),language}function detect(packageJson,options={}){let bowerJson=getBowerJson();return!packageJson&&!bowerJson?"UNDETECTED":isNxProject(packageJson)?"NX":options.html?"HTML":detectFrameworkPreset(packageJson||bowerJson)}import{join as join2}from"path";import semver2 from"semver";import path2 from"path";import fse2 from"fs-extra";import{dedent as dedent2}from"ts-dedent";import fse from"fs-extra";import{dedent}from"ts-dedent";var logger2=console,sanitizeFramework=framework=>{let matches=framework.match(/(@storybook\/\w+(?:-\w+)*)|(storybook-(\w+(?:-\w+)*))/g);if(matches)return matches[0]};async function configureMain({addons,extensions=["js","jsx","ts","tsx"],storybookConfigFolder,language,...custom}){let prefix=await fse.pathExists("./src")?"../src":"../stories",config={stories:[`${prefix}/**/*.mdx`,`${prefix}/**/*.stories.@(${extensions.join("|")})`],addons,...custom},isTypescript=language==="typescript-4-9"||language==="typescript-3-8",mainConfigTemplate=dedent`<<import>>const config<<type>> = <<mainContents>>;
|
|
2
2
|
export default config;`,frameworkPackage=sanitizeFramework(custom.framework?.name);frameworkPackage||(mainConfigTemplate=mainConfigTemplate.replace("<<import>>","").replace("<<type>>",""),logger2.warn("Could not find framework package name"));let mainContents=JSON.stringify(config,null,2).replace(/['"]%%/g,"").replace(/%%['"]/g,""),imports=[];custom.framework?.name.includes("path.dirname(")&&imports.push("import path from 'path';"),isTypescript?imports.push(`import type { StorybookConfig } from '${frameworkPackage}';`):imports.push(`/** @type { import('${frameworkPackage}').StorybookConfig } */`);let mainJsContents=mainConfigTemplate.replace("<<import>>",`${imports.join(`
|
|
3
3
|
|
|
4
4
|
`)}
|
|
@@ -383,8 +383,8 @@ To run your Storybook, type:
|
|
|
383
383
|
`),codeLog([packageManager.getRunStorybookCommand()])),logger19.log()}async function initiate(options,pkg2){await withTelemetry("init",{cliOptions:options},()=>doInitiate(options,pkg2))}import path4 from"path";import fs4 from"fs";import{sync as spawnSync}from"cross-spawn";import{getStorybookInfo as getStorybookInfo4}from"@storybook/core-common";import{readConfig as readConfig3,writeConfig as writeConfig3}from"@storybook/csf-tools";var logger20=console,LEGACY_CONFIGS=["addons","config","presets"],postinstallAddon=async(addonName,isOfficialAddon)=>{let skipMsg=null;isOfficialAddon?fs4.existsSync(".storybook")?(skipMsg="no codmods found",LEGACY_CONFIGS.forEach(config=>{try{let codemod=__require.resolve(`${getPackageName(addonName,isOfficialAddon)}/postinstall/${config}.js`);commandLog(`Running postinstall script for ${addonName}`)();let configFile=path4.join(".storybook",`${config}.ts`);fs4.existsSync(configFile)||(configFile=path4.join(".storybook",`${config}.js`),fs4.existsSync(configFile)||fs4.writeFileSync(configFile,"","utf8")),spawnSync("npx",["jscodeshift","-t",codemod,configFile],{stdio:"inherit",shell:!0}),skipMsg=null}catch{}})):skipMsg="no .storybook config":skipMsg="unofficial addon",skipMsg&&commandLog(`Skipping postinstall for ${addonName}, ${skipMsg}`)()},getVersionSpecifier=addon=>{let groups=/^(...*)@(.*)$/.exec(addon);return groups?[groups[1],groups[2]]:[addon,void 0]};async function add(addon,options){let{packageManager:pkgMgr}=options;options.useNpm&&(useNpmWarning(),pkgMgr="npm");let packageManager=JsPackageManagerFactory.getPackageManager({force:pkgMgr}),packageJson=packageManager.retrievePackageJson(),[addonName,versionSpecifier]=getVersionSpecifier(addon),{mainConfig,version:storybookVersion}=getStorybookInfo4(packageJson);if(!mainConfig){logger20.error("Unable to find storybook main.js config");return}let main=await readConfig3(mainConfig),addons=main.getFieldValue(["addons"]);addons&&!Array.isArray(addons)&&logger20.error("Expected addons array in main.js config"),logger20.log(`Verifying ${addonName}`);let latestVersion=packageManager.latestVersion(addonName);latestVersion||logger20.error(`Unknown addon ${addonName}`);let isStorybookAddon=addonName.startsWith("@storybook/"),addonWithVersion=`${addonName}@${versionSpecifier||(isStorybookAddon?storybookVersion:latestVersion)}`;logger20.log(`Installing ${addonWithVersion}`),packageManager.addDependencies({installAsDevDependencies:!0},[addonWithVersion]),logger20.log(`Adding '${addon}' to main.js addons field.`);let updatedAddons=[...addons||[],addonName];main.setFieldValue(["addons"],updatedAddons),await writeConfig3(main),options.skipPostinstall||await postinstallAddon(addon,isStorybookAddon)}import{listCodemods,runCodemod}from"@storybook/codemod";async function migrate(migration,{glob,dryRun,list,rename,logger:logger27,parser}){if(list)listCodemods().forEach(key=>logger27.log(key));else if(migration)await runCodemod(migration,{glob,dryRun,logger:logger27,rename,parser});else throw new Error("Migrate: please specify a migration name or --list")}import path5 from"path";import{writeFile as writeFile2,stat}from"fs-extra";import puppeteerCore from"puppeteer-core";import express from"express";import getPort from"get-port";import{logger as logger21}from"@storybook/node-logger";var read=async url=>{let browser=await usePuppeteerBrowser(),page=await browser.newPage();await page.goto(url),await page.waitForFunction(`
|
|
384
384
|
(window.__STORYBOOK_PREVIEW__ && window.__STORYBOOK_PREVIEW__.extract && window.__STORYBOOK_PREVIEW__.extract()) ||
|
|
385
385
|
(window.__STORYBOOK_STORY_STORE__ && window.__STORYBOOK_STORY_STORE__.extract && window.__STORYBOOK_STORY_STORE__.extract())
|
|
386
|
-
`);let data=JSON.parse(await page.evaluate(async()=>JSON.stringify(window.__STORYBOOK_STORY_STORE__.getStoriesJsonData(),null,2)));return setImmediate(()=>{browser.close()}),data},useLocation=async input=>{if(await stat(path5.resolve(input)),input.match(/^http/))return[input,async()=>{}];let app=express();app.use(express.static(input));let port=await getPort();return new Promise(resolve=>{let server=app.listen(port,()=>{let result=`http://localhost:${port}/iframe.html`;logger21.info(`connecting to: ${result}`),resolve([result,server.close.bind(server)])})})},usePuppeteerBrowser=async()=>{let args=["--no-sandbox ","--disable-setuid-sandbox"];try{return await puppeteerCore.launch({args,executablePath:process.env.SB_CHROMIUM_PATH})}catch{return logger21.info("installing puppeteer..."),new Promise((resolve,reject)=>{__require("child_process").exec(`node ${__require.resolve(path5.join("puppeteer-core","install.js"))}`,error=>error?reject(error):resolve(puppeteerCore.launch({args})))})}};async function extract(input,targetPath){if(input&&targetPath){let[location,exit]=await useLocation(input),data=await read(location);await writeFile2(targetPath,JSON.stringify(data,null,2)),await exit()}else throw new Error("Extract: please specify a path where your built-storybook is (can be a public url) and a target directory")}import{sync as spawnSync2}from"cross-spawn";import{telemetry as telemetry2,getStorybookCoreVersion}from"@storybook/telemetry";import semver20 from"semver";import{logger as logger22}from"@storybook/node-logger";import{withTelemetry as withTelemetry2}from"@storybook/core-server";var versionRegex=/(@storybook\/[^@]+)@(\S+)/,getStorybookVersion=line=>{if(line.startsWith("npm "))return null;let match=versionRegex.exec(line);return!match||!semver20.clean(match[2])?null:{package:match[1],version:match[2]}},isCorePackage=pkg2=>
|
|
387
|
-
`).map(getStorybookVersion).filter(Boolean).filter(pkg2=>isCorePackage(pkg2.package));if(!storybookPackages.length){logger22.warn("No storybook core packages found."),logger22.warn("'npm ls | grep storybook' can show if multiple versions are installed.");return}storybookPackages.sort((a,b)=>semver20.rcompare(a.version,b.version));let latestVersion=storybookPackages[0].version,outdated=storybookPackages.filter(pkg2=>pkg2.version!==latestVersion);outdated.length>0&&(logger22.warn(`Found ${outdated.length} outdated packages (relative to '${formatPackage(storybookPackages[0])}')`),logger22.warn("Please make sure your packages are updated to ensure a consistent experience."),warnPackages(outdated)),deprecatedPackages.forEach(({minVersion,url,deprecations})=>{if(semver20.gte(latestVersion,minVersion)){let deprecated=storybookPackages.filter(pkg2=>deprecations.includes(pkg2.package));deprecated.length>0&&(logger22.warn(`Found ${deprecated.length} deprecated packages since ${minVersion}`),logger22.warn(`See ${url}`),warnPackages(deprecated))}})},EXTRA_FLAGS={"react-scripts@<5":["--reject","/preset-create-react-app/"]},addExtraFlags=(extraFlags,flags,{dependencies,devDependencies})=>Object.entries(extraFlags).reduce((acc,entry)=>{let[pattern,extra]=entry,[pkg2,specifier]=getPackageDetails(pattern),pkgVersion=dependencies[pkg2]||devDependencies[pkg2];return pkgVersion&&semver20.satisfies(semver20.coerce(pkgVersion),specifier)?[...acc,...extra]:acc},[...flags]),
|
|
386
|
+
`);let data=JSON.parse(await page.evaluate(async()=>JSON.stringify(window.__STORYBOOK_STORY_STORE__.getStoriesJsonData(),null,2)));return setImmediate(()=>{browser.close()}),data},useLocation=async input=>{if(await stat(path5.resolve(input)),input.match(/^http/))return[input,async()=>{}];let app=express();app.use(express.static(input));let port=await getPort();return new Promise(resolve=>{let server=app.listen(port,()=>{let result=`http://localhost:${port}/iframe.html`;logger21.info(`connecting to: ${result}`),resolve([result,server.close.bind(server)])})})},usePuppeteerBrowser=async()=>{let args=["--no-sandbox ","--disable-setuid-sandbox"];try{return await puppeteerCore.launch({args,executablePath:process.env.SB_CHROMIUM_PATH})}catch{return logger21.info("installing puppeteer..."),new Promise((resolve,reject)=>{__require("child_process").exec(`node ${__require.resolve(path5.join("puppeteer-core","install.js"))}`,error=>error?reject(error):resolve(puppeteerCore.launch({args})))})}};async function extract(input,targetPath){if(input&&targetPath){let[location,exit]=await useLocation(input),data=await read(location);await writeFile2(targetPath,JSON.stringify(data,null,2)),await exit()}else throw new Error("Extract: please specify a path where your built-storybook is (can be a public url) and a target directory")}import{sync as spawnSync2}from"cross-spawn";import{telemetry as telemetry2,getStorybookCoreVersion}from"@storybook/telemetry";import semver20 from"semver";import{logger as logger22}from"@storybook/node-logger";import{withTelemetry as withTelemetry2}from"@storybook/core-server";var versionRegex=/(@storybook\/[^@]+)@(\S+)/,getStorybookVersion=line=>{if(line.startsWith("npm "))return null;let match=versionRegex.exec(line);return!match||!semver20.clean(match[2])?null:{package:match[1],version:match[2]}},excludeList=["@storybook/addon-bench","@storybook/addon-console","@storybook/addon-postcss","@storybook/babel-plugin-require-context-hook","@storybook/bench","@storybook/builder-vite","@storybook/csf","@storybook/design-system","@storybook/ember-cli-storybook","@storybook/eslint-config-storybook","@storybook/expect","@storybook/jest","@storybook/linter-config","@storybook/mdx1-csf","@storybook/mdx2-csf","@storybook/react-docgen-typescript-plugin","@storybook/storybook-deployer","@storybook/test-runner","@storybook/testing-library","@storybook/testing-react"],isCorePackage=pkg2=>pkg2.startsWith("@storybook/")&&!pkg2.startsWith("@storybook/preset-")&&!excludeList.includes(pkg2),deprecatedPackages=[{minVersion:"6.0.0-alpha.0",url:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#60-deprecations",deprecations:["@storybook/addon-notes","@storybook/addon-info","@storybook/addon-contexts","@storybook/addon-options","@storybook/addon-centered"]}],formatPackage=pkg2=>`${pkg2.package}@${pkg2.version}`,warnPackages=pkgs=>pkgs.forEach(pkg2=>logger22.warn(`- ${formatPackage(pkg2)}`)),checkVersionConsistency=()=>{let storybookPackages=spawnSync2("npm",["ls"],{stdio:"pipe",shell:!0}).output.toString().split(`
|
|
387
|
+
`).map(getStorybookVersion).filter(Boolean).filter(pkg2=>isCorePackage(pkg2.package));if(!storybookPackages.length){logger22.warn("No storybook core packages found."),logger22.warn("'npm ls | grep storybook' can show if multiple versions are installed.");return}storybookPackages.sort((a,b)=>semver20.rcompare(a.version,b.version));let latestVersion=storybookPackages[0].version,outdated=storybookPackages.filter(pkg2=>pkg2.version!==latestVersion);outdated.length>0&&(logger22.warn(`Found ${outdated.length} outdated packages (relative to '${formatPackage(storybookPackages[0])}')`),logger22.warn("Please make sure your packages are updated to ensure a consistent experience."),warnPackages(outdated)),deprecatedPackages.forEach(({minVersion,url,deprecations})=>{if(semver20.gte(latestVersion,minVersion)){let deprecated=storybookPackages.filter(pkg2=>deprecations.includes(pkg2.package));deprecated.length>0&&(logger22.warn(`Found ${deprecated.length} deprecated packages since ${minVersion}`),logger22.warn(`See ${url}`),warnPackages(deprecated))}})},EXTRA_FLAGS={"react-scripts@<5":["--reject","/preset-create-react-app/"]},addExtraFlags=(extraFlags,flags,{dependencies,devDependencies})=>Object.entries(extraFlags).reduce((acc,entry)=>{let[pattern,extra]=entry,[pkg2,specifier]=getPackageDetails(pattern),pkgVersion=dependencies[pkg2]||devDependencies[pkg2];return pkgVersion&&semver20.satisfies(semver20.coerce(pkgVersion),specifier)?[...acc,...extra]:acc},[...flags]),doUpgrade=async({tag,prerelease,skipCheck,useNpm,packageManager:pkgMgr,dryRun,configDir,yes,...options})=>{useNpm&&(useNpmWarning(),pkgMgr="npm");let packageManager=JsPackageManagerFactory.getPackageManager({force:pkgMgr}),beforeVersion=await getStorybookCoreVersion();if(commandLog("Checking for latest versions of '@storybook/*' packages"),tag&&prerelease)throw new Error("Cannot set both --tag and --prerelease. Use --tag next to get the latest prereleae");let target="latest";prerelease?target="@next":tag&&(target=`@${tag}`);let flags=[];dryRun||flags.push("--upgrade"),flags.push("--target"),flags.push(target),flags=addExtraFlags(EXTRA_FLAGS,flags,packageManager.retrievePackageJson());let check=spawnSync2("npx",["npm-check-updates@latest","/storybook/",...flags],{stdio:"pipe",shell:!0}).output.toString();logger22.info(check);let checkSb=spawnSync2("npx",["npm-check-updates@latest","sb",...flags],{stdio:"pipe",shell:!0}).output.toString();logger22.info(checkSb),dryRun||(commandLog("Installing upgrades"),packageManager.installDependencies());let automigrationResults;if(skipCheck||(checkVersionConsistency(),automigrationResults=await automigrate({dryRun,yes,packageManager:pkgMgr,configDir})),!options.disableTelemetry){let afterVersion=await getStorybookCoreVersion(),{preCheckFailure,...results}=automigrationResults||{};telemetry2("upgrade",{prerelease,tag,beforeVersion,afterVersion,...{automigrationResults:preCheckFailure?null:results,automigrationPreCheckFailure:preCheckFailure||null}})}};async function upgrade(options){await withTelemetry2("upgrade",{cliOptions:options},()=>doUpgrade(options))}import prompts7 from"prompts";import path6 from"path";import chalk24 from"chalk";import boxen2 from"boxen";import{dedent as dedent27}from"ts-dedent";import{downloadTemplate}from"giget";import{existsSync,readdir}from"fs-extra";var baseTemplates={"cra/default-js":{name:"Create React App (Javascript)",script:"npx create-react-app .",expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"cra/default-ts":{name:"Create React App (Typescript)",script:"npx create-react-app . --template typescript",skipTasks:["smoke-test"],expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"nextjs/12-js":{name:"Next.js v12 (JavaScript)",script:'yarn create next-app {{beforeDir}} -e https://github.com/vercel/next.js/tree/next-12-3-2/examples/hello-world && cd {{beforeDir}} && npm pkg set "dependencies.next"="^12.2.0" && yarn && git add . && git commit --amend --no-edit && cd ..',expected:{framework:"@storybook/nextjs",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"nextjs/default-js":{name:"Next.js (JavaScript)",script:"yarn create next-app {{beforeDir}} --javascript --eslint",expected:{framework:"@storybook/nextjs",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"nextjs/default-ts":{name:"Next.js (TypeScript)",script:"yarn create next-app {{beforeDir}} --typescript --eslint",expected:{framework:"@storybook/nextjs",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"react-vite/default-js":{name:"React Vite (JS)",script:"yarn create vite . --template react",expected:{framework:"@storybook/react-vite",renderer:"@storybook/react",builder:"@storybook/builder-vite"}},"react-vite/default-ts":{name:"React Vite (TS)",script:"yarn create vite . --template react-ts",expected:{framework:"@storybook/react-vite",renderer:"@storybook/react",builder:"@storybook/builder-vite"}},"react-webpack/18-ts":{name:"React 18 Webpack5 (TS)",script:"yarn create webpack5-react .",expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"react-webpack/17-ts":{name:"React 17 Webpack5 (TS)",script:'yarn create webpack5-react . --version-react="17" --version-react-dom="17"',expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"}},"solid-vite/default-js":{name:"SolidJS Vite (JS)",script:"npx degit solidjs/templates/js .",expected:{framework:"storybook-solidjs-vite",renderer:"storybook-solidjs",builder:"@storybook/builder-vite"},inDevelopment:!0},"solid-vite/default-ts":{name:"SolidJS Vite (TS)",script:"npx degit solidjs/templates/ts .",expected:{framework:"storybook-solidjs-vite",renderer:"storybook-solidjs",builder:"@storybook/builder-vite"},inDevelopment:!0},"vue3-vite/default-js":{name:"Vue3 Vite (JS)",script:"yarn create vite . --template vue",expected:{framework:"@storybook/vue3-vite",renderer:"@storybook/vue3",builder:"@storybook/builder-vite"}},"vue3-vite/default-ts":{name:"Vue3 Vite (TS)",script:"yarn create vite . --template vue-ts",expected:{framework:"@storybook/vue3-vite",renderer:"@storybook/vue3",builder:"@storybook/builder-vite"}},"vue2-vite/2.7-js":{name:"Vue2 Vite (vue 2.7 JS)",script:`yarn create vite . --template vanilla && yarn add --dev @vitejs/plugin-vue2 vue-template-compiler vue@2 && echo "import vue2 from '@vitejs/plugin-vue2';
|
|
388
388
|
|
|
389
389
|
export default {
|
|
390
390
|
plugins: [vue2()]
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var src_exports={};__export(src_exports,{JsPackageManager:()=>JsPackageManager,JsPackageManagerFactory:()=>JsPackageManagerFactory,getPackageDetails:()=>getPackageDetails,useNpmWarning:()=>useNpmWarning});module.exports=__toCommonJS(src_exports);var import_util_deprecate=__toESM(require("util-deprecate")),useNpmWarning=(0,import_util_deprecate.default)(()=>{},"`--use-npm` is deprecated and will be removed in Storybook 8.0. \nPlease use the `--package-manager=npm` option instead.\nRead more at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#cli-option---use-npm-deprecated");var import_node_path=__toESM(require("path")),import_cross_spawn2=require("cross-spawn"),import_find_up=require("find-up");var import_chalk2=__toESM(require("chalk")),import_semver3=require("semver"),import_cross_spawn=require("cross-spawn"),import_path=__toESM(require("path")),import_fs=__toESM(require("fs"));var import_fs_extra=__toESM(require("fs-extra")),import_chalk=__toESM(require("chalk")),import_semver2=require("semver"),import_strip_json_comments=__toESM(require("strip-json-comments"));var import_get_tarball=__toESM(require("@ndelangen/get-tarball")),import_get_npm_tarball_url=__toESM(require("get-npm-tarball-url")),tempy=__toESM(require("tempy"));var import_semver=require("semver");var ProjectType=(ProjectType2=>(ProjectType2.UNDETECTED="UNDETECTED",ProjectType2.UNSUPPORTED="UNSUPPORTED",ProjectType2.REACT_SCRIPTS="REACT_SCRIPTS",ProjectType2.REACT="REACT",ProjectType2.REACT_NATIVE="REACT_NATIVE",ProjectType2.REACT_PROJECT="REACT_PROJECT",ProjectType2.WEBPACK_REACT="WEBPACK_REACT",ProjectType2.NEXTJS="NEXTJS",ProjectType2.VUE="VUE",ProjectType2.VUE3="VUE3",ProjectType2.SFC_VUE="SFC_VUE",ProjectType2.ANGULAR="ANGULAR",ProjectType2.EMBER="EMBER",ProjectType2.WEB_COMPONENTS="WEB_COMPONENTS",ProjectType2.MITHRIL="MITHRIL",ProjectType2.MARIONETTE="MARIONETTE",ProjectType2.MARKO="MARKO",ProjectType2.HTML="HTML",ProjectType2.QWIK="QWIK",ProjectType2.RIOT="RIOT",ProjectType2.PREACT="PREACT",ProjectType2.SVELTE="SVELTE",ProjectType2.SVELTEKIT="SVELTEKIT",ProjectType2.RAX="RAX",ProjectType2.AURELIA="AURELIA",ProjectType2.SERVER="SERVER",ProjectType2.NX="NX",ProjectType2.SOLID="SOLID",ProjectType2))(ProjectType||{});var notInstallableProjectTypes=["UNDETECTED","UNSUPPORTED"],installableProjectTypes=Object.values(ProjectType).filter(type=>!notInstallableProjectTypes.includes(type)).map(type=>type.toLowerCase());var versions_default={"@storybook/addon-a11y":"7.0.0-rc.
|
|
1
|
+
var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var src_exports={};__export(src_exports,{JsPackageManager:()=>JsPackageManager,JsPackageManagerFactory:()=>JsPackageManagerFactory,getPackageDetails:()=>getPackageDetails,useNpmWarning:()=>useNpmWarning});module.exports=__toCommonJS(src_exports);var import_util_deprecate=__toESM(require("util-deprecate")),useNpmWarning=(0,import_util_deprecate.default)(()=>{},"`--use-npm` is deprecated and will be removed in Storybook 8.0. \nPlease use the `--package-manager=npm` option instead.\nRead more at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#cli-option---use-npm-deprecated");var import_node_path=__toESM(require("path")),import_cross_spawn2=require("cross-spawn"),import_find_up=require("find-up");var import_chalk2=__toESM(require("chalk")),import_semver3=require("semver"),import_cross_spawn=require("cross-spawn"),import_path=__toESM(require("path")),import_fs=__toESM(require("fs"));var import_fs_extra=__toESM(require("fs-extra")),import_chalk=__toESM(require("chalk")),import_semver2=require("semver"),import_strip_json_comments=__toESM(require("strip-json-comments"));var import_get_tarball=__toESM(require("@ndelangen/get-tarball")),import_get_npm_tarball_url=__toESM(require("get-npm-tarball-url")),tempy=__toESM(require("tempy"));var import_semver=require("semver");var ProjectType=(ProjectType2=>(ProjectType2.UNDETECTED="UNDETECTED",ProjectType2.UNSUPPORTED="UNSUPPORTED",ProjectType2.REACT_SCRIPTS="REACT_SCRIPTS",ProjectType2.REACT="REACT",ProjectType2.REACT_NATIVE="REACT_NATIVE",ProjectType2.REACT_PROJECT="REACT_PROJECT",ProjectType2.WEBPACK_REACT="WEBPACK_REACT",ProjectType2.NEXTJS="NEXTJS",ProjectType2.VUE="VUE",ProjectType2.VUE3="VUE3",ProjectType2.SFC_VUE="SFC_VUE",ProjectType2.ANGULAR="ANGULAR",ProjectType2.EMBER="EMBER",ProjectType2.WEB_COMPONENTS="WEB_COMPONENTS",ProjectType2.MITHRIL="MITHRIL",ProjectType2.MARIONETTE="MARIONETTE",ProjectType2.MARKO="MARKO",ProjectType2.HTML="HTML",ProjectType2.QWIK="QWIK",ProjectType2.RIOT="RIOT",ProjectType2.PREACT="PREACT",ProjectType2.SVELTE="SVELTE",ProjectType2.SVELTEKIT="SVELTEKIT",ProjectType2.RAX="RAX",ProjectType2.AURELIA="AURELIA",ProjectType2.SERVER="SERVER",ProjectType2.NX="NX",ProjectType2.SOLID="SOLID",ProjectType2))(ProjectType||{});var notInstallableProjectTypes=["UNDETECTED","UNSUPPORTED"],installableProjectTypes=Object.values(ProjectType).filter(type=>!notInstallableProjectTypes.includes(type)).map(type=>type.toLowerCase());var versions_default={"@storybook/addon-a11y":"7.0.0-rc.3","@storybook/addon-actions":"7.0.0-rc.3","@storybook/addon-backgrounds":"7.0.0-rc.3","@storybook/addon-controls":"7.0.0-rc.3","@storybook/addon-docs":"7.0.0-rc.3","@storybook/addon-essentials":"7.0.0-rc.3","@storybook/addon-highlight":"7.0.0-rc.3","@storybook/addon-interactions":"7.0.0-rc.3","@storybook/addon-jest":"7.0.0-rc.3","@storybook/addon-links":"7.0.0-rc.3","@storybook/addon-mdx-gfm":"7.0.0-rc.3","@storybook/addon-measure":"7.0.0-rc.3","@storybook/addon-outline":"7.0.0-rc.3","@storybook/addon-storyshots":"7.0.0-rc.3","@storybook/addon-storyshots-puppeteer":"7.0.0-rc.3","@storybook/addon-storysource":"7.0.0-rc.3","@storybook/addon-toolbars":"7.0.0-rc.3","@storybook/addon-viewport":"7.0.0-rc.3","@storybook/addons":"7.0.0-rc.3","@storybook/angular":"7.0.0-rc.3","@storybook/api":"7.0.0-rc.3","@storybook/blocks":"7.0.0-rc.3","@storybook/builder-manager":"7.0.0-rc.3","@storybook/builder-vite":"7.0.0-rc.3","@storybook/builder-webpack5":"7.0.0-rc.3","@storybook/channel-postmessage":"7.0.0-rc.3","@storybook/channel-websocket":"7.0.0-rc.3","@storybook/channels":"7.0.0-rc.3","@storybook/cli":"7.0.0-rc.3","@storybook/client-api":"7.0.0-rc.3","@storybook/client-logger":"7.0.0-rc.3","@storybook/codemod":"7.0.0-rc.3","@storybook/components":"7.0.0-rc.3","@storybook/core-client":"7.0.0-rc.3","@storybook/core-common":"7.0.0-rc.3","@storybook/core-events":"7.0.0-rc.3","@storybook/core-server":"7.0.0-rc.3","@storybook/core-webpack":"7.0.0-rc.3","@storybook/csf-plugin":"7.0.0-rc.3","@storybook/csf-tools":"7.0.0-rc.3","@storybook/docs-tools":"7.0.0-rc.3","@storybook/ember":"7.0.0-rc.3","@storybook/html":"7.0.0-rc.3","@storybook/html-vite":"7.0.0-rc.3","@storybook/html-webpack5":"7.0.0-rc.3","@storybook/instrumenter":"7.0.0-rc.3","@storybook/manager":"7.0.0-rc.3","@storybook/manager-api":"7.0.0-rc.3","@storybook/nextjs":"7.0.0-rc.3","@storybook/node-logger":"7.0.0-rc.3","@storybook/postinstall":"7.0.0-rc.3","@storybook/preact":"7.0.0-rc.3","@storybook/preact-vite":"7.0.0-rc.3","@storybook/preact-webpack5":"7.0.0-rc.3","@storybook/preset-create-react-app":"7.0.0-rc.3","@storybook/preset-html-webpack":"7.0.0-rc.3","@storybook/preset-preact-webpack":"7.0.0-rc.3","@storybook/preset-react-webpack":"7.0.0-rc.3","@storybook/preset-server-webpack":"7.0.0-rc.3","@storybook/preset-svelte-webpack":"7.0.0-rc.3","@storybook/preset-vue-webpack":"7.0.0-rc.3","@storybook/preset-vue3-webpack":"7.0.0-rc.3","@storybook/preset-web-components-webpack":"7.0.0-rc.3","@storybook/preview":"7.0.0-rc.3","@storybook/preview-api":"7.0.0-rc.3","@storybook/preview-web":"7.0.0-rc.3","@storybook/react":"7.0.0-rc.3","@storybook/react-dom-shim":"7.0.0-rc.3","@storybook/react-vite":"7.0.0-rc.3","@storybook/react-webpack5":"7.0.0-rc.3","@storybook/router":"7.0.0-rc.3","@storybook/server":"7.0.0-rc.3","@storybook/server-webpack5":"7.0.0-rc.3","@storybook/source-loader":"7.0.0-rc.3","@storybook/store":"7.0.0-rc.3","@storybook/svelte":"7.0.0-rc.3","@storybook/svelte-vite":"7.0.0-rc.3","@storybook/svelte-webpack5":"7.0.0-rc.3","@storybook/sveltekit":"7.0.0-rc.3","@storybook/telemetry":"7.0.0-rc.3","@storybook/theming":"7.0.0-rc.3","@storybook/types":"7.0.0-rc.3","@storybook/vue":"7.0.0-rc.3","@storybook/vue-vite":"7.0.0-rc.3","@storybook/vue-webpack5":"7.0.0-rc.3","@storybook/vue3":"7.0.0-rc.3","@storybook/vue3-vite":"7.0.0-rc.3","@storybook/vue3-webpack5":"7.0.0-rc.3","@storybook/web-components":"7.0.0-rc.3","@storybook/web-components-vite":"7.0.0-rc.3","@storybook/web-components-webpack5":"7.0.0-rc.3",sb:"7.0.0-rc.3",storybook:"7.0.0-rc.3"};var logger=console;var commandLog=message=>(process.stdout.write(import_chalk.default.cyan(" \u2022 ")+message),(errorMessage,errorInfo)=>{if(errorMessage){if(process.stdout.write(`. ${import_chalk.default.red("\u2716")}
|
|
2
2
|
`),logger.error(`
|
|
3
3
|
${import_chalk.default.red(errorMessage)}`),!errorInfo)return;let newErrorInfo=errorInfo.split(`
|
|
4
4
|
`).map(line=>` ${import_chalk.default.dim(line)}`).join(`
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{JsPackageManager,JsPackageManagerFactory,getPackageDetails,useNpmWarning}from"./chunk-
|
|
1
|
+
import{JsPackageManager,JsPackageManagerFactory,getPackageDetails,useNpmWarning}from"./chunk-4G5MX7TM.mjs";export{JsPackageManager,JsPackageManagerFactory,getPackageDetails,useNpmWarning};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@storybook/cli",
|
|
3
|
-
"version": "7.0.0-rc.
|
|
3
|
+
"version": "7.0.0-rc.3",
|
|
4
4
|
"description": "Storybook's CLI - easiest method of adding storybook to your projects",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cli",
|
|
@@ -57,13 +57,13 @@
|
|
|
57
57
|
"@babel/core": "^7.20.2",
|
|
58
58
|
"@babel/preset-env": "^7.20.2",
|
|
59
59
|
"@ndelangen/get-tarball": "^3.0.7",
|
|
60
|
-
"@storybook/codemod": "7.0.0-rc.
|
|
61
|
-
"@storybook/core-common": "7.0.0-rc.
|
|
62
|
-
"@storybook/core-server": "7.0.0-rc.
|
|
63
|
-
"@storybook/csf-tools": "7.0.0-rc.
|
|
64
|
-
"@storybook/node-logger": "7.0.0-rc.
|
|
65
|
-
"@storybook/telemetry": "7.0.0-rc.
|
|
66
|
-
"@storybook/types": "7.0.0-rc.
|
|
60
|
+
"@storybook/codemod": "7.0.0-rc.3",
|
|
61
|
+
"@storybook/core-common": "7.0.0-rc.3",
|
|
62
|
+
"@storybook/core-server": "7.0.0-rc.3",
|
|
63
|
+
"@storybook/csf-tools": "7.0.0-rc.3",
|
|
64
|
+
"@storybook/node-logger": "7.0.0-rc.3",
|
|
65
|
+
"@storybook/telemetry": "7.0.0-rc.3",
|
|
66
|
+
"@storybook/types": "7.0.0-rc.3",
|
|
67
67
|
"@types/semver": "^7.3.4",
|
|
68
68
|
"boxen": "^5.1.2",
|
|
69
69
|
"chalk": "^4.1.0",
|
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
"util-deprecate": "^1.0.2"
|
|
95
95
|
},
|
|
96
96
|
"devDependencies": {
|
|
97
|
-
"@storybook/client-api": "7.0.0-rc.
|
|
97
|
+
"@storybook/client-api": "7.0.0-rc.3",
|
|
98
98
|
"@types/cross-spawn": "^6.0.2",
|
|
99
99
|
"@types/prompts": "^2.0.9",
|
|
100
100
|
"@types/puppeteer-core": "^2.1.0",
|
|
@@ -114,5 +114,5 @@
|
|
|
114
114
|
],
|
|
115
115
|
"platform": "node"
|
|
116
116
|
},
|
|
117
|
-
"gitHead": "
|
|
117
|
+
"gitHead": "94e99533b214c24691cc9edb3a026d04f20154b6"
|
|
118
118
|
}
|