@storybook/cli 7.0.0-alpha.13 → 7.0.0-alpha.18
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/cjs/add.js +0 -2
- package/dist/cjs/automigrate/fixes/angular12.js +0 -2
- package/dist/cjs/automigrate/fixes/builder-vite.js +0 -2
- package/dist/cjs/automigrate/fixes/cra5.js +0 -2
- package/dist/cjs/automigrate/fixes/eslint-plugin.js +0 -2
- package/dist/cjs/automigrate/fixes/mainjsFramework.js +0 -2
- package/dist/cjs/automigrate/fixes/npm7.js +0 -2
- package/dist/cjs/automigrate/fixes/vue3.js +0 -2
- package/dist/cjs/automigrate/fixes/webpack5.js +0 -2
- package/dist/cjs/automigrate/index.js +0 -2
- package/dist/cjs/babel-config.js +0 -2
- package/dist/cjs/build.js +0 -2
- package/dist/cjs/dev.js +0 -2
- package/dist/cjs/dirs.js +12 -0
- package/dist/cjs/extract.js +0 -2
- package/dist/cjs/generate.js +21 -7
- package/dist/cjs/generators/ANGULAR/angular-helpers.js +0 -2
- package/dist/cjs/generators/ANGULAR/index.js +0 -2
- package/dist/cjs/generators/ANGULAR/template-csf/.storybook/tsconfig.json +5 -16
- package/dist/cjs/generators/AURELIA/index.js +0 -2
- package/dist/cjs/generators/AURELIA/template-csf/.storybook/tsconfig.json +5 -16
- package/dist/cjs/generators/EMBER/index.js +0 -2
- package/dist/cjs/generators/HTML/index.js +0 -2
- package/dist/cjs/generators/MARIONETTE/index.js +0 -2
- package/dist/cjs/generators/MARKO/index.js +0 -2
- package/dist/cjs/generators/MITHRIL/index.js +0 -2
- package/dist/cjs/generators/PREACT/index.js +0 -2
- package/dist/cjs/generators/RAX/index.js +0 -2
- package/dist/cjs/generators/REACT/index.js +0 -2
- package/dist/cjs/generators/REACT_NATIVE/index.js +0 -2
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/addons.js +7 -3
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/index.js +21 -15
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/rn-addons.js +5 -2
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js +23 -20
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Button/index.js +25 -10
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/index.js +25 -10
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/style.js +10 -3
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/Welcome.stories.js +14 -5
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/index.js +60 -49
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/index.js +5 -2
- package/dist/cjs/generators/REACT_SCRIPTS/index.js +0 -2
- package/dist/cjs/generators/RIOT/index.js +0 -2
- package/dist/cjs/generators/SERVER/index.js +0 -2
- package/dist/cjs/generators/SERVER/template-csf/.storybook/preview.js +10 -3
- package/dist/cjs/generators/SFC_VUE/index.js +0 -2
- package/dist/cjs/generators/SVELTE/index.js +15 -13
- package/dist/cjs/generators/VUE/index.js +0 -2
- package/dist/cjs/generators/VUE3/index.js +0 -2
- package/dist/cjs/generators/WEB-COMPONENTS/index.js +0 -2
- package/dist/cjs/generators/WEBPACK_REACT/index.js +0 -2
- package/dist/cjs/generators/baseGenerator.js +3 -4
- package/dist/cjs/generators/configure.js +0 -2
- package/dist/cjs/helpers.js +10 -5
- package/dist/cjs/initiate.js +0 -4
- package/dist/cjs/js-package-manager/JsPackageManager.js +4 -12
- package/dist/cjs/link.js +8 -7
- package/dist/cjs/migrate.js +0 -2
- package/dist/cjs/repro-generators/scripts.js +30 -9
- package/dist/cjs/repro-next.js +173 -0
- package/dist/cjs/repro-templates.js +28 -0
- package/dist/cjs/repro.js +2 -4
- package/dist/cjs/upgrade.js +0 -4
- package/dist/cjs/versions.js +75 -75
- package/dist/esm/NpmOptions.js +0 -1
- package/dist/esm/add.js +24 -54
- package/dist/esm/automigrate/fixes/angular12.js +14 -32
- package/dist/esm/automigrate/fixes/builder-vite.js +16 -34
- package/dist/esm/automigrate/fixes/cra5.js +15 -33
- package/dist/esm/automigrate/fixes/eslint-plugin.js +16 -33
- package/dist/esm/automigrate/fixes/index.js +10 -41
- package/dist/esm/automigrate/fixes/mainjsFramework.js +17 -37
- package/dist/esm/automigrate/fixes/npm7.js +7 -21
- package/dist/esm/automigrate/fixes/vue3.js +15 -34
- package/dist/esm/automigrate/fixes/webpack5.js +24 -46
- package/dist/esm/automigrate/helpers/getEslintInfo.js +6 -20
- package/dist/esm/automigrate/index.js +18 -38
- package/dist/esm/automigrate/types.js +1 -5
- package/dist/esm/babel-config.js +14 -39
- package/dist/esm/build.js +10 -26
- package/dist/esm/detect-nextjs.js +2 -11
- package/dist/esm/detect-webpack.js +2 -11
- package/dist/esm/detect.js +33 -61
- package/dist/esm/dev.js +20 -41
- package/dist/esm/dirs.js +4 -0
- package/dist/esm/extract.js +17 -35
- package/dist/esm/generate.js +72 -111
- package/dist/esm/generators/ANGULAR/angular-helpers.js +17 -43
- package/dist/esm/generators/ANGULAR/index.js +17 -38
- package/dist/esm/generators/ANGULAR/template-csf/.storybook/tsconfig.json +5 -16
- package/dist/esm/generators/AURELIA/index.js +7 -18
- package/dist/esm/generators/AURELIA/template-csf/.storybook/tsconfig.json +5 -16
- package/dist/esm/generators/EMBER/index.js +3 -13
- package/dist/esm/generators/HTML/index.js +3 -13
- package/dist/esm/generators/MARIONETTE/index.js +3 -13
- package/dist/esm/generators/MARKO/index.js +3 -13
- package/dist/esm/generators/MITHRIL/index.js +3 -13
- package/dist/esm/generators/PREACT/index.js +3 -13
- package/dist/esm/generators/RAX/index.js +5 -16
- package/dist/esm/generators/REACT/index.js +3 -13
- package/dist/esm/generators/REACT_NATIVE/index.js +9 -24
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/addons.js +1 -1
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/index.js +6 -13
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/rn-addons.js +2 -2
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js +5 -13
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Button/index.js +10 -8
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/index.js +9 -8
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/style.js +3 -3
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/Welcome.stories.js +3 -2
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/index.js +41 -44
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/index.js +1 -1
- package/dist/esm/generators/REACT_SCRIPTS/index.js +12 -33
- package/dist/esm/generators/RIOT/index.js +3 -13
- package/dist/esm/generators/SERVER/index.js +5 -16
- package/dist/esm/generators/SERVER/template-csf/.storybook/preview.js +3 -3
- package/dist/esm/generators/SFC_VUE/index.js +3 -13
- package/dist/esm/generators/SVELTE/index.js +26 -39
- package/dist/esm/generators/VUE/index.js +3 -13
- package/dist/esm/generators/VUE3/index.js +3 -13
- package/dist/esm/generators/WEB-COMPONENTS/index.js +3 -13
- package/dist/esm/generators/WEBPACK_REACT/index.js +3 -13
- package/dist/esm/generators/baseGenerator.js +28 -46
- package/dist/esm/generators/configure.js +10 -26
- package/dist/esm/generators/types.js +1 -5
- package/dist/esm/helpers.js +50 -94
- package/dist/esm/initiate.js +105 -150
- package/dist/esm/js-package-manager/JsPackageManager.js +30 -59
- package/dist/esm/js-package-manager/JsPackageManagerFactory.js +12 -26
- package/dist/esm/js-package-manager/NPMProxy.js +5 -18
- package/dist/esm/js-package-manager/PackageJson.js +1 -5
- package/dist/esm/js-package-manager/PackageJsonHelper.js +9 -25
- package/dist/esm/js-package-manager/Yarn1Proxy.js +3 -13
- package/dist/esm/js-package-manager/Yarn2Proxy.js +3 -13
- package/dist/esm/js-package-manager/index.js +4 -57
- package/dist/esm/link.js +35 -64
- package/dist/esm/migrate.js +4 -14
- package/dist/esm/project_types.js +13 -28
- package/dist/esm/repro-generators/configs.js +21 -48
- package/dist/esm/repro-generators/scripts.js +61 -71
- package/dist/esm/repro-next.js +154 -0
- package/dist/esm/repro-templates.js +21 -0
- package/dist/esm/repro.js +29 -55
- package/dist/esm/upgrade.js +33 -75
- package/dist/esm/utils.js +2 -11
- package/dist/esm/versions.js +77 -84
- package/dist/esm/warn.js +9 -25
- package/dist/esm/window.d.js +1 -5
- package/dist/types/dirs.d.ts +1 -0
- package/dist/types/generators/baseGenerator.d.ts +1 -1
- package/dist/types/generators/types.d.ts +1 -0
- package/dist/types/link.d.ts +2 -1
- package/dist/types/repro-generators/scripts.d.ts +4 -2
- package/dist/types/repro-next.d.ts +7 -0
- package/dist/types/repro-templates.d.ts +21 -0
- package/dist/types/repro.d.ts +2 -1
- package/package.json +14 -10
- package/LICENSE +0 -21
- package/dist/cjs/frameworks/angular/Button.stories.ts +0 -44
- package/dist/cjs/frameworks/angular/Header.stories.ts +0 -35
- package/dist/cjs/frameworks/angular/Page.stories.ts +0 -36
- package/dist/cjs/frameworks/angular/User.ts +0 -2
- package/dist/cjs/frameworks/angular/button.component.ts +0 -53
- package/dist/cjs/frameworks/angular/header.component.ts +0 -75
- package/dist/cjs/frameworks/angular/page.component.ts +0 -77
- package/dist/cjs/frameworks/aurelia/1-Button.stories.ts +0 -49
- package/dist/cjs/frameworks/aurelia/button.ts +0 -28
- package/dist/cjs/frameworks/common/Introduction.stories.mdx +0 -211
- package/dist/cjs/frameworks/common/assets/code-brackets.svg +0 -1
- package/dist/cjs/frameworks/common/assets/colors.svg +0 -1
- package/dist/cjs/frameworks/common/assets/comments.svg +0 -1
- package/dist/cjs/frameworks/common/assets/direction.svg +0 -1
- package/dist/cjs/frameworks/common/assets/flow.svg +0 -1
- package/dist/cjs/frameworks/common/assets/plugin.svg +0 -1
- package/dist/cjs/frameworks/common/assets/repo.svg +0 -1
- package/dist/cjs/frameworks/common/assets/stackalt.svg +0 -1
- package/dist/cjs/frameworks/common/button.css +0 -30
- package/dist/cjs/frameworks/common/header.css +0 -32
- package/dist/cjs/frameworks/common/page.css +0 -69
- package/dist/cjs/frameworks/ember/1-Button.stories.js +0 -57
- package/dist/cjs/frameworks/html/js/Button.js +0 -21
- package/dist/cjs/frameworks/html/js/Button.stories.js +0 -48
- package/dist/cjs/frameworks/html/js/Header.js +0 -47
- package/dist/cjs/frameworks/html/js/Header.stories.js +0 -27
- package/dist/cjs/frameworks/html/js/Page.js +0 -94
- package/dist/cjs/frameworks/html/js/Page.stories.js +0 -23
- package/dist/cjs/frameworks/html/ts/Button.stories.ts +0 -49
- package/dist/cjs/frameworks/html/ts/Button.ts +0 -51
- package/dist/cjs/frameworks/html/ts/Header.stories.ts +0 -26
- package/dist/cjs/frameworks/html/ts/Header.ts +0 -54
- package/dist/cjs/frameworks/html/ts/Page.stories.ts +0 -24
- package/dist/cjs/frameworks/html/ts/Page.ts +0 -98
- package/dist/cjs/frameworks/marionette/index.stories.js +0 -20
- package/dist/cjs/frameworks/marko/1-Button.stories.js +0 -24
- package/dist/cjs/frameworks/marko/Button.marko +0 -13
- package/dist/cjs/frameworks/mithril/Button.js +0 -22
- package/dist/cjs/frameworks/mithril/Button.stories.js +0 -43
- package/dist/cjs/frameworks/mithril/Header.js +0 -51
- package/dist/cjs/frameworks/mithril/Header.stories.js +0 -20
- package/dist/cjs/frameworks/mithril/Page.js +0 -70
- package/dist/cjs/frameworks/mithril/Page.stories.js +0 -24
- package/dist/cjs/frameworks/preact/Button.jsx +0 -51
- package/dist/cjs/frameworks/preact/Button.stories.jsx +0 -41
- package/dist/cjs/frameworks/preact/Header.jsx +0 -58
- package/dist/cjs/frameworks/preact/Header.stories.jsx +0 -29
- package/dist/cjs/frameworks/preact/Page.jsx +0 -71
- package/dist/cjs/frameworks/preact/Page.stories.jsx +0 -26
- package/dist/cjs/frameworks/rax/Button.js +0 -26
- package/dist/cjs/frameworks/rax/Button.stories.js +0 -40
- package/dist/cjs/frameworks/rax/Header.js +0 -44
- package/dist/cjs/frameworks/rax/Header.stories.js +0 -17
- package/dist/cjs/frameworks/rax/Page.js +0 -64
- package/dist/cjs/frameworks/rax/Page.stories.js +0 -21
- package/dist/cjs/frameworks/react/js/Button.jsx +0 -50
- package/dist/cjs/frameworks/react/js/Button.stories.jsx +0 -40
- package/dist/cjs/frameworks/react/js/Header.jsx +0 -57
- package/dist/cjs/frameworks/react/js/Header.stories.jsx +0 -24
- package/dist/cjs/frameworks/react/js/Page.jsx +0 -69
- package/dist/cjs/frameworks/react/js/Page.stories.jsx +0 -25
- package/dist/cjs/frameworks/react/ts/Button.stories.tsx +0 -41
- package/dist/cjs/frameworks/react/ts/Button.tsx +0 -48
- package/dist/cjs/frameworks/react/ts/Header.stories.tsx +0 -25
- package/dist/cjs/frameworks/react/ts/Header.tsx +0 -56
- package/dist/cjs/frameworks/react/ts/Page.stories.tsx +0 -26
- package/dist/cjs/frameworks/react/ts/Page.tsx +0 -73
- package/dist/cjs/frameworks/riot/1-Button.stories.js +0 -52
- package/dist/cjs/frameworks/riot/MyButton.tag +0 -24
- package/dist/cjs/frameworks/server/button.stories.json +0 -32
- package/dist/cjs/frameworks/server/header.stories.json +0 -15
- package/dist/cjs/frameworks/server/page.stories.json +0 -15
- package/dist/cjs/frameworks/svelte/Button.stories.js +0 -51
- package/dist/cjs/frameworks/svelte/Button.svelte +0 -42
- package/dist/cjs/frameworks/svelte/Header.stories.js +0 -35
- package/dist/cjs/frameworks/svelte/Header.svelte +0 -51
- package/dist/cjs/frameworks/svelte/Page.stories.js +0 -27
- package/dist/cjs/frameworks/svelte/Page.svelte +0 -63
- package/dist/cjs/frameworks/vue/Button.stories.js +0 -46
- package/dist/cjs/frameworks/vue/Button.vue +0 -54
- package/dist/cjs/frameworks/vue/Header.stories.js +0 -27
- package/dist/cjs/frameworks/vue/Header.vue +0 -60
- package/dist/cjs/frameworks/vue/Page.stories.js +0 -27
- package/dist/cjs/frameworks/vue/Page.vue +0 -88
- package/dist/cjs/frameworks/vue3/Button.stories.js +0 -52
- package/dist/cjs/frameworks/vue3/Button.vue +0 -52
- package/dist/cjs/frameworks/vue3/Header.stories.js +0 -34
- package/dist/cjs/frameworks/vue3/Header.vue +0 -50
- package/dist/cjs/frameworks/vue3/Page.stories.js +0 -29
- package/dist/cjs/frameworks/vue3/Page.vue +0 -88
- package/dist/cjs/frameworks/web-components/js/Button.js +0 -21
- package/dist/cjs/frameworks/web-components/js/Button.stories.js +0 -42
- package/dist/cjs/frameworks/web-components/js/Header.js +0 -45
- package/dist/cjs/frameworks/web-components/js/Header.stories.js +0 -15
- package/dist/cjs/frameworks/web-components/js/Page.js +0 -61
- package/dist/cjs/frameworks/web-components/js/Page.stories.js +0 -19
- package/dist/cjs/frameworks/web-components/ts/Button.stories.ts +0 -43
- package/dist/cjs/frameworks/web-components/ts/Button.ts +0 -43
- package/dist/cjs/frameworks/web-components/ts/Header.stories.ts +0 -16
- package/dist/cjs/frameworks/web-components/ts/Header.ts +0 -52
- package/dist/cjs/frameworks/web-components/ts/Page.stories.ts +0 -20
- package/dist/cjs/frameworks/web-components/ts/Page.ts +0 -68
- package/dist/esm/frameworks/angular/Button.stories.ts +0 -44
- package/dist/esm/frameworks/angular/Header.stories.ts +0 -35
- package/dist/esm/frameworks/angular/Page.stories.ts +0 -36
- package/dist/esm/frameworks/angular/User.ts +0 -2
- package/dist/esm/frameworks/angular/button.component.ts +0 -53
- package/dist/esm/frameworks/angular/header.component.ts +0 -75
- package/dist/esm/frameworks/angular/page.component.ts +0 -77
- package/dist/esm/frameworks/aurelia/1-Button.stories.ts +0 -49
- package/dist/esm/frameworks/aurelia/button.ts +0 -28
- package/dist/esm/frameworks/common/Introduction.stories.mdx +0 -211
- package/dist/esm/frameworks/common/assets/code-brackets.svg +0 -1
- package/dist/esm/frameworks/common/assets/colors.svg +0 -1
- package/dist/esm/frameworks/common/assets/comments.svg +0 -1
- package/dist/esm/frameworks/common/assets/direction.svg +0 -1
- package/dist/esm/frameworks/common/assets/flow.svg +0 -1
- package/dist/esm/frameworks/common/assets/plugin.svg +0 -1
- package/dist/esm/frameworks/common/assets/repo.svg +0 -1
- package/dist/esm/frameworks/common/assets/stackalt.svg +0 -1
- package/dist/esm/frameworks/common/button.css +0 -30
- package/dist/esm/frameworks/common/header.css +0 -32
- package/dist/esm/frameworks/common/page.css +0 -69
- package/dist/esm/frameworks/ember/1-Button.stories.js +0 -57
- package/dist/esm/frameworks/html/js/Button.js +0 -21
- package/dist/esm/frameworks/html/js/Button.stories.js +0 -48
- package/dist/esm/frameworks/html/js/Header.js +0 -47
- package/dist/esm/frameworks/html/js/Header.stories.js +0 -27
- package/dist/esm/frameworks/html/js/Page.js +0 -94
- package/dist/esm/frameworks/html/js/Page.stories.js +0 -23
- package/dist/esm/frameworks/html/ts/Button.stories.ts +0 -49
- package/dist/esm/frameworks/html/ts/Button.ts +0 -51
- package/dist/esm/frameworks/html/ts/Header.stories.ts +0 -26
- package/dist/esm/frameworks/html/ts/Header.ts +0 -54
- package/dist/esm/frameworks/html/ts/Page.stories.ts +0 -24
- package/dist/esm/frameworks/html/ts/Page.ts +0 -98
- package/dist/esm/frameworks/marionette/index.stories.js +0 -20
- package/dist/esm/frameworks/marko/1-Button.stories.js +0 -24
- package/dist/esm/frameworks/marko/Button.marko +0 -13
- package/dist/esm/frameworks/mithril/Button.js +0 -22
- package/dist/esm/frameworks/mithril/Button.stories.js +0 -43
- package/dist/esm/frameworks/mithril/Header.js +0 -51
- package/dist/esm/frameworks/mithril/Header.stories.js +0 -20
- package/dist/esm/frameworks/mithril/Page.js +0 -70
- package/dist/esm/frameworks/mithril/Page.stories.js +0 -24
- package/dist/esm/frameworks/preact/Button.jsx +0 -51
- package/dist/esm/frameworks/preact/Button.stories.jsx +0 -41
- package/dist/esm/frameworks/preact/Header.jsx +0 -58
- package/dist/esm/frameworks/preact/Header.stories.jsx +0 -29
- package/dist/esm/frameworks/preact/Page.jsx +0 -71
- package/dist/esm/frameworks/preact/Page.stories.jsx +0 -26
- package/dist/esm/frameworks/rax/Button.js +0 -26
- package/dist/esm/frameworks/rax/Button.stories.js +0 -40
- package/dist/esm/frameworks/rax/Header.js +0 -44
- package/dist/esm/frameworks/rax/Header.stories.js +0 -17
- package/dist/esm/frameworks/rax/Page.js +0 -64
- package/dist/esm/frameworks/rax/Page.stories.js +0 -21
- package/dist/esm/frameworks/react/js/Button.jsx +0 -50
- package/dist/esm/frameworks/react/js/Button.stories.jsx +0 -40
- package/dist/esm/frameworks/react/js/Header.jsx +0 -57
- package/dist/esm/frameworks/react/js/Header.stories.jsx +0 -24
- package/dist/esm/frameworks/react/js/Page.jsx +0 -69
- package/dist/esm/frameworks/react/js/Page.stories.jsx +0 -25
- package/dist/esm/frameworks/react/ts/Button.stories.tsx +0 -41
- package/dist/esm/frameworks/react/ts/Button.tsx +0 -48
- package/dist/esm/frameworks/react/ts/Header.stories.tsx +0 -25
- package/dist/esm/frameworks/react/ts/Header.tsx +0 -56
- package/dist/esm/frameworks/react/ts/Page.stories.tsx +0 -26
- package/dist/esm/frameworks/react/ts/Page.tsx +0 -73
- package/dist/esm/frameworks/riot/1-Button.stories.js +0 -52
- package/dist/esm/frameworks/riot/MyButton.tag +0 -24
- package/dist/esm/frameworks/server/button.stories.json +0 -32
- package/dist/esm/frameworks/server/header.stories.json +0 -15
- package/dist/esm/frameworks/server/page.stories.json +0 -15
- package/dist/esm/frameworks/svelte/Button.stories.js +0 -51
- package/dist/esm/frameworks/svelte/Button.svelte +0 -42
- package/dist/esm/frameworks/svelte/Header.stories.js +0 -35
- package/dist/esm/frameworks/svelte/Header.svelte +0 -51
- package/dist/esm/frameworks/svelte/Page.stories.js +0 -27
- package/dist/esm/frameworks/svelte/Page.svelte +0 -63
- package/dist/esm/frameworks/vue/Button.stories.js +0 -46
- package/dist/esm/frameworks/vue/Button.vue +0 -54
- package/dist/esm/frameworks/vue/Header.stories.js +0 -27
- package/dist/esm/frameworks/vue/Header.vue +0 -60
- package/dist/esm/frameworks/vue/Page.stories.js +0 -27
- package/dist/esm/frameworks/vue/Page.vue +0 -88
- package/dist/esm/frameworks/vue3/Button.stories.js +0 -52
- package/dist/esm/frameworks/vue3/Button.vue +0 -52
- package/dist/esm/frameworks/vue3/Header.stories.js +0 -34
- package/dist/esm/frameworks/vue3/Header.vue +0 -50
- package/dist/esm/frameworks/vue3/Page.stories.js +0 -29
- package/dist/esm/frameworks/vue3/Page.vue +0 -88
- package/dist/esm/frameworks/web-components/js/Button.js +0 -21
- package/dist/esm/frameworks/web-components/js/Button.stories.js +0 -42
- package/dist/esm/frameworks/web-components/js/Header.js +0 -45
- package/dist/esm/frameworks/web-components/js/Header.stories.js +0 -15
- package/dist/esm/frameworks/web-components/js/Page.js +0 -61
- package/dist/esm/frameworks/web-components/js/Page.stories.js +0 -19
- package/dist/esm/frameworks/web-components/ts/Button.stories.ts +0 -43
- package/dist/esm/frameworks/web-components/ts/Button.ts +0 -43
- package/dist/esm/frameworks/web-components/ts/Header.stories.ts +0 -16
- package/dist/esm/frameworks/web-components/ts/Header.ts +0 -52
- package/dist/esm/frameworks/web-components/ts/Page.stories.ts +0 -20
- package/dist/esm/frameworks/web-components/ts/Page.ts +0 -68
package/dist/esm/initiate.js
CHANGED
|
@@ -1,74 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
var _EMBER = _interopRequireDefault(require("./generators/EMBER"));
|
|
31
|
-
|
|
32
|
-
var _REACT = _interopRequireDefault(require("./generators/REACT"));
|
|
33
|
-
|
|
34
|
-
var _REACT_NATIVE = _interopRequireDefault(require("./generators/REACT_NATIVE"));
|
|
35
|
-
|
|
36
|
-
var _REACT_SCRIPTS = _interopRequireDefault(require("./generators/REACT_SCRIPTS"));
|
|
37
|
-
|
|
38
|
-
var _SFC_VUE = _interopRequireDefault(require("./generators/SFC_VUE"));
|
|
39
|
-
|
|
40
|
-
var _VUE = _interopRequireDefault(require("./generators/VUE"));
|
|
41
|
-
|
|
42
|
-
var _VUE2 = _interopRequireDefault(require("./generators/VUE3"));
|
|
43
|
-
|
|
44
|
-
var _WEBPACK_REACT = _interopRequireDefault(require("./generators/WEBPACK_REACT"));
|
|
45
|
-
|
|
46
|
-
var _MITHRIL = _interopRequireDefault(require("./generators/MITHRIL"));
|
|
47
|
-
|
|
48
|
-
var _MARIONETTE = _interopRequireDefault(require("./generators/MARIONETTE"));
|
|
49
|
-
|
|
50
|
-
var _MARKO = _interopRequireDefault(require("./generators/MARKO"));
|
|
51
|
-
|
|
52
|
-
var _HTML = _interopRequireDefault(require("./generators/HTML"));
|
|
53
|
-
|
|
54
|
-
var _WEBCOMPONENTS = _interopRequireDefault(require("./generators/WEB-COMPONENTS"));
|
|
55
|
-
|
|
56
|
-
var _RIOT = _interopRequireDefault(require("./generators/RIOT"));
|
|
57
|
-
|
|
58
|
-
var _PREACT = _interopRequireDefault(require("./generators/PREACT"));
|
|
59
|
-
|
|
60
|
-
var _SVELTE = _interopRequireDefault(require("./generators/SVELTE"));
|
|
61
|
-
|
|
62
|
-
var _RAX = _interopRequireDefault(require("./generators/RAX"));
|
|
63
|
-
|
|
64
|
-
var _SERVER = _interopRequireDefault(require("./generators/SERVER"));
|
|
65
|
-
|
|
66
|
-
var _jsPackageManager = require("./js-package-manager");
|
|
67
|
-
|
|
68
|
-
var _automigrate = require("./automigrate");
|
|
69
|
-
|
|
70
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
71
|
-
|
|
1
|
+
import { UpdateNotifier } from 'update-notifier';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import prompts from 'prompts';
|
|
4
|
+
import { telemetry } from '@storybook/telemetry';
|
|
5
|
+
import { installableProjectTypes, ProjectType } from './project_types';
|
|
6
|
+
import { detect, isStorybookInstalled, detectLanguage, detectBuilder } from './detect';
|
|
7
|
+
import { commandLog, codeLog, paddedLog } from './helpers';
|
|
8
|
+
import angularGenerator from './generators/ANGULAR';
|
|
9
|
+
import aureliaGenerator from './generators/AURELIA';
|
|
10
|
+
import emberGenerator from './generators/EMBER';
|
|
11
|
+
import reactGenerator from './generators/REACT';
|
|
12
|
+
import reactNativeGenerator from './generators/REACT_NATIVE';
|
|
13
|
+
import reactScriptsGenerator from './generators/REACT_SCRIPTS';
|
|
14
|
+
import sfcVueGenerator from './generators/SFC_VUE';
|
|
15
|
+
import vueGenerator from './generators/VUE';
|
|
16
|
+
import vue3Generator from './generators/VUE3';
|
|
17
|
+
import webpackReactGenerator from './generators/WEBPACK_REACT';
|
|
18
|
+
import mithrilGenerator from './generators/MITHRIL';
|
|
19
|
+
import marionetteGenerator from './generators/MARIONETTE';
|
|
20
|
+
import markoGenerator from './generators/MARKO';
|
|
21
|
+
import htmlGenerator from './generators/HTML';
|
|
22
|
+
import webComponentsGenerator from './generators/WEB-COMPONENTS';
|
|
23
|
+
import riotGenerator from './generators/RIOT';
|
|
24
|
+
import preactGenerator from './generators/PREACT';
|
|
25
|
+
import svelteGenerator from './generators/SVELTE';
|
|
26
|
+
import raxGenerator from './generators/RAX';
|
|
27
|
+
import serverGenerator from './generators/SERVER';
|
|
28
|
+
import { JsPackageManagerFactory } from './js-package-manager';
|
|
29
|
+
import { automigrate } from './automigrate';
|
|
72
30
|
const logger = console;
|
|
73
31
|
|
|
74
32
|
const installStorybook = (projectType, packageManager, options) => {
|
|
@@ -76,10 +34,10 @@ const installStorybook = (projectType, packageManager, options) => {
|
|
|
76
34
|
installAsDevDependencies: true,
|
|
77
35
|
skipInstall: options.skipInstall
|
|
78
36
|
};
|
|
79
|
-
const language =
|
|
37
|
+
const language = detectLanguage();
|
|
80
38
|
const generatorOptions = {
|
|
81
39
|
language,
|
|
82
|
-
builder: options.builder ||
|
|
40
|
+
builder: options.builder || detectBuilder(packageManager),
|
|
83
41
|
linkable: !!options.linkable,
|
|
84
42
|
commonJs: options.commonJs,
|
|
85
43
|
pnp: options.usePnp
|
|
@@ -87,99 +45,99 @@ const installStorybook = (projectType, packageManager, options) => {
|
|
|
87
45
|
|
|
88
46
|
const runGenerator = async () => {
|
|
89
47
|
switch (projectType) {
|
|
90
|
-
case
|
|
48
|
+
case ProjectType.ALREADY_HAS_STORYBOOK:
|
|
91
49
|
logger.log();
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
50
|
+
paddedLog('There seems to be a Storybook already available in this project.');
|
|
51
|
+
paddedLog('Apply following command to force:\n');
|
|
52
|
+
codeLog(['sb init [options] -f']); // Add a new line for the clear visibility.
|
|
95
53
|
|
|
96
54
|
logger.log();
|
|
97
55
|
return Promise.resolve();
|
|
98
56
|
|
|
99
|
-
case
|
|
100
|
-
return (
|
|
57
|
+
case ProjectType.REACT_SCRIPTS:
|
|
58
|
+
return reactScriptsGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Create React App" based project'));
|
|
101
59
|
|
|
102
|
-
case
|
|
103
|
-
return (
|
|
60
|
+
case ProjectType.REACT:
|
|
61
|
+
return reactGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "React" app\n'));
|
|
104
62
|
|
|
105
|
-
case
|
|
63
|
+
case ProjectType.REACT_NATIVE:
|
|
106
64
|
{
|
|
107
65
|
return (options.yes ? Promise.resolve({
|
|
108
66
|
server: true
|
|
109
|
-
}) : (
|
|
67
|
+
}) : prompts([{
|
|
110
68
|
type: 'confirm',
|
|
111
69
|
name: 'server',
|
|
112
70
|
message: 'Do you want to install dependencies necessary to run Storybook server? You can manually do it later by install @storybook/react-native-server',
|
|
113
71
|
initial: false
|
|
114
72
|
}])).then(({
|
|
115
73
|
server
|
|
116
|
-
}) => (
|
|
74
|
+
}) => reactNativeGenerator(packageManager, npmOptions, server)).then(commandLog('Adding Storybook support to your "React Native" app\n'));
|
|
117
75
|
}
|
|
118
76
|
|
|
119
|
-
case
|
|
120
|
-
return (
|
|
77
|
+
case ProjectType.WEBPACK_REACT:
|
|
78
|
+
return webpackReactGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Webpack React" app\n'));
|
|
121
79
|
|
|
122
|
-
case
|
|
123
|
-
return (
|
|
80
|
+
case ProjectType.REACT_PROJECT:
|
|
81
|
+
return reactGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "React" library\n'));
|
|
124
82
|
|
|
125
|
-
case
|
|
126
|
-
return (
|
|
83
|
+
case ProjectType.SFC_VUE:
|
|
84
|
+
return sfcVueGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Single File Components Vue" app\n'));
|
|
127
85
|
|
|
128
|
-
case
|
|
129
|
-
return (
|
|
86
|
+
case ProjectType.VUE:
|
|
87
|
+
return vueGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Vue" app\n'));
|
|
130
88
|
|
|
131
|
-
case
|
|
132
|
-
return (
|
|
89
|
+
case ProjectType.VUE3:
|
|
90
|
+
return vue3Generator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Vue 3" app\n'));
|
|
133
91
|
|
|
134
|
-
case
|
|
135
|
-
return (
|
|
92
|
+
case ProjectType.ANGULAR:
|
|
93
|
+
return angularGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Angular" app\n'));
|
|
136
94
|
|
|
137
|
-
case
|
|
138
|
-
return (
|
|
95
|
+
case ProjectType.EMBER:
|
|
96
|
+
return emberGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Ember" app\n'));
|
|
139
97
|
|
|
140
|
-
case
|
|
141
|
-
return (
|
|
98
|
+
case ProjectType.MITHRIL:
|
|
99
|
+
return mithrilGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Mithril" app\n'));
|
|
142
100
|
|
|
143
|
-
case
|
|
144
|
-
return (
|
|
101
|
+
case ProjectType.MARIONETTE:
|
|
102
|
+
return marionetteGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Marionette.js" app\n'));
|
|
145
103
|
|
|
146
|
-
case
|
|
147
|
-
return (
|
|
104
|
+
case ProjectType.MARKO:
|
|
105
|
+
return markoGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Marko" app\n'));
|
|
148
106
|
|
|
149
|
-
case
|
|
150
|
-
return (
|
|
107
|
+
case ProjectType.HTML:
|
|
108
|
+
return htmlGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "HTML" app\n'));
|
|
151
109
|
|
|
152
|
-
case
|
|
153
|
-
return (
|
|
110
|
+
case ProjectType.WEB_COMPONENTS:
|
|
111
|
+
return webComponentsGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "web components" app\n'));
|
|
154
112
|
|
|
155
|
-
case
|
|
156
|
-
return (
|
|
113
|
+
case ProjectType.RIOT:
|
|
114
|
+
return riotGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "riot.js" app\n'));
|
|
157
115
|
|
|
158
|
-
case
|
|
159
|
-
return (
|
|
116
|
+
case ProjectType.PREACT:
|
|
117
|
+
return preactGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Preact" app\n'));
|
|
160
118
|
|
|
161
|
-
case
|
|
162
|
-
return (
|
|
119
|
+
case ProjectType.SVELTE:
|
|
120
|
+
return svelteGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Svelte" app\n'));
|
|
163
121
|
|
|
164
|
-
case
|
|
165
|
-
return (
|
|
122
|
+
case ProjectType.RAX:
|
|
123
|
+
return raxGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Rax" app\n'));
|
|
166
124
|
|
|
167
|
-
case
|
|
168
|
-
return (
|
|
125
|
+
case ProjectType.AURELIA:
|
|
126
|
+
return aureliaGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Aurelia" app\n'));
|
|
169
127
|
|
|
170
|
-
case
|
|
171
|
-
return (
|
|
128
|
+
case ProjectType.SERVER:
|
|
129
|
+
return serverGenerator(packageManager, npmOptions, generatorOptions).then(commandLog('Adding Storybook support to your "Server" app\n'));
|
|
172
130
|
|
|
173
|
-
case
|
|
174
|
-
|
|
175
|
-
|
|
131
|
+
case ProjectType.UNSUPPORTED:
|
|
132
|
+
paddedLog(`We detected a project type that we don't support yet.`);
|
|
133
|
+
paddedLog(`If you'd like your framework to be supported, please let use know about it at https://github.com/storybookjs/storybook/issues`); // Add a new line for the clear visibility.
|
|
176
134
|
|
|
177
135
|
logger.log();
|
|
178
136
|
return Promise.resolve();
|
|
179
137
|
|
|
180
138
|
default:
|
|
181
|
-
|
|
182
|
-
|
|
139
|
+
paddedLog(`We couldn't detect your project type. (code: ${projectType})`);
|
|
140
|
+
paddedLog('You can specify a project type explicitly via `sb init --type <type>`, see our docs on how to configure Storybook for your framework: https://storybook.js.org/docs/react/get-started/install'); // Add a new line for the clear visibility.
|
|
183
141
|
|
|
184
142
|
logger.log();
|
|
185
143
|
return projectTypeInquirer(options, packageManager);
|
|
@@ -187,24 +145,24 @@ const installStorybook = (projectType, packageManager, options) => {
|
|
|
187
145
|
};
|
|
188
146
|
|
|
189
147
|
return runGenerator().catch(ex => {
|
|
190
|
-
logger.error(`\n ${
|
|
148
|
+
logger.error(`\n ${chalk.red(ex.stack)}`);
|
|
191
149
|
process.exit(1);
|
|
192
150
|
});
|
|
193
151
|
};
|
|
194
152
|
|
|
195
153
|
const projectTypeInquirer = async (options, packageManager) => {
|
|
196
|
-
const manualAnswer = options.yes ? true : await (
|
|
154
|
+
const manualAnswer = options.yes ? true : await prompts([{
|
|
197
155
|
type: 'confirm',
|
|
198
156
|
name: 'manual',
|
|
199
157
|
message: 'Do you want to manually choose a Storybook project type to install?'
|
|
200
158
|
}]);
|
|
201
159
|
|
|
202
160
|
if (manualAnswer !== true && manualAnswer.manual) {
|
|
203
|
-
const frameworkAnswer = await (
|
|
161
|
+
const frameworkAnswer = await prompts([{
|
|
204
162
|
type: 'select',
|
|
205
163
|
name: 'manualFramework',
|
|
206
164
|
message: 'Please choose a project type from the following list:',
|
|
207
|
-
choices:
|
|
165
|
+
choices: installableProjectTypes.map(type => ({
|
|
208
166
|
title: type,
|
|
209
167
|
value: type.toUpperCase()
|
|
210
168
|
}))
|
|
@@ -215,18 +173,17 @@ const projectTypeInquirer = async (options, packageManager) => {
|
|
|
215
173
|
return Promise.resolve();
|
|
216
174
|
};
|
|
217
175
|
|
|
218
|
-
async function initiate(options, pkg) {
|
|
219
|
-
const packageManager =
|
|
220
|
-
|
|
176
|
+
export async function initiate(options, pkg) {
|
|
177
|
+
const packageManager = JsPackageManagerFactory.getPackageManager(options.useNpm);
|
|
221
178
|
const welcomeMessage = 'storybook init - the simplest way to add a Storybook to your project.';
|
|
222
|
-
logger.log(
|
|
179
|
+
logger.log(chalk.inverse(`\n ${welcomeMessage} \n`));
|
|
223
180
|
|
|
224
181
|
if (!options.disableTelemetry) {
|
|
225
|
-
|
|
182
|
+
telemetry('init');
|
|
226
183
|
} // Update notify code.
|
|
227
184
|
|
|
228
185
|
|
|
229
|
-
new
|
|
186
|
+
new UpdateNotifier({
|
|
230
187
|
pkg,
|
|
231
188
|
updateCheckInterval: 1000 * 60 * 60 // every hour (we could increase this later on.)
|
|
232
189
|
|
|
@@ -234,26 +191,24 @@ async function initiate(options, pkg) {
|
|
|
234
191
|
let projectType;
|
|
235
192
|
const projectTypeProvided = options.type;
|
|
236
193
|
const infoText = projectTypeProvided ? `Installing Storybook for user specified project type: ${projectTypeProvided}` : 'Detecting project type';
|
|
237
|
-
const done =
|
|
194
|
+
const done = commandLog(infoText);
|
|
238
195
|
const packageJson = packageManager.retrievePackageJson();
|
|
239
196
|
const isEsm = packageJson && packageJson.type === 'module';
|
|
240
197
|
|
|
241
198
|
try {
|
|
242
199
|
if (projectTypeProvided) {
|
|
243
|
-
if (
|
|
244
|
-
const storybookInstalled =
|
|
245
|
-
projectType = storybookInstalled ?
|
|
200
|
+
if (installableProjectTypes.includes(projectTypeProvided)) {
|
|
201
|
+
const storybookInstalled = isStorybookInstalled(packageJson, options.force);
|
|
202
|
+
projectType = storybookInstalled ? ProjectType.ALREADY_HAS_STORYBOOK : projectTypeProvided.toUpperCase();
|
|
246
203
|
} else {
|
|
247
204
|
done(`The provided project type was not recognized by Storybook: ${projectTypeProvided}`);
|
|
248
205
|
logger.log(`\nThe project types currently supported by Storybook are:\n`);
|
|
249
|
-
|
|
250
|
-
_project_types.installableProjectTypes.sort().forEach(framework => (0, _helpers.paddedLog)(`- ${framework}`));
|
|
251
|
-
|
|
206
|
+
installableProjectTypes.sort().forEach(framework => paddedLog(`- ${framework}`));
|
|
252
207
|
logger.log();
|
|
253
208
|
process.exit(1);
|
|
254
209
|
}
|
|
255
210
|
} else {
|
|
256
|
-
projectType =
|
|
211
|
+
projectType = detect(options);
|
|
257
212
|
}
|
|
258
213
|
} catch (ex) {
|
|
259
214
|
done(ex.message);
|
|
@@ -269,21 +224,21 @@ async function initiate(options, pkg) {
|
|
|
269
224
|
packageManager.installDependencies();
|
|
270
225
|
}
|
|
271
226
|
|
|
272
|
-
await
|
|
227
|
+
await automigrate({
|
|
273
228
|
yes: process.env.CI === 'true'
|
|
274
229
|
});
|
|
275
230
|
logger.log('\nTo run your Storybook, type:\n');
|
|
276
|
-
|
|
277
|
-
logger.log('\nFor more information visit:',
|
|
231
|
+
codeLog([packageManager.getRunStorybookCommand()]);
|
|
232
|
+
logger.log('\nFor more information visit:', chalk.cyan('https://storybook.js.org'));
|
|
278
233
|
|
|
279
|
-
if (projectType ===
|
|
234
|
+
if (projectType === ProjectType.REACT_NATIVE) {
|
|
280
235
|
const REACT_NATIVE_REPO = 'https://github.com/storybookjs/react-native';
|
|
281
236
|
logger.log();
|
|
282
|
-
logger.log(
|
|
237
|
+
logger.log(chalk.red('NOTE: installation is not 100% automated.'));
|
|
283
238
|
logger.log(`To quickly run Storybook, replace contents of your app entry with:\n`);
|
|
284
|
-
|
|
239
|
+
codeLog(["export {default} from './storybook';"]);
|
|
285
240
|
logger.log('\n For more in information, see the github readme:\n');
|
|
286
|
-
logger.log(
|
|
241
|
+
logger.log(chalk.cyan(REACT_NATIVE_REPO));
|
|
287
242
|
logger.log();
|
|
288
243
|
} // Add a new line for the clear visibility.
|
|
289
244
|
|
|
@@ -1,27 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
exports.getPackageDetails = getPackageDetails;
|
|
8
|
-
|
|
9
|
-
require("core-js/modules/es.promise.js");
|
|
10
|
-
|
|
11
|
-
var _chalk = _interopRequireDefault(require("chalk"));
|
|
12
|
-
|
|
13
|
-
var _semver = require("@storybook/semver");
|
|
14
|
-
|
|
15
|
-
var _crossSpawn = require("cross-spawn");
|
|
16
|
-
|
|
17
|
-
var _helpers = require("../helpers");
|
|
18
|
-
|
|
19
|
-
var _PackageJsonHelper = require("./PackageJsonHelper");
|
|
20
|
-
|
|
21
|
-
var _versions = _interopRequireDefault(require("../versions"));
|
|
22
|
-
|
|
23
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
24
|
-
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import { gt, satisfies } from '@storybook/semver';
|
|
3
|
+
import { sync as spawnSync } from 'cross-spawn';
|
|
4
|
+
import { commandLog } from '../helpers';
|
|
5
|
+
import { readPackageJson, writePackageJson } from './PackageJsonHelper';
|
|
6
|
+
import storybookPackagesVersions from '../versions';
|
|
25
7
|
const logger = console;
|
|
26
8
|
/**
|
|
27
9
|
* Extract package name and version from input
|
|
@@ -30,7 +12,7 @@ const logger = console;
|
|
|
30
12
|
* @return A tuple of 2 elements: [packageName, packageVersion]
|
|
31
13
|
*/
|
|
32
14
|
|
|
33
|
-
function getPackageDetails(pkg) {
|
|
15
|
+
export function getPackageDetails(pkg) {
|
|
34
16
|
const idx = pkg.lastIndexOf('@'); // If the only `@` is the first character, it is a scoped package
|
|
35
17
|
// If it isn't in the string, it will be -1
|
|
36
18
|
|
|
@@ -42,8 +24,7 @@ function getPackageDetails(pkg) {
|
|
|
42
24
|
const packageVersion = pkg.slice(idx + 1);
|
|
43
25
|
return [packageName, packageVersion];
|
|
44
26
|
}
|
|
45
|
-
|
|
46
|
-
class JsPackageManager {
|
|
27
|
+
export class JsPackageManager {
|
|
47
28
|
constructor() {
|
|
48
29
|
this.type = void 0;
|
|
49
30
|
}
|
|
@@ -52,11 +33,11 @@ class JsPackageManager {
|
|
|
52
33
|
* Install dependencies listed in `package.json`
|
|
53
34
|
*/
|
|
54
35
|
installDependencies() {
|
|
55
|
-
let done =
|
|
36
|
+
let done = commandLog('Preparing to install dependencies');
|
|
56
37
|
done();
|
|
57
38
|
logger.log();
|
|
58
39
|
logger.log();
|
|
59
|
-
done =
|
|
40
|
+
done = commandLog('Installing dependencies');
|
|
60
41
|
|
|
61
42
|
try {
|
|
62
43
|
this.runInstall();
|
|
@@ -77,10 +58,10 @@ class JsPackageManager {
|
|
|
77
58
|
let packageJson;
|
|
78
59
|
|
|
79
60
|
try {
|
|
80
|
-
packageJson =
|
|
61
|
+
packageJson = readPackageJson();
|
|
81
62
|
} catch (err) {
|
|
82
63
|
this.initPackageJson();
|
|
83
|
-
packageJson =
|
|
64
|
+
packageJson = readPackageJson();
|
|
84
65
|
}
|
|
85
66
|
|
|
86
67
|
return Object.assign({}, packageJson, {
|
|
@@ -125,7 +106,7 @@ class JsPackageManager {
|
|
|
125
106
|
packageJson.dependencies = Object.assign({}, packageJson.dependencies, dependenciesMap);
|
|
126
107
|
}
|
|
127
108
|
|
|
128
|
-
|
|
109
|
+
writePackageJson(packageJson);
|
|
129
110
|
} else {
|
|
130
111
|
try {
|
|
131
112
|
this.runAddDeps(dependencies, options.installAsDevDependencies);
|
|
@@ -178,7 +159,7 @@ class JsPackageManager {
|
|
|
178
159
|
|
|
179
160
|
if (/(@storybook|^sb$|^storybook$)/.test(packageName)) {
|
|
180
161
|
// @ts-ignore
|
|
181
|
-
current =
|
|
162
|
+
current = storybookPackagesVersions[packageName];
|
|
182
163
|
}
|
|
183
164
|
|
|
184
165
|
let latest;
|
|
@@ -187,15 +168,15 @@ class JsPackageManager {
|
|
|
187
168
|
latest = await this.latestVersion(packageName, constraint);
|
|
188
169
|
} catch (e) {
|
|
189
170
|
if (current) {
|
|
190
|
-
logger.warn(`\n ${
|
|
171
|
+
logger.warn(`\n ${chalk.yellow(e.message)}`);
|
|
191
172
|
return current;
|
|
192
173
|
}
|
|
193
174
|
|
|
194
|
-
logger.error(`\n ${
|
|
175
|
+
logger.error(`\n ${chalk.red(e.message)}`);
|
|
195
176
|
process.exit(1);
|
|
196
177
|
}
|
|
197
178
|
|
|
198
|
-
const versionToUse = current && (!constraint ||
|
|
179
|
+
const versionToUse = current && (!constraint || satisfies(current, constraint)) && gt(current, latest) ? current : latest;
|
|
199
180
|
return `^${versionToUse}`;
|
|
200
181
|
}
|
|
201
182
|
/**
|
|
@@ -214,16 +195,14 @@ class JsPackageManager {
|
|
|
214
195
|
|
|
215
196
|
const versions = await this.runGetVersions(packageName, true); // Get the latest version satisfying the constraint
|
|
216
197
|
|
|
217
|
-
return versions.reverse().find(version =>
|
|
198
|
+
return versions.reverse().find(version => satisfies(version, constraint));
|
|
218
199
|
}
|
|
219
200
|
|
|
220
201
|
addStorybookCommandInScripts(options) {
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
const
|
|
224
|
-
const
|
|
225
|
-
const buildStorybookCmd = options !== null && options !== void 0 && options.staticFolder ? `npx storybook build -s ${options.staticFolder}` : `npx storybook build`;
|
|
226
|
-
const preCommand = options !== null && options !== void 0 && options.preCommand ? this.getRunCommand(options.preCommand) : undefined;
|
|
202
|
+
const sbPort = options?.port ?? 6006;
|
|
203
|
+
const storybookCmd = options?.staticFolder ? `npx storybook dev -p ${sbPort} -s ${options.staticFolder}` : `npx storybook dev -p ${sbPort}`;
|
|
204
|
+
const buildStorybookCmd = options?.staticFolder ? `npx storybook build -s ${options.staticFolder}` : `npx storybook build`;
|
|
205
|
+
const preCommand = options?.preCommand ? this.getRunCommand(options.preCommand) : undefined;
|
|
227
206
|
this.addScripts({
|
|
228
207
|
storybook: [preCommand, storybookCmd].filter(Boolean).join(' && '),
|
|
229
208
|
'build-storybook': [preCommand, buildStorybookCmd].filter(Boolean).join(' && ')
|
|
@@ -231,12 +210,10 @@ class JsPackageManager {
|
|
|
231
210
|
}
|
|
232
211
|
|
|
233
212
|
addESLintConfig() {
|
|
234
|
-
var _packageJson$eslintCo;
|
|
235
|
-
|
|
236
213
|
const packageJson = this.retrievePackageJson();
|
|
237
|
-
|
|
214
|
+
writePackageJson(Object.assign({}, packageJson, {
|
|
238
215
|
eslintConfig: Object.assign({}, packageJson.eslintConfig, {
|
|
239
|
-
overrides: [...(
|
|
216
|
+
overrides: [...(packageJson.eslintConfig?.overrides || []), {
|
|
240
217
|
files: ['**/*.stories.*'],
|
|
241
218
|
rules: {
|
|
242
219
|
'import/no-anonymous-default-export': 'off'
|
|
@@ -248,28 +225,22 @@ class JsPackageManager {
|
|
|
248
225
|
|
|
249
226
|
addScripts(scripts) {
|
|
250
227
|
const packageJson = this.retrievePackageJson();
|
|
251
|
-
|
|
228
|
+
writePackageJson(Object.assign({}, packageJson, {
|
|
252
229
|
scripts: Object.assign({}, packageJson.scripts, scripts)
|
|
253
230
|
}));
|
|
254
231
|
}
|
|
255
232
|
|
|
256
233
|
executeCommand(command, args, stdio) {
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
const commandResult = (0, _crossSpawn.sync)(command, args, {
|
|
260
|
-
stdio: stdio !== null && stdio !== void 0 ? stdio : 'pipe',
|
|
234
|
+
const commandResult = spawnSync(command, args, {
|
|
235
|
+
stdio: stdio ?? 'pipe',
|
|
261
236
|
encoding: 'utf-8'
|
|
262
237
|
});
|
|
263
238
|
|
|
264
239
|
if (commandResult.status !== 0) {
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
throw new Error((_commandResult$stderr = commandResult.stderr) !== null && _commandResult$stderr !== void 0 ? _commandResult$stderr : '');
|
|
240
|
+
throw new Error(commandResult.stderr ?? '');
|
|
268
241
|
}
|
|
269
242
|
|
|
270
|
-
return
|
|
243
|
+
return commandResult.stdout ?? '';
|
|
271
244
|
}
|
|
272
245
|
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
exports.JsPackageManager = JsPackageManager;
|
|
246
|
+
}
|
|
@@ -1,36 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
var _crossSpawn = require("cross-spawn");
|
|
9
|
-
|
|
10
|
-
var _findUp = require("find-up");
|
|
11
|
-
|
|
12
|
-
var _NPMProxy = require("./NPMProxy");
|
|
13
|
-
|
|
14
|
-
var _Yarn2Proxy = require("./Yarn2Proxy");
|
|
15
|
-
|
|
16
|
-
var _Yarn1Proxy = require("./Yarn1Proxy");
|
|
17
|
-
|
|
18
|
-
class JsPackageManagerFactory {
|
|
1
|
+
import { sync as spawnSync } from 'cross-spawn';
|
|
2
|
+
import { sync as findUpSync } from 'find-up';
|
|
3
|
+
import { NPMProxy } from './NPMProxy';
|
|
4
|
+
import { Yarn2Proxy } from './Yarn2Proxy';
|
|
5
|
+
import { Yarn1Proxy } from './Yarn1Proxy';
|
|
6
|
+
export class JsPackageManagerFactory {
|
|
19
7
|
static getPackageManager(forceNpmUsage = false) {
|
|
20
8
|
if (forceNpmUsage) {
|
|
21
|
-
return new
|
|
9
|
+
return new NPMProxy();
|
|
22
10
|
}
|
|
23
11
|
|
|
24
12
|
const yarnVersion = getYarnVersion();
|
|
25
|
-
const hasYarnLockFile = (
|
|
13
|
+
const hasYarnLockFile = findUpSync('yarn.lock');
|
|
26
14
|
const hasNPMCommand = hasNPM();
|
|
27
15
|
|
|
28
16
|
if (yarnVersion && (hasYarnLockFile || !hasNPMCommand)) {
|
|
29
|
-
return yarnVersion === 1 ? new
|
|
17
|
+
return yarnVersion === 1 ? new Yarn1Proxy() : new Yarn2Proxy();
|
|
30
18
|
}
|
|
31
19
|
|
|
32
20
|
if (hasNPMCommand) {
|
|
33
|
-
return new
|
|
21
|
+
return new NPMProxy();
|
|
34
22
|
}
|
|
35
23
|
|
|
36
24
|
throw new Error('Unable to find a usable package manager within NPM, Yarn and Yarn 2');
|
|
@@ -38,15 +26,13 @@ class JsPackageManagerFactory {
|
|
|
38
26
|
|
|
39
27
|
}
|
|
40
28
|
|
|
41
|
-
exports.JsPackageManagerFactory = JsPackageManagerFactory;
|
|
42
|
-
|
|
43
29
|
function hasNPM() {
|
|
44
|
-
const npmVersionCommand = (
|
|
30
|
+
const npmVersionCommand = spawnSync('npm', ['--version']);
|
|
45
31
|
return npmVersionCommand.status === 0;
|
|
46
32
|
}
|
|
47
33
|
|
|
48
34
|
function getYarnVersion() {
|
|
49
|
-
const yarnVersionCommand = (
|
|
35
|
+
const yarnVersionCommand = spawnSync('yarn', ['--version']);
|
|
50
36
|
|
|
51
37
|
if (yarnVersionCommand.status !== 0) {
|
|
52
38
|
return undefined;
|