@storybook/cli 6.4.0-beta.24 → 6.4.0-beta.25
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/NpmOptions.js +1 -0
- package/dist/cjs/add.js +151 -0
- package/dist/cjs/automigrate/fixes/angular12.js +79 -0
- package/dist/cjs/automigrate/fixes/cra5.js +79 -0
- package/dist/cjs/automigrate/fixes/index.js +33 -0
- package/dist/cjs/automigrate/fixes/mainjsFramework.js +89 -0
- package/dist/cjs/automigrate/fixes/webpack5.js +156 -0
- package/dist/cjs/automigrate/helpers/getStorybookConfiguration.js +27 -0
- package/dist/cjs/automigrate/helpers/getStorybookInfo.js +94 -0
- package/dist/cjs/automigrate/index.js +72 -0
- package/dist/cjs/automigrate/types.js +1 -0
- package/dist/cjs/babel-config.js +68 -0
- package/dist/cjs/detect.js +153 -0
- package/dist/cjs/extract.js +88 -0
- package/dist/cjs/frameworks/angular/Button.stories.ts +42 -0
- package/dist/cjs/frameworks/angular/Header.stories.ts +30 -0
- package/dist/cjs/frameworks/angular/Page.stories.ts +34 -0
- package/dist/cjs/frameworks/angular/User.ts +2 -0
- package/dist/cjs/frameworks/angular/button.component.ts +53 -0
- package/dist/cjs/frameworks/angular/header.component.ts +64 -0
- package/dist/cjs/frameworks/angular/page.component.ts +91 -0
- package/dist/cjs/frameworks/aurelia/1-Button.stories.ts +49 -0
- package/dist/cjs/frameworks/aurelia/button.ts +28 -0
- package/dist/cjs/frameworks/common/Introduction.stories.mdx +211 -0
- package/dist/cjs/frameworks/common/assets/code-brackets.svg +1 -0
- package/dist/cjs/frameworks/common/assets/colors.svg +1 -0
- package/dist/cjs/frameworks/common/assets/comments.svg +1 -0
- package/dist/cjs/frameworks/common/assets/direction.svg +1 -0
- package/dist/cjs/frameworks/common/assets/flow.svg +1 -0
- package/dist/cjs/frameworks/common/assets/plugin.svg +1 -0
- package/dist/cjs/frameworks/common/assets/repo.svg +1 -0
- package/dist/cjs/frameworks/common/assets/stackalt.svg +1 -0
- package/dist/cjs/frameworks/common/button.css +30 -0
- package/dist/cjs/frameworks/common/header.css +26 -0
- package/dist/cjs/frameworks/common/page.css +69 -0
- package/dist/cjs/frameworks/ember/1-Button.stories.js +57 -0
- package/dist/cjs/frameworks/html/js/Button.js +21 -0
- package/dist/cjs/frameworks/html/js/Button.stories.js +48 -0
- package/dist/cjs/frameworks/html/js/Header.js +45 -0
- package/dist/cjs/frameworks/html/js/Header.stories.js +20 -0
- package/dist/cjs/frameworks/html/js/Page.js +67 -0
- package/dist/cjs/frameworks/html/js/Page.stories.js +24 -0
- package/dist/cjs/frameworks/html/ts/Button.stories.ts +49 -0
- package/dist/cjs/frameworks/html/ts/Button.ts +47 -0
- package/dist/cjs/frameworks/html/ts/Header.stories.ts +21 -0
- package/dist/cjs/frameworks/html/ts/Header.ts +52 -0
- package/dist/cjs/frameworks/html/ts/Page.stories.ts +26 -0
- package/dist/cjs/frameworks/html/ts/Page.ts +74 -0
- package/dist/cjs/frameworks/marionette/index.stories.js +20 -0
- package/dist/cjs/frameworks/marko/1-Button.stories.js +24 -0
- package/dist/cjs/frameworks/marko/Button.marko +13 -0
- package/dist/cjs/frameworks/mithril/Button.js +22 -0
- package/dist/cjs/frameworks/mithril/Button.stories.js +43 -0
- package/dist/cjs/frameworks/mithril/Header.js +51 -0
- package/dist/cjs/frameworks/mithril/Header.stories.js +20 -0
- package/dist/cjs/frameworks/mithril/Page.js +70 -0
- package/dist/cjs/frameworks/mithril/Page.stories.js +24 -0
- package/dist/cjs/frameworks/preact/Button.jsx +51 -0
- package/dist/cjs/frameworks/preact/Button.stories.jsx +41 -0
- package/dist/cjs/frameworks/preact/Header.jsx +53 -0
- package/dist/cjs/frameworks/preact/Header.stories.jsx +23 -0
- package/dist/cjs/frameworks/preact/Page.jsx +72 -0
- package/dist/cjs/frameworks/preact/Page.stories.jsx +23 -0
- package/dist/cjs/frameworks/rax/Button.js +26 -0
- package/dist/cjs/frameworks/rax/Button.stories.js +40 -0
- package/dist/cjs/frameworks/rax/Header.js +44 -0
- package/dist/cjs/frameworks/rax/Header.stories.js +17 -0
- package/dist/cjs/frameworks/rax/Page.js +64 -0
- package/dist/cjs/frameworks/rax/Page.stories.js +21 -0
- package/dist/cjs/frameworks/react/js/Button.jsx +50 -0
- package/dist/cjs/frameworks/react/js/Button.stories.jsx +40 -0
- package/dist/cjs/frameworks/react/js/Header.jsx +52 -0
- package/dist/cjs/frameworks/react/js/Header.stories.jsx +18 -0
- package/dist/cjs/frameworks/react/js/Page.jsx +71 -0
- package/dist/cjs/frameworks/react/js/Page.stories.jsx +22 -0
- package/dist/cjs/frameworks/react/ts/Button.stories.tsx +41 -0
- package/dist/cjs/frameworks/react/ts/Button.tsx +48 -0
- package/dist/cjs/frameworks/react/ts/Header.stories.tsx +19 -0
- package/dist/cjs/frameworks/react/ts/Header.tsx +47 -0
- package/dist/cjs/frameworks/react/ts/Page.stories.tsx +23 -0
- package/dist/cjs/frameworks/react/ts/Page.tsx +67 -0
- package/dist/cjs/frameworks/riot/1-Button.stories.js +52 -0
- package/dist/cjs/frameworks/riot/MyButton.tag +24 -0
- package/dist/cjs/frameworks/server/button.stories.json +32 -0
- package/dist/cjs/frameworks/server/header.stories.json +15 -0
- package/dist/cjs/frameworks/server/page.stories.json +15 -0
- package/dist/cjs/frameworks/svelte/Button.stories.svelte +57 -0
- package/dist/cjs/frameworks/svelte/Button.svelte +42 -0
- package/dist/cjs/frameworks/svelte/Header.stories.svelte +32 -0
- package/dist/cjs/frameworks/svelte/Header.svelte +48 -0
- package/dist/cjs/frameworks/svelte/Page.stories.svelte +32 -0
- package/dist/cjs/frameworks/svelte/Page.svelte +77 -0
- package/dist/cjs/frameworks/vue/Button.stories.js +46 -0
- package/dist/cjs/frameworks/vue/Button.vue +54 -0
- package/dist/cjs/frameworks/vue/Header.stories.js +21 -0
- package/dist/cjs/frameworks/vue/Header.vue +59 -0
- package/dist/cjs/frameworks/vue/Page.stories.js +25 -0
- package/dist/cjs/frameworks/vue/Page.vue +88 -0
- package/dist/cjs/frameworks/vue3/Button.stories.js +52 -0
- package/dist/cjs/frameworks/vue3/Button.vue +52 -0
- package/dist/cjs/frameworks/vue3/Header.stories.js +28 -0
- package/dist/cjs/frameworks/vue3/Header.vue +49 -0
- package/dist/cjs/frameworks/vue3/Page.stories.js +30 -0
- package/dist/cjs/frameworks/vue3/Page.vue +78 -0
- package/dist/cjs/frameworks/web-components/js/Button.js +21 -0
- package/dist/cjs/frameworks/web-components/js/Button.stories.js +42 -0
- package/dist/cjs/frameworks/web-components/js/Header.js +45 -0
- package/dist/cjs/frameworks/web-components/js/Header.stories.js +15 -0
- package/dist/cjs/frameworks/web-components/js/Page.js +61 -0
- package/dist/cjs/frameworks/web-components/js/Page.stories.js +19 -0
- package/dist/cjs/frameworks/web-components/ts/Button.stories.ts +43 -0
- package/dist/cjs/frameworks/web-components/ts/Button.ts +43 -0
- package/dist/cjs/frameworks/web-components/ts/Header.stories.ts +16 -0
- package/dist/cjs/frameworks/web-components/ts/Header.ts +52 -0
- package/dist/cjs/frameworks/web-components/ts/Page.stories.ts +20 -0
- package/dist/cjs/frameworks/web-components/ts/Page.ts +68 -0
- package/dist/cjs/generate.js +140 -0
- package/dist/cjs/generators/ANGULAR/angular-helpers.js +81 -0
- package/dist/cjs/generators/ANGULAR/index.js +77 -0
- package/dist/cjs/generators/ANGULAR/template-csf/.storybook/tsconfig.json +9 -0
- package/dist/cjs/generators/ANGULAR/template-csf/.storybook/typings.d.ts +4 -0
- package/dist/cjs/generators/AURELIA/index.js +43 -0
- package/dist/cjs/generators/AURELIA/template-csf/.storybook/tsconfig.json +9 -0
- package/dist/cjs/generators/AURELIA/template-csf/.storybook/typings.d.ts +4 -0
- package/dist/cjs/generators/EMBER/index.js +22 -0
- package/dist/cjs/generators/HTML/index.js +17 -0
- package/dist/cjs/generators/MARIONETTE/index.js +17 -0
- package/dist/cjs/generators/MARKO/index.js +17 -0
- package/dist/cjs/generators/METEOR/index.js +45 -0
- package/dist/cjs/generators/MITHRIL/index.js +17 -0
- package/dist/cjs/generators/PREACT/index.js +19 -0
- package/dist/cjs/generators/RAX/index.js +32 -0
- package/dist/cjs/generators/REACT/index.js +17 -0
- package/dist/cjs/generators/REACT_NATIVE/index.js +57 -0
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/addons.js +3 -0
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/index.js +25 -0
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/rn-addons.js +2 -0
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js +20 -0
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Button/index.js +17 -0
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/index.js +16 -0
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/style.js +8 -0
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/Welcome.stories.js +6 -0
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/index.js +57 -0
- package/dist/cjs/generators/REACT_NATIVE/template-csf/storybook/stories/index.js +2 -0
- package/dist/cjs/generators/REACT_SCRIPTS/index.js +61 -0
- package/dist/cjs/generators/RIOT/index.js +19 -0
- package/dist/cjs/generators/SERVER/index.js +22 -0
- package/dist/cjs/generators/SERVER/template-csf/.storybook/preview.js +5 -0
- package/dist/cjs/generators/SFC_VUE/index.js +17 -0
- package/dist/cjs/generators/SVELTE/index.js +64 -0
- package/dist/cjs/generators/UPDATE_PACKAGE_ORGANIZATIONS/index.js +78 -0
- package/dist/cjs/generators/VUE/index.js +19 -0
- package/dist/cjs/generators/VUE3/index.js +19 -0
- package/dist/cjs/generators/WEB-COMPONENTS/index.js +17 -0
- package/dist/cjs/generators/WEBPACK_REACT/index.js +17 -0
- package/dist/cjs/generators/baseGenerator.js +119 -0
- package/dist/cjs/generators/configure.js +85 -0
- package/dist/cjs/helpers.js +238 -0
- package/dist/cjs/initiate.js +287 -0
- package/dist/cjs/js-package-manager/JsPackageManager.js +273 -0
- package/dist/cjs/js-package-manager/JsPackageManagerFactory.js +57 -0
- package/dist/cjs/js-package-manager/NPMProxy.js +76 -0
- package/dist/cjs/js-package-manager/PackageJson.js +1 -0
- package/dist/cjs/js-package-manager/PackageJsonHelper.js +33 -0
- package/dist/cjs/js-package-manager/Yarn1Proxy.js +61 -0
- package/dist/cjs/js-package-manager/Yarn2Proxy.js +57 -0
- package/dist/cjs/js-package-manager/index.js +57 -0
- package/dist/cjs/link.js +98 -0
- package/dist/cjs/migrate.js +35 -0
- package/dist/cjs/project_types.js +273 -0
- package/dist/cjs/repro-generators/configs.js +148 -0
- package/dist/cjs/repro-generators/scripts.js +211 -0
- package/dist/cjs/repro.js +195 -0
- package/dist/cjs/typings.d.js +1 -0
- package/dist/cjs/upgrade.js +154 -0
- package/dist/cjs/versions.json +59 -0
- package/dist/cjs/warn.js +32 -0
- package/dist/cjs/window.d.js +1 -0
- package/dist/esm/NpmOptions.js +1 -0
- package/dist/esm/add.js +151 -0
- package/dist/esm/automigrate/fixes/angular12.js +79 -0
- package/dist/esm/automigrate/fixes/cra5.js +79 -0
- package/dist/esm/automigrate/fixes/index.js +33 -0
- package/dist/esm/automigrate/fixes/mainjsFramework.js +89 -0
- package/dist/esm/automigrate/fixes/webpack5.js +156 -0
- package/dist/esm/automigrate/helpers/getStorybookConfiguration.js +27 -0
- package/dist/esm/automigrate/helpers/getStorybookInfo.js +94 -0
- package/dist/esm/automigrate/index.js +72 -0
- package/dist/esm/automigrate/types.js +1 -0
- package/dist/esm/babel-config.js +68 -0
- package/dist/esm/detect.js +153 -0
- package/dist/esm/extract.js +88 -0
- package/dist/esm/frameworks/angular/Button.stories.ts +42 -0
- package/dist/esm/frameworks/angular/Header.stories.ts +30 -0
- package/dist/esm/frameworks/angular/Page.stories.ts +34 -0
- package/dist/esm/frameworks/angular/User.ts +2 -0
- package/dist/esm/frameworks/angular/button.component.ts +53 -0
- package/dist/esm/frameworks/angular/header.component.ts +64 -0
- package/dist/esm/frameworks/angular/page.component.ts +91 -0
- package/dist/esm/frameworks/aurelia/1-Button.stories.ts +49 -0
- package/dist/esm/frameworks/aurelia/button.ts +28 -0
- package/dist/esm/frameworks/common/Introduction.stories.mdx +211 -0
- package/dist/esm/frameworks/common/assets/code-brackets.svg +1 -0
- package/dist/esm/frameworks/common/assets/colors.svg +1 -0
- package/dist/esm/frameworks/common/assets/comments.svg +1 -0
- package/dist/esm/frameworks/common/assets/direction.svg +1 -0
- package/dist/esm/frameworks/common/assets/flow.svg +1 -0
- package/dist/esm/frameworks/common/assets/plugin.svg +1 -0
- package/dist/esm/frameworks/common/assets/repo.svg +1 -0
- package/dist/esm/frameworks/common/assets/stackalt.svg +1 -0
- package/dist/esm/frameworks/common/button.css +30 -0
- package/dist/esm/frameworks/common/header.css +26 -0
- package/dist/esm/frameworks/common/page.css +69 -0
- package/dist/esm/frameworks/ember/1-Button.stories.js +57 -0
- package/dist/esm/frameworks/html/js/Button.js +21 -0
- package/dist/esm/frameworks/html/js/Button.stories.js +48 -0
- package/dist/esm/frameworks/html/js/Header.js +45 -0
- package/dist/esm/frameworks/html/js/Header.stories.js +20 -0
- package/dist/esm/frameworks/html/js/Page.js +67 -0
- package/dist/esm/frameworks/html/js/Page.stories.js +24 -0
- package/dist/esm/frameworks/html/ts/Button.stories.ts +49 -0
- package/dist/esm/frameworks/html/ts/Button.ts +47 -0
- package/dist/esm/frameworks/html/ts/Header.stories.ts +21 -0
- package/dist/esm/frameworks/html/ts/Header.ts +52 -0
- package/dist/esm/frameworks/html/ts/Page.stories.ts +26 -0
- package/dist/esm/frameworks/html/ts/Page.ts +74 -0
- package/dist/esm/frameworks/marionette/index.stories.js +20 -0
- package/dist/esm/frameworks/marko/1-Button.stories.js +24 -0
- package/dist/esm/frameworks/marko/Button.marko +13 -0
- package/dist/esm/frameworks/mithril/Button.js +22 -0
- package/dist/esm/frameworks/mithril/Button.stories.js +43 -0
- package/dist/esm/frameworks/mithril/Header.js +51 -0
- package/dist/esm/frameworks/mithril/Header.stories.js +20 -0
- package/dist/esm/frameworks/mithril/Page.js +70 -0
- package/dist/esm/frameworks/mithril/Page.stories.js +24 -0
- package/dist/esm/frameworks/preact/Button.jsx +51 -0
- package/dist/esm/frameworks/preact/Button.stories.jsx +41 -0
- package/dist/esm/frameworks/preact/Header.jsx +53 -0
- package/dist/esm/frameworks/preact/Header.stories.jsx +23 -0
- package/dist/esm/frameworks/preact/Page.jsx +72 -0
- package/dist/esm/frameworks/preact/Page.stories.jsx +23 -0
- package/dist/esm/frameworks/rax/Button.js +26 -0
- package/dist/esm/frameworks/rax/Button.stories.js +40 -0
- package/dist/esm/frameworks/rax/Header.js +44 -0
- package/dist/esm/frameworks/rax/Header.stories.js +17 -0
- package/dist/esm/frameworks/rax/Page.js +64 -0
- package/dist/esm/frameworks/rax/Page.stories.js +21 -0
- package/dist/esm/frameworks/react/js/Button.jsx +50 -0
- package/dist/esm/frameworks/react/js/Button.stories.jsx +40 -0
- package/dist/esm/frameworks/react/js/Header.jsx +52 -0
- package/dist/esm/frameworks/react/js/Header.stories.jsx +18 -0
- package/dist/esm/frameworks/react/js/Page.jsx +71 -0
- package/dist/esm/frameworks/react/js/Page.stories.jsx +22 -0
- package/dist/esm/frameworks/react/ts/Button.stories.tsx +41 -0
- package/dist/esm/frameworks/react/ts/Button.tsx +48 -0
- package/dist/esm/frameworks/react/ts/Header.stories.tsx +19 -0
- package/dist/esm/frameworks/react/ts/Header.tsx +47 -0
- package/dist/esm/frameworks/react/ts/Page.stories.tsx +23 -0
- package/dist/esm/frameworks/react/ts/Page.tsx +67 -0
- package/dist/esm/frameworks/riot/1-Button.stories.js +52 -0
- package/dist/esm/frameworks/riot/MyButton.tag +24 -0
- package/dist/esm/frameworks/server/button.stories.json +32 -0
- package/dist/esm/frameworks/server/header.stories.json +15 -0
- package/dist/esm/frameworks/server/page.stories.json +15 -0
- package/dist/esm/frameworks/svelte/Button.stories.svelte +57 -0
- package/dist/esm/frameworks/svelte/Button.svelte +42 -0
- package/dist/esm/frameworks/svelte/Header.stories.svelte +32 -0
- package/dist/esm/frameworks/svelte/Header.svelte +48 -0
- package/dist/esm/frameworks/svelte/Page.stories.svelte +32 -0
- package/dist/esm/frameworks/svelte/Page.svelte +77 -0
- package/dist/esm/frameworks/vue/Button.stories.js +46 -0
- package/dist/esm/frameworks/vue/Button.vue +54 -0
- package/dist/esm/frameworks/vue/Header.stories.js +21 -0
- package/dist/esm/frameworks/vue/Header.vue +59 -0
- package/dist/esm/frameworks/vue/Page.stories.js +25 -0
- package/dist/esm/frameworks/vue/Page.vue +88 -0
- package/dist/esm/frameworks/vue3/Button.stories.js +52 -0
- package/dist/esm/frameworks/vue3/Button.vue +52 -0
- package/dist/esm/frameworks/vue3/Header.stories.js +28 -0
- package/dist/esm/frameworks/vue3/Header.vue +49 -0
- package/dist/esm/frameworks/vue3/Page.stories.js +30 -0
- package/dist/esm/frameworks/vue3/Page.vue +78 -0
- package/dist/esm/frameworks/web-components/js/Button.js +21 -0
- package/dist/esm/frameworks/web-components/js/Button.stories.js +42 -0
- package/dist/esm/frameworks/web-components/js/Header.js +45 -0
- package/dist/esm/frameworks/web-components/js/Header.stories.js +15 -0
- package/dist/esm/frameworks/web-components/js/Page.js +61 -0
- package/dist/esm/frameworks/web-components/js/Page.stories.js +19 -0
- package/dist/esm/frameworks/web-components/ts/Button.stories.ts +43 -0
- package/dist/esm/frameworks/web-components/ts/Button.ts +43 -0
- package/dist/esm/frameworks/web-components/ts/Header.stories.ts +16 -0
- package/dist/esm/frameworks/web-components/ts/Header.ts +52 -0
- package/dist/esm/frameworks/web-components/ts/Page.stories.ts +20 -0
- package/dist/esm/frameworks/web-components/ts/Page.ts +68 -0
- package/dist/esm/generate.js +140 -0
- package/dist/esm/generators/ANGULAR/angular-helpers.js +81 -0
- package/dist/esm/generators/ANGULAR/index.js +77 -0
- package/dist/esm/generators/ANGULAR/template-csf/.storybook/tsconfig.json +9 -0
- package/dist/esm/generators/ANGULAR/template-csf/.storybook/typings.d.ts +4 -0
- package/dist/esm/generators/AURELIA/index.js +43 -0
- package/dist/esm/generators/AURELIA/template-csf/.storybook/tsconfig.json +9 -0
- package/dist/esm/generators/AURELIA/template-csf/.storybook/typings.d.ts +4 -0
- package/dist/esm/generators/EMBER/index.js +22 -0
- package/dist/esm/generators/HTML/index.js +17 -0
- package/dist/esm/generators/MARIONETTE/index.js +17 -0
- package/dist/esm/generators/MARKO/index.js +17 -0
- package/dist/esm/generators/METEOR/index.js +45 -0
- package/dist/esm/generators/MITHRIL/index.js +17 -0
- package/dist/esm/generators/PREACT/index.js +19 -0
- package/dist/esm/generators/RAX/index.js +32 -0
- package/dist/esm/generators/REACT/index.js +17 -0
- package/dist/esm/generators/REACT_NATIVE/index.js +57 -0
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/addons.js +3 -0
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/index.js +25 -0
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/rn-addons.js +2 -0
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js +20 -0
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Button/index.js +17 -0
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/index.js +16 -0
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/style.js +8 -0
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/Welcome.stories.js +6 -0
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/index.js +57 -0
- package/dist/esm/generators/REACT_NATIVE/template-csf/storybook/stories/index.js +2 -0
- package/dist/esm/generators/REACT_SCRIPTS/index.js +61 -0
- package/dist/esm/generators/RIOT/index.js +19 -0
- package/dist/esm/generators/SERVER/index.js +22 -0
- package/dist/esm/generators/SERVER/template-csf/.storybook/preview.js +5 -0
- package/dist/esm/generators/SFC_VUE/index.js +17 -0
- package/dist/esm/generators/SVELTE/index.js +64 -0
- package/dist/esm/generators/UPDATE_PACKAGE_ORGANIZATIONS/index.js +78 -0
- package/dist/esm/generators/VUE/index.js +19 -0
- package/dist/esm/generators/VUE3/index.js +19 -0
- package/dist/esm/generators/WEB-COMPONENTS/index.js +17 -0
- package/dist/esm/generators/WEBPACK_REACT/index.js +17 -0
- package/dist/esm/generators/baseGenerator.js +119 -0
- package/dist/esm/generators/configure.js +85 -0
- package/dist/esm/helpers.js +238 -0
- package/dist/esm/initiate.js +287 -0
- package/dist/esm/js-package-manager/JsPackageManager.js +273 -0
- package/dist/esm/js-package-manager/JsPackageManagerFactory.js +57 -0
- package/dist/esm/js-package-manager/NPMProxy.js +76 -0
- package/dist/esm/js-package-manager/PackageJson.js +1 -0
- package/dist/esm/js-package-manager/PackageJsonHelper.js +33 -0
- package/dist/esm/js-package-manager/Yarn1Proxy.js +61 -0
- package/dist/esm/js-package-manager/Yarn2Proxy.js +57 -0
- package/dist/esm/js-package-manager/index.js +57 -0
- package/dist/esm/link.js +98 -0
- package/dist/esm/migrate.js +35 -0
- package/dist/esm/project_types.js +273 -0
- package/dist/esm/repro-generators/configs.js +148 -0
- package/dist/esm/repro-generators/scripts.js +211 -0
- package/dist/esm/repro.js +195 -0
- package/dist/esm/typings.d.js +1 -0
- package/dist/esm/upgrade.js +154 -0
- package/dist/esm/versions.json +59 -0
- package/dist/esm/warn.js +32 -0
- package/dist/esm/window.d.js +1 -0
- package/dist/modern/NpmOptions.js +1 -0
- package/dist/modern/add.js +151 -0
- package/dist/modern/automigrate/fixes/angular12.js +79 -0
- package/dist/modern/automigrate/fixes/cra5.js +79 -0
- package/dist/modern/automigrate/fixes/index.js +33 -0
- package/dist/modern/automigrate/fixes/mainjsFramework.js +89 -0
- package/dist/modern/automigrate/fixes/webpack5.js +156 -0
- package/dist/modern/automigrate/helpers/getStorybookConfiguration.js +27 -0
- package/dist/modern/automigrate/helpers/getStorybookInfo.js +94 -0
- package/dist/modern/automigrate/index.js +72 -0
- package/dist/modern/automigrate/types.js +1 -0
- package/dist/modern/babel-config.js +68 -0
- package/dist/modern/detect.js +153 -0
- package/dist/modern/extract.js +88 -0
- package/dist/modern/frameworks/common/Introduction.stories.mdx +211 -0
- package/dist/modern/frameworks/common/assets/code-brackets.svg +1 -0
- package/dist/modern/frameworks/common/assets/colors.svg +1 -0
- package/dist/modern/frameworks/common/assets/comments.svg +1 -0
- package/dist/modern/frameworks/common/assets/direction.svg +1 -0
- package/dist/modern/frameworks/common/assets/flow.svg +1 -0
- package/dist/modern/frameworks/common/assets/plugin.svg +1 -0
- package/dist/modern/frameworks/common/assets/repo.svg +1 -0
- package/dist/modern/frameworks/common/assets/stackalt.svg +1 -0
- package/dist/modern/frameworks/common/button.css +30 -0
- package/dist/modern/frameworks/common/header.css +26 -0
- package/dist/modern/frameworks/common/page.css +69 -0
- package/dist/modern/frameworks/ember/1-Button.stories.js +57 -0
- package/dist/modern/frameworks/html/js/Button.js +21 -0
- package/dist/modern/frameworks/html/js/Button.stories.js +48 -0
- package/dist/modern/frameworks/html/js/Header.js +45 -0
- package/dist/modern/frameworks/html/js/Header.stories.js +20 -0
- package/dist/modern/frameworks/html/js/Page.js +67 -0
- package/dist/modern/frameworks/html/js/Page.stories.js +24 -0
- package/dist/modern/frameworks/marionette/index.stories.js +20 -0
- package/dist/modern/frameworks/marko/1-Button.stories.js +24 -0
- package/dist/modern/frameworks/marko/Button.marko +13 -0
- package/dist/modern/frameworks/mithril/Button.js +22 -0
- package/dist/modern/frameworks/mithril/Button.stories.js +43 -0
- package/dist/modern/frameworks/mithril/Header.js +51 -0
- package/dist/modern/frameworks/mithril/Header.stories.js +20 -0
- package/dist/modern/frameworks/mithril/Page.js +70 -0
- package/dist/modern/frameworks/mithril/Page.stories.js +24 -0
- package/dist/modern/frameworks/preact/Button.jsx +51 -0
- package/dist/modern/frameworks/preact/Button.stories.jsx +41 -0
- package/dist/modern/frameworks/preact/Header.jsx +53 -0
- package/dist/modern/frameworks/preact/Header.stories.jsx +23 -0
- package/dist/modern/frameworks/preact/Page.jsx +72 -0
- package/dist/modern/frameworks/preact/Page.stories.jsx +23 -0
- package/dist/modern/frameworks/rax/Button.js +26 -0
- package/dist/modern/frameworks/rax/Button.stories.js +40 -0
- package/dist/modern/frameworks/rax/Header.js +44 -0
- package/dist/modern/frameworks/rax/Header.stories.js +17 -0
- package/dist/modern/frameworks/rax/Page.js +64 -0
- package/dist/modern/frameworks/rax/Page.stories.js +21 -0
- package/dist/modern/frameworks/react/js/Button.jsx +50 -0
- package/dist/modern/frameworks/react/js/Button.stories.jsx +40 -0
- package/dist/modern/frameworks/react/js/Header.jsx +52 -0
- package/dist/modern/frameworks/react/js/Header.stories.jsx +18 -0
- package/dist/modern/frameworks/react/js/Page.jsx +71 -0
- package/dist/modern/frameworks/react/js/Page.stories.jsx +22 -0
- package/dist/modern/frameworks/riot/1-Button.stories.js +52 -0
- package/dist/modern/frameworks/riot/MyButton.tag +24 -0
- package/dist/modern/frameworks/server/button.stories.json +32 -0
- package/dist/modern/frameworks/server/header.stories.json +15 -0
- package/dist/modern/frameworks/server/page.stories.json +15 -0
- package/dist/modern/frameworks/svelte/Button.stories.svelte +57 -0
- package/dist/modern/frameworks/svelte/Button.svelte +42 -0
- package/dist/modern/frameworks/svelte/Header.stories.svelte +32 -0
- package/dist/modern/frameworks/svelte/Header.svelte +48 -0
- package/dist/modern/frameworks/svelte/Page.stories.svelte +32 -0
- package/dist/modern/frameworks/svelte/Page.svelte +77 -0
- package/dist/modern/frameworks/vue/Button.stories.js +46 -0
- package/dist/modern/frameworks/vue/Button.vue +54 -0
- package/dist/modern/frameworks/vue/Header.stories.js +21 -0
- package/dist/modern/frameworks/vue/Header.vue +59 -0
- package/dist/modern/frameworks/vue/Page.stories.js +25 -0
- package/dist/modern/frameworks/vue/Page.vue +88 -0
- package/dist/modern/frameworks/vue3/Button.stories.js +52 -0
- package/dist/modern/frameworks/vue3/Button.vue +52 -0
- package/dist/modern/frameworks/vue3/Header.stories.js +28 -0
- package/dist/modern/frameworks/vue3/Header.vue +49 -0
- package/dist/modern/frameworks/vue3/Page.stories.js +30 -0
- package/dist/modern/frameworks/vue3/Page.vue +78 -0
- package/dist/modern/frameworks/web-components/js/Button.js +21 -0
- package/dist/modern/frameworks/web-components/js/Button.stories.js +42 -0
- package/dist/modern/frameworks/web-components/js/Header.js +45 -0
- package/dist/modern/frameworks/web-components/js/Header.stories.js +15 -0
- package/dist/modern/frameworks/web-components/js/Page.js +61 -0
- package/dist/modern/frameworks/web-components/js/Page.stories.js +19 -0
- package/dist/modern/generate.js +140 -0
- package/dist/modern/generators/ANGULAR/angular-helpers.js +81 -0
- package/dist/modern/generators/ANGULAR/index.js +77 -0
- package/dist/modern/generators/ANGULAR/template-csf/.storybook/tsconfig.json +9 -0
- package/dist/modern/generators/ANGULAR/template-csf/.storybook/typings.d.ts +4 -0
- package/dist/modern/generators/AURELIA/index.js +43 -0
- package/dist/modern/generators/AURELIA/template-csf/.storybook/tsconfig.json +9 -0
- package/dist/modern/generators/AURELIA/template-csf/.storybook/typings.d.ts +4 -0
- package/dist/modern/generators/EMBER/index.js +22 -0
- package/dist/modern/generators/HTML/index.js +17 -0
- package/dist/modern/generators/MARIONETTE/index.js +17 -0
- package/dist/modern/generators/MARKO/index.js +17 -0
- package/dist/modern/generators/METEOR/index.js +45 -0
- package/dist/modern/generators/MITHRIL/index.js +17 -0
- package/dist/modern/generators/PREACT/index.js +19 -0
- package/dist/modern/generators/RAX/index.js +32 -0
- package/dist/modern/generators/REACT/index.js +17 -0
- package/dist/modern/generators/REACT_NATIVE/index.js +57 -0
- package/dist/modern/generators/REACT_NATIVE/template-csf/storybook/addons.js +3 -0
- package/dist/modern/generators/REACT_NATIVE/template-csf/storybook/index.js +25 -0
- package/dist/modern/generators/REACT_NATIVE/template-csf/storybook/rn-addons.js +2 -0
- package/dist/modern/generators/REACT_NATIVE/template-csf/storybook/stories/Button/Button.stories.js +20 -0
- package/dist/modern/generators/REACT_NATIVE/template-csf/storybook/stories/Button/index.js +17 -0
- package/dist/modern/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/index.js +16 -0
- package/dist/modern/generators/REACT_NATIVE/template-csf/storybook/stories/CenterView/style.js +8 -0
- package/dist/modern/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/Welcome.stories.js +6 -0
- package/dist/modern/generators/REACT_NATIVE/template-csf/storybook/stories/Welcome/index.js +57 -0
- package/dist/modern/generators/REACT_NATIVE/template-csf/storybook/stories/index.js +2 -0
- package/dist/modern/generators/REACT_SCRIPTS/index.js +61 -0
- package/dist/modern/generators/RIOT/index.js +19 -0
- package/dist/modern/generators/SERVER/index.js +22 -0
- package/dist/modern/generators/SERVER/template-csf/.storybook/preview.js +5 -0
- package/dist/modern/generators/SFC_VUE/index.js +17 -0
- package/dist/modern/generators/SVELTE/index.js +64 -0
- package/dist/modern/generators/UPDATE_PACKAGE_ORGANIZATIONS/index.js +78 -0
- package/dist/modern/generators/VUE/index.js +19 -0
- package/dist/modern/generators/VUE3/index.js +19 -0
- package/dist/modern/generators/WEB-COMPONENTS/index.js +17 -0
- package/dist/modern/generators/WEBPACK_REACT/index.js +17 -0
- package/dist/modern/generators/baseGenerator.js +119 -0
- package/dist/modern/generators/configure.js +85 -0
- package/dist/modern/helpers.js +238 -0
- package/dist/modern/initiate.js +287 -0
- package/dist/modern/js-package-manager/JsPackageManager.js +273 -0
- package/dist/modern/js-package-manager/JsPackageManagerFactory.js +57 -0
- package/dist/modern/js-package-manager/NPMProxy.js +76 -0
- package/dist/modern/js-package-manager/PackageJson.js +1 -0
- package/dist/modern/js-package-manager/PackageJsonHelper.js +33 -0
- package/dist/modern/js-package-manager/Yarn1Proxy.js +61 -0
- package/dist/modern/js-package-manager/Yarn2Proxy.js +57 -0
- package/dist/modern/js-package-manager/index.js +57 -0
- package/dist/modern/link.js +98 -0
- package/dist/modern/migrate.js +35 -0
- package/dist/modern/project_types.js +273 -0
- package/dist/modern/repro-generators/configs.js +148 -0
- package/dist/modern/repro-generators/scripts.js +211 -0
- package/dist/modern/repro.js +195 -0
- package/dist/modern/typings.d.js +1 -0
- package/dist/modern/upgrade.js +154 -0
- package/dist/modern/versions.json +59 -0
- package/dist/modern/warn.js +32 -0
- package/dist/modern/window.d.js +1 -0
- package/dist/ts3.4/NpmOptions.d.ts +4 -0
- package/dist/ts3.4/add.d.ts +10 -0
- package/dist/ts3.4/automigrate/fixes/angular12.d.ts +15 -0
- package/dist/ts3.4/automigrate/fixes/cra5.d.ts +15 -0
- package/dist/ts3.4/automigrate/fixes/index.d.ts +3 -0
- package/dist/ts3.4/automigrate/fixes/mainjsFramework.d.ts +8 -0
- package/dist/ts3.4/automigrate/fixes/webpack5.d.ts +26 -0
- package/dist/ts3.4/automigrate/helpers/getStorybookConfiguration.d.ts +1 -0
- package/dist/ts3.4/automigrate/helpers/getStorybookInfo.d.ts +11 -0
- package/dist/ts3.4/automigrate/index.d.ts +7 -0
- package/dist/ts3.4/automigrate/types.d.ts +15 -0
- package/dist/ts3.4/babel-config.d.ts +4 -0
- package/dist/ts3.4/detect.d.ts +9 -0
- package/dist/ts3.4/extract.d.ts +1 -0
- package/dist/ts3.4/generate.d.ts +1 -0
- package/dist/ts3.4/generators/ANGULAR/angular-helpers.d.ts +5 -0
- package/dist/ts3.4/generators/ANGULAR/index.d.ts +3 -0
- package/dist/ts3.4/generators/AURELIA/index.d.ts +3 -0
- package/dist/ts3.4/generators/EMBER/index.d.ts +3 -0
- package/dist/ts3.4/generators/HTML/index.d.ts +3 -0
- package/dist/ts3.4/generators/MARIONETTE/index.d.ts +3 -0
- package/dist/ts3.4/generators/MARKO/index.d.ts +3 -0
- package/dist/ts3.4/generators/METEOR/index.d.ts +3 -0
- package/dist/ts3.4/generators/MITHRIL/index.d.ts +3 -0
- package/dist/ts3.4/generators/PREACT/index.d.ts +3 -0
- package/dist/ts3.4/generators/RAX/index.d.ts +3 -0
- package/dist/ts3.4/generators/REACT/index.d.ts +3 -0
- package/dist/ts3.4/generators/REACT_NATIVE/index.d.ts +4 -0
- package/dist/ts3.4/generators/REACT_SCRIPTS/index.d.ts +3 -0
- package/dist/ts3.4/generators/RIOT/index.d.ts +3 -0
- package/dist/ts3.4/generators/SERVER/index.d.ts +3 -0
- package/dist/ts3.4/generators/SFC_VUE/index.d.ts +3 -0
- package/dist/ts3.4/generators/SVELTE/index.d.ts +3 -0
- package/dist/ts3.4/generators/UPDATE_PACKAGE_ORGANIZATIONS/index.d.ts +4 -0
- package/dist/ts3.4/generators/VUE/index.d.ts +3 -0
- package/dist/ts3.4/generators/VUE3/index.d.ts +3 -0
- package/dist/ts3.4/generators/WEB-COMPONENTS/index.d.ts +3 -0
- package/dist/ts3.4/generators/WEBPACK_REACT/index.d.ts +3 -0
- package/dist/ts3.4/generators/baseGenerator.d.ts +22 -0
- package/dist/ts3.4/generators/configure.d.ts +18 -0
- package/dist/ts3.4/helpers.d.ts +25 -0
- package/dist/ts3.4/initiate.d.ts +16 -0
- package/dist/ts3.4/js-package-manager/JsPackageManager.d.ts +92 -0
- package/dist/ts3.4/js-package-manager/JsPackageManagerFactory.d.ts +4 -0
- package/dist/ts3.4/js-package-manager/NPMProxy.d.ts +12 -0
- package/dist/ts3.4/js-package-manager/PackageJson.d.ts +9 -0
- package/dist/ts3.4/js-package-manager/PackageJsonHelper.d.ts +3 -0
- package/dist/ts3.4/js-package-manager/Yarn1Proxy.d.ts +10 -0
- package/dist/ts3.4/js-package-manager/Yarn2Proxy.d.ts +10 -0
- package/dist/ts3.4/js-package-manager/index.d.ts +4 -0
- package/dist/ts3.4/link.d.ts +6 -0
- package/dist/ts3.4/migrate.d.ts +1 -0
- package/dist/ts3.4/project_types.d.ts +66 -0
- package/dist/ts3.4/repro-generators/configs.d.ts +34 -0
- package/dist/ts3.4/repro-generators/scripts.d.ts +36 -0
- package/dist/ts3.4/repro.d.ts +12 -0
- package/dist/ts3.4/upgrade.d.ts +18 -0
- package/dist/ts3.4/warn.d.ts +5 -0
- package/dist/ts3.9/NpmOptions.d.ts +4 -0
- package/dist/ts3.9/add.d.ts +10 -0
- package/dist/ts3.9/automigrate/fixes/angular12.d.ts +15 -0
- package/dist/ts3.9/automigrate/fixes/cra5.d.ts +15 -0
- package/dist/ts3.9/automigrate/fixes/index.d.ts +3 -0
- package/dist/ts3.9/automigrate/fixes/mainjsFramework.d.ts +8 -0
- package/dist/ts3.9/automigrate/fixes/webpack5.d.ts +26 -0
- package/dist/ts3.9/automigrate/helpers/getStorybookConfiguration.d.ts +1 -0
- package/dist/ts3.9/automigrate/helpers/getStorybookInfo.d.ts +11 -0
- package/dist/ts3.9/automigrate/index.d.ts +7 -0
- package/dist/ts3.9/automigrate/types.d.ts +15 -0
- package/dist/ts3.9/babel-config.d.ts +4 -0
- package/dist/ts3.9/detect.d.ts +9 -0
- package/dist/ts3.9/extract.d.ts +1 -0
- package/dist/ts3.9/generate.d.ts +1 -0
- package/dist/ts3.9/generators/ANGULAR/angular-helpers.d.ts +5 -0
- package/dist/ts3.9/generators/ANGULAR/index.d.ts +3 -0
- package/dist/ts3.9/generators/AURELIA/index.d.ts +3 -0
- package/dist/ts3.9/generators/EMBER/index.d.ts +3 -0
- package/dist/ts3.9/generators/HTML/index.d.ts +3 -0
- package/dist/ts3.9/generators/MARIONETTE/index.d.ts +3 -0
- package/dist/ts3.9/generators/MARKO/index.d.ts +3 -0
- package/dist/ts3.9/generators/METEOR/index.d.ts +3 -0
- package/dist/ts3.9/generators/MITHRIL/index.d.ts +3 -0
- package/dist/ts3.9/generators/PREACT/index.d.ts +3 -0
- package/dist/ts3.9/generators/RAX/index.d.ts +3 -0
- package/dist/ts3.9/generators/REACT/index.d.ts +3 -0
- package/dist/ts3.9/generators/REACT_NATIVE/index.d.ts +4 -0
- package/dist/ts3.9/generators/REACT_SCRIPTS/index.d.ts +3 -0
- package/dist/ts3.9/generators/RIOT/index.d.ts +3 -0
- package/dist/ts3.9/generators/SERVER/index.d.ts +3 -0
- package/dist/ts3.9/generators/SFC_VUE/index.d.ts +3 -0
- package/dist/ts3.9/generators/SVELTE/index.d.ts +3 -0
- package/dist/ts3.9/generators/UPDATE_PACKAGE_ORGANIZATIONS/index.d.ts +4 -0
- package/dist/ts3.9/generators/VUE/index.d.ts +3 -0
- package/dist/ts3.9/generators/VUE3/index.d.ts +3 -0
- package/dist/ts3.9/generators/WEB-COMPONENTS/index.d.ts +3 -0
- package/dist/ts3.9/generators/WEBPACK_REACT/index.d.ts +3 -0
- package/dist/ts3.9/generators/baseGenerator.d.ts +22 -0
- package/dist/ts3.9/generators/configure.d.ts +18 -0
- package/dist/ts3.9/helpers.d.ts +25 -0
- package/dist/ts3.9/initiate.d.ts +16 -0
- package/dist/ts3.9/js-package-manager/JsPackageManager.d.ts +89 -0
- package/dist/ts3.9/js-package-manager/JsPackageManagerFactory.d.ts +4 -0
- package/dist/ts3.9/js-package-manager/NPMProxy.d.ts +12 -0
- package/dist/ts3.9/js-package-manager/PackageJson.d.ts +9 -0
- package/dist/ts3.9/js-package-manager/PackageJsonHelper.d.ts +3 -0
- package/dist/ts3.9/js-package-manager/Yarn1Proxy.d.ts +10 -0
- package/dist/ts3.9/js-package-manager/Yarn2Proxy.d.ts +10 -0
- package/dist/ts3.9/js-package-manager/index.d.ts +4 -0
- package/dist/ts3.9/link.d.ts +6 -0
- package/dist/ts3.9/migrate.d.ts +1 -0
- package/dist/ts3.9/project_types.d.ts +66 -0
- package/dist/ts3.9/repro-generators/configs.d.ts +34 -0
- package/dist/ts3.9/repro-generators/scripts.d.ts +36 -0
- package/dist/ts3.9/repro.d.ts +12 -0
- package/dist/ts3.9/upgrade.d.ts +18 -0
- package/dist/ts3.9/warn.d.ts +5 -0
- package/package.json +7 -7
- package/story.js +0 -10
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import m from 'mithril';
|
|
2
|
+
|
|
3
|
+
import { Header } from './Header';
|
|
4
|
+
|
|
5
|
+
export default {
|
|
6
|
+
title: 'Example/Header',
|
|
7
|
+
component: Header,
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const Template = ({ children, ...args }) => ({
|
|
11
|
+
view: () => m(Header, args, children),
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
export const LoggedIn = Template.bind({});
|
|
15
|
+
LoggedIn.args = {
|
|
16
|
+
user: {},
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export const LoggedOut = Template.bind({});
|
|
20
|
+
LoggedOut.args = {};
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/** @jsx m */
|
|
2
|
+
|
|
3
|
+
import m from 'mithril';
|
|
4
|
+
|
|
5
|
+
import { Header } from './Header';
|
|
6
|
+
import './page.css';
|
|
7
|
+
|
|
8
|
+
export const Page = {
|
|
9
|
+
view: ({ attrs }) => (
|
|
10
|
+
<article>
|
|
11
|
+
<div>
|
|
12
|
+
{m(Header, {
|
|
13
|
+
user: attrs.user,
|
|
14
|
+
onLogin: attrs.onLogin,
|
|
15
|
+
onLogout: attrs.onLogout,
|
|
16
|
+
onCreateAccount: attrs.onCreateAccount,
|
|
17
|
+
})}
|
|
18
|
+
</div>
|
|
19
|
+
<section>
|
|
20
|
+
<h2>Pages in Storybook</h2>
|
|
21
|
+
<p>
|
|
22
|
+
We recommend building UIs with a{' '}
|
|
23
|
+
<a href="https://componentdriven.org" target="_blank" rel="noopener noreferrer">
|
|
24
|
+
<strong>component-driven</strong>
|
|
25
|
+
</a>{' '}
|
|
26
|
+
process starting with atomic components and ending with pages.
|
|
27
|
+
</p>
|
|
28
|
+
<p>
|
|
29
|
+
Render pages with mock data. This makes it easy to build and review page states without
|
|
30
|
+
needing to navigate to them in your app. Here are some handy patterns for managing page
|
|
31
|
+
data in Storybook:
|
|
32
|
+
</p>
|
|
33
|
+
<ul>
|
|
34
|
+
<li>
|
|
35
|
+
Use a higher-level connected component. Storybook helps you compose such data from the
|
|
36
|
+
"args" of child component stories
|
|
37
|
+
</li>
|
|
38
|
+
<li>
|
|
39
|
+
Assemble data in the page component from your services. You can mock these services out
|
|
40
|
+
using Storybook.
|
|
41
|
+
</li>
|
|
42
|
+
</ul>
|
|
43
|
+
<p>
|
|
44
|
+
Get a guided tutorial on component-driven development at{' '}
|
|
45
|
+
<a href="https://storybook.js.org/tutorials/" target="_blank" rel="noopener noreferrer">
|
|
46
|
+
Storybook tutorials
|
|
47
|
+
</a>
|
|
48
|
+
. Read more in the{' '}
|
|
49
|
+
<a href="https://storybook.js.org/docs" target="_blank" rel="noopener noreferrer">
|
|
50
|
+
docs
|
|
51
|
+
</a>
|
|
52
|
+
.
|
|
53
|
+
</p>
|
|
54
|
+
<div class="tip-wrapper">
|
|
55
|
+
<span class="tip">Tip</span> Adjust the width of the canvas with the{' '}
|
|
56
|
+
<svg width="10" height="10" viewBox="0 0 12 12" xmlns="http://www.w3.org/2000/svg">
|
|
57
|
+
<g fill="none" fillRule="evenodd">
|
|
58
|
+
<path
|
|
59
|
+
d="M1.5 5.2h4.8c.3 0 .5.2.5.4v5.1c-.1.2-.3.3-.4.3H1.4a.5.5 0 01-.5-.4V5.7c0-.3.2-.5.5-.5zm0-2.1h6.9c.3 0 .5.2.5.4v7a.5.5 0 01-1 0V4H1.5a.5.5 0 010-1zm0-2.1h9c.3 0 .5.2.5.4v9.1a.5.5 0 01-1 0V2H1.5a.5.5 0 010-1zm4.3 5.2H2V10h3.8V6.2z"
|
|
60
|
+
id="a"
|
|
61
|
+
fill="#999"
|
|
62
|
+
/>
|
|
63
|
+
</g>
|
|
64
|
+
</svg>
|
|
65
|
+
Viewports addon in the toolbar
|
|
66
|
+
</div>
|
|
67
|
+
</section>
|
|
68
|
+
</article>
|
|
69
|
+
),
|
|
70
|
+
};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import m from 'mithril';
|
|
2
|
+
|
|
3
|
+
import { Page } from './Page';
|
|
4
|
+
import * as HeaderStories from './Header.stories';
|
|
5
|
+
|
|
6
|
+
export default {
|
|
7
|
+
title: 'Example/Page',
|
|
8
|
+
component: Page,
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
const Template = ({ children, ...args }) => ({
|
|
12
|
+
view: () => m(Page, args, children),
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
export const LoggedIn = Template.bind({});
|
|
16
|
+
LoggedIn.args = {
|
|
17
|
+
// More on composing args: https://storybook.js.org/docs/mithril/writing-stories/args#args-composition
|
|
18
|
+
...HeaderStories.LoggedIn.args,
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export const LoggedOut = Template.bind({});
|
|
22
|
+
LoggedOut.args = {
|
|
23
|
+
...HeaderStories.LoggedOut.args,
|
|
24
|
+
};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/** @jsx h */
|
|
2
|
+
import { h } from 'preact';
|
|
3
|
+
import PropTypes from 'prop-types';
|
|
4
|
+
import './button.css';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Primary UI component for user interaction
|
|
8
|
+
*/
|
|
9
|
+
export const Button = ({ primary, backgroundColor, size, label, ...props }) => {
|
|
10
|
+
const mode = primary ? 'storybook-button--primary' : 'storybook-button--secondary';
|
|
11
|
+
return (
|
|
12
|
+
<button
|
|
13
|
+
type="button"
|
|
14
|
+
className={['storybook-button', `storybook-button--${size}`, mode].join(' ')}
|
|
15
|
+
style={backgroundColor && { backgroundColor }}
|
|
16
|
+
{...props}
|
|
17
|
+
>
|
|
18
|
+
{label}
|
|
19
|
+
</button>
|
|
20
|
+
);
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
Button.propTypes = {
|
|
24
|
+
/**
|
|
25
|
+
* Is this the principal call to action on the page?
|
|
26
|
+
*/
|
|
27
|
+
primary: PropTypes.bool,
|
|
28
|
+
/**
|
|
29
|
+
* What background color to use
|
|
30
|
+
*/
|
|
31
|
+
backgroundColor: PropTypes.string,
|
|
32
|
+
/**
|
|
33
|
+
* How large should the button be?
|
|
34
|
+
*/
|
|
35
|
+
size: PropTypes.oneOf(['small', 'medium', 'large']),
|
|
36
|
+
/**
|
|
37
|
+
* Button contents
|
|
38
|
+
*/
|
|
39
|
+
label: PropTypes.string.isRequired,
|
|
40
|
+
/**
|
|
41
|
+
* Optional click handler
|
|
42
|
+
*/
|
|
43
|
+
onClick: PropTypes.func,
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
Button.defaultProps = {
|
|
47
|
+
backgroundColor: null,
|
|
48
|
+
primary: false,
|
|
49
|
+
size: 'medium',
|
|
50
|
+
onClick: undefined,
|
|
51
|
+
};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/** @jsx h */
|
|
2
|
+
import { h } from 'preact';
|
|
3
|
+
import { Button } from './Button';
|
|
4
|
+
|
|
5
|
+
// More on default export: https://storybook.js.org/docs/preact/writing-stories/introduction#default-export
|
|
6
|
+
export default {
|
|
7
|
+
title: 'Example/Button',
|
|
8
|
+
component: Button,
|
|
9
|
+
// More on argTypes: https://storybook.js.org/docs/preact/api/argtypes
|
|
10
|
+
argTypes: {
|
|
11
|
+
backgroundColor: { control: 'color' },
|
|
12
|
+
onClick: { action: 'onClick' },
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
// More on component templates: https://storybook.js.org/docs/preact/writing-stories/introduction#using-args
|
|
17
|
+
const Template = (args) => <Button {...args} />;
|
|
18
|
+
|
|
19
|
+
export const Primary = Template.bind({});
|
|
20
|
+
// More on args: https://storybook.js.org/docs/preact/writing-stories/args
|
|
21
|
+
Primary.args = {
|
|
22
|
+
primary: true,
|
|
23
|
+
label: 'Button',
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
export const Secondary = Template.bind({});
|
|
27
|
+
Secondary.args = {
|
|
28
|
+
label: 'Button',
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export const Large = Template.bind({});
|
|
32
|
+
Large.args = {
|
|
33
|
+
size: 'large',
|
|
34
|
+
label: 'Button',
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export const Small = Template.bind({});
|
|
38
|
+
Small.args = {
|
|
39
|
+
size: 'small',
|
|
40
|
+
label: 'Button',
|
|
41
|
+
};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/** @jsx h */
|
|
2
|
+
import { h, Fragment } from 'preact';
|
|
3
|
+
import PropTypes from 'prop-types';
|
|
4
|
+
|
|
5
|
+
import { Button } from './Button';
|
|
6
|
+
import './header.css';
|
|
7
|
+
|
|
8
|
+
export const Header = ({ user, onLogin, onLogout, onCreateAccount }) => (
|
|
9
|
+
<header>
|
|
10
|
+
<div className="wrapper">
|
|
11
|
+
<div>
|
|
12
|
+
<svg width="32" height="32" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
|
|
13
|
+
<g fill="none" fillRule="evenodd">
|
|
14
|
+
<path
|
|
15
|
+
d="M10 0h12a10 10 0 0110 10v12a10 10 0 01-10 10H10A10 10 0 010 22V10A10 10 0 0110 0z"
|
|
16
|
+
fill="#FFF"
|
|
17
|
+
/>
|
|
18
|
+
<path
|
|
19
|
+
d="M5.3 10.6l10.4 6v11.1l-10.4-6v-11zm11.4-6.2l9.7 5.5-9.7 5.6V4.4z"
|
|
20
|
+
fill="#555AB9"
|
|
21
|
+
/>
|
|
22
|
+
<path
|
|
23
|
+
d="M27.2 10.6v11.2l-10.5 6V16.5l10.5-6zM15.7 4.4v11L6 10l9.7-5.5z"
|
|
24
|
+
fill="#91BAF8"
|
|
25
|
+
/>
|
|
26
|
+
</g>
|
|
27
|
+
</svg>
|
|
28
|
+
<h1>Acme</h1>
|
|
29
|
+
</div>
|
|
30
|
+
<div>
|
|
31
|
+
{user ? (
|
|
32
|
+
<Button size="small" onClick={onLogout} label="Log out" />
|
|
33
|
+
) : (
|
|
34
|
+
<Fragment>
|
|
35
|
+
<Button size="small" onClick={onLogin} label="Log in" />
|
|
36
|
+
<Button primary size="small" onClick={onCreateAccount} label="Sign up" />
|
|
37
|
+
</Fragment>
|
|
38
|
+
)}
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
</header>
|
|
42
|
+
);
|
|
43
|
+
|
|
44
|
+
Header.propTypes = {
|
|
45
|
+
user: PropTypes.shape({}),
|
|
46
|
+
onLogin: PropTypes.func.isRequired,
|
|
47
|
+
onLogout: PropTypes.func.isRequired,
|
|
48
|
+
onCreateAccount: PropTypes.func.isRequired,
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
Header.defaultProps = {
|
|
52
|
+
user: null,
|
|
53
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** @jsx h */
|
|
2
|
+
import { h } from 'preact';
|
|
3
|
+
import { Header } from './Header';
|
|
4
|
+
|
|
5
|
+
export default {
|
|
6
|
+
title: 'Example/Header',
|
|
7
|
+
component: Header,
|
|
8
|
+
argTypes: {
|
|
9
|
+
onLogin: { action: 'onLogin' },
|
|
10
|
+
onLogout: { action: 'onLogout' },
|
|
11
|
+
onCreateAccount: { action: 'onCreateAccount' },
|
|
12
|
+
},
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
const Template = (args) => <Header {...args} />;
|
|
16
|
+
|
|
17
|
+
export const LoggedIn = Template.bind({});
|
|
18
|
+
LoggedIn.args = {
|
|
19
|
+
user: {},
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export const LoggedOut = Template.bind({});
|
|
23
|
+
LoggedOut.args = {};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/** @jsx h */
|
|
2
|
+
import { h } from 'preact';
|
|
3
|
+
import PropTypes from 'prop-types';
|
|
4
|
+
|
|
5
|
+
import { Header } from './Header';
|
|
6
|
+
import './page.css';
|
|
7
|
+
|
|
8
|
+
export const Page = ({ user, onLogin, onLogout, onCreateAccount }) => (
|
|
9
|
+
<article>
|
|
10
|
+
<Header user={user} onLogin={onLogin} onLogout={onLogout} onCreateAccount={onCreateAccount} />
|
|
11
|
+
|
|
12
|
+
<section>
|
|
13
|
+
<h2>Pages in Storybook</h2>
|
|
14
|
+
<p>
|
|
15
|
+
We recommend building UIs with a{' '}
|
|
16
|
+
<a href="https://componentdriven.org" target="_blank" rel="noopener noreferrer">
|
|
17
|
+
<strong>component-driven</strong>
|
|
18
|
+
</a>{' '}
|
|
19
|
+
process starting with atomic components and ending with pages.
|
|
20
|
+
</p>
|
|
21
|
+
<p>
|
|
22
|
+
Render pages with mock data. This makes it easy to build and review page states without
|
|
23
|
+
needing to navigate to them in your app. Here are some handy patterns for managing page data
|
|
24
|
+
in Storybook:
|
|
25
|
+
</p>
|
|
26
|
+
<ul>
|
|
27
|
+
<li>
|
|
28
|
+
Use a higher-level connected component. Storybook helps you compose such data from the
|
|
29
|
+
"args" of child component stories
|
|
30
|
+
</li>
|
|
31
|
+
<li>
|
|
32
|
+
Assemble data in the page component from your services. You can mock these services out
|
|
33
|
+
using Storybook.
|
|
34
|
+
</li>
|
|
35
|
+
</ul>
|
|
36
|
+
<p>
|
|
37
|
+
Get a guided tutorial on component-driven development at{' '}
|
|
38
|
+
<a href="https://storybook.js.org/tutorials/" target="_blank" rel="noopener noreferrer">
|
|
39
|
+
Storybook tutorials
|
|
40
|
+
</a>
|
|
41
|
+
. Read more in the{' '}
|
|
42
|
+
<a href="https://storybook.js.org/docs" target="_blank" rel="noopener noreferrer">
|
|
43
|
+
docs
|
|
44
|
+
</a>
|
|
45
|
+
.
|
|
46
|
+
</p>
|
|
47
|
+
<div className="tip-wrapper">
|
|
48
|
+
<span className="tip">Tip</span> Adjust the width of the canvas with the{' '}
|
|
49
|
+
<svg width="10" height="10" viewBox="0 0 12 12" xmlns="http://www.w3.org/2000/svg">
|
|
50
|
+
<g fill="none" fillRule="evenodd">
|
|
51
|
+
<path
|
|
52
|
+
d="M1.5 5.2h4.8c.3 0 .5.2.5.4v5.1c-.1.2-.3.3-.4.3H1.4a.5.5 0 01-.5-.4V5.7c0-.3.2-.5.5-.5zm0-2.1h6.9c.3 0 .5.2.5.4v7a.5.5 0 01-1 0V4H1.5a.5.5 0 010-1zm0-2.1h9c.3 0 .5.2.5.4v9.1a.5.5 0 01-1 0V2H1.5a.5.5 0 010-1zm4.3 5.2H2V10h3.8V6.2z"
|
|
53
|
+
id="a"
|
|
54
|
+
fill="#999"
|
|
55
|
+
/>
|
|
56
|
+
</g>
|
|
57
|
+
</svg>
|
|
58
|
+
Viewports addon in the toolbar
|
|
59
|
+
</div>
|
|
60
|
+
</section>
|
|
61
|
+
</article>
|
|
62
|
+
);
|
|
63
|
+
Page.propTypes = {
|
|
64
|
+
user: PropTypes.shape({}),
|
|
65
|
+
onLogin: PropTypes.func.isRequired,
|
|
66
|
+
onLogout: PropTypes.func.isRequired,
|
|
67
|
+
onCreateAccount: PropTypes.func.isRequired,
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
Page.defaultProps = {
|
|
71
|
+
user: null,
|
|
72
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** @jsx h */
|
|
2
|
+
import { h } from 'preact';
|
|
3
|
+
|
|
4
|
+
import { Page } from './Page';
|
|
5
|
+
import * as HeaderStories from './Header.stories';
|
|
6
|
+
|
|
7
|
+
export default {
|
|
8
|
+
title: 'Example/Page',
|
|
9
|
+
component: Page,
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
const Template = (args) => <Page {...args} />;
|
|
13
|
+
|
|
14
|
+
export const LoggedIn = Template.bind({});
|
|
15
|
+
LoggedIn.args = {
|
|
16
|
+
// More on composing args: https://storybook.js.org/docs/preact/writing-stories/args#args-composition
|
|
17
|
+
...HeaderStories.LoggedIn.args,
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export const LoggedOut = Template.bind({});
|
|
21
|
+
LoggedOut.args = {
|
|
22
|
+
...HeaderStories.LoggedOut.args,
|
|
23
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import './button.css';
|
|
2
|
+
import { createElement } from 'rax';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Primary UI component for user interaction
|
|
6
|
+
*/
|
|
7
|
+
export const Button = ({ primary, backgroundColor, size, label, ...props }) => {
|
|
8
|
+
const mode = primary ? 'storybook-button--primary' : 'storybook-button--secondary';
|
|
9
|
+
return (
|
|
10
|
+
<button
|
|
11
|
+
type="button"
|
|
12
|
+
className={['storybook-button', `storybook-button--${size}`, mode].join(' ')}
|
|
13
|
+
style={backgroundColor && { backgroundColor }}
|
|
14
|
+
{...props}
|
|
15
|
+
>
|
|
16
|
+
{label}
|
|
17
|
+
</button>
|
|
18
|
+
);
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
Button.defaultProps = {
|
|
22
|
+
backgroundColor: null,
|
|
23
|
+
primary: false,
|
|
24
|
+
size: 'medium',
|
|
25
|
+
onClick: undefined,
|
|
26
|
+
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { createElement } from 'rax';
|
|
2
|
+
|
|
3
|
+
import { Button } from './Button';
|
|
4
|
+
|
|
5
|
+
// More on default export: https://storybook.js.org/docs/rax/writing-stories/introduction#default-export
|
|
6
|
+
export default {
|
|
7
|
+
title: 'Example/Button',
|
|
8
|
+
// More on argTypes: https://storybook.js.org/docs/rax/api/argtypes
|
|
9
|
+
argTypes: {
|
|
10
|
+
backgroundColor: { control: 'color' },
|
|
11
|
+
onClick: { action: 'onClick' },
|
|
12
|
+
},
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
// More on component templates: https://storybook.js.org/docs/rax/writing-stories/introduction#using-args
|
|
16
|
+
const Template = (args) => <Button {...args} />;
|
|
17
|
+
|
|
18
|
+
export const Primary = Template.bind({});
|
|
19
|
+
// More on args: https://storybook.js.org/docs/rax/writing-stories/args
|
|
20
|
+
Primary.args = {
|
|
21
|
+
primary: true,
|
|
22
|
+
label: 'Button',
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export const Secondary = Template.bind({});
|
|
26
|
+
Secondary.args = {
|
|
27
|
+
label: 'Button',
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export const Large = Template.bind({});
|
|
31
|
+
Large.args = {
|
|
32
|
+
size: 'large',
|
|
33
|
+
label: 'Button',
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
export const Small = Template.bind({});
|
|
37
|
+
Small.args = {
|
|
38
|
+
size: 'small',
|
|
39
|
+
label: 'Button',
|
|
40
|
+
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { createElement } from 'rax';
|
|
2
|
+
|
|
3
|
+
import { Button } from './Button';
|
|
4
|
+
import './header.css';
|
|
5
|
+
|
|
6
|
+
export const Header = ({ user, onLogin, onLogout, onCreateAccount }) => (
|
|
7
|
+
<header>
|
|
8
|
+
<div className="wrapper">
|
|
9
|
+
<div>
|
|
10
|
+
<svg width="32" height="32" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
|
|
11
|
+
<g fill="none" fillRule="evenodd">
|
|
12
|
+
<path
|
|
13
|
+
d="M10 0h12a10 10 0 0110 10v12a10 10 0 01-10 10H10A10 10 0 010 22V10A10 10 0 0110 0z"
|
|
14
|
+
fill="#FFF"
|
|
15
|
+
/>
|
|
16
|
+
<path
|
|
17
|
+
d="M5.3 10.6l10.4 6v11.1l-10.4-6v-11zm11.4-6.2l9.7 5.5-9.7 5.6V4.4z"
|
|
18
|
+
fill="#555AB9"
|
|
19
|
+
/>
|
|
20
|
+
<path
|
|
21
|
+
d="M27.2 10.6v11.2l-10.5 6V16.5l10.5-6zM15.7 4.4v11L6 10l9.7-5.5z"
|
|
22
|
+
fill="#91BAF8"
|
|
23
|
+
/>
|
|
24
|
+
</g>
|
|
25
|
+
</svg>
|
|
26
|
+
<h1>Acme</h1>
|
|
27
|
+
</div>
|
|
28
|
+
<div>
|
|
29
|
+
{user ? (
|
|
30
|
+
<Button size="small" onClick={onLogout} label="Log out" />
|
|
31
|
+
) : (
|
|
32
|
+
<div>
|
|
33
|
+
<Button size="small" onClick={onLogin} label="Log in" />
|
|
34
|
+
<Button primary size="small" onClick={onCreateAccount} label="Sign up" />
|
|
35
|
+
</div>
|
|
36
|
+
)}
|
|
37
|
+
</div>
|
|
38
|
+
</div>
|
|
39
|
+
</header>
|
|
40
|
+
);
|
|
41
|
+
|
|
42
|
+
Header.defaultProps = {
|
|
43
|
+
user: null,
|
|
44
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { createElement } from 'rax';
|
|
2
|
+
|
|
3
|
+
import { Header } from './Header';
|
|
4
|
+
|
|
5
|
+
export default {
|
|
6
|
+
title: 'Example/Header',
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
const Template = (args) => <Header {...args} />;
|
|
10
|
+
|
|
11
|
+
export const LoggedIn = Template.bind({});
|
|
12
|
+
LoggedIn.args = {
|
|
13
|
+
user: {},
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export const LoggedOut = Template.bind({});
|
|
17
|
+
LoggedOut.args = {};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { createElement } from 'rax';
|
|
2
|
+
|
|
3
|
+
import { Header } from './Header';
|
|
4
|
+
import './page.css';
|
|
5
|
+
|
|
6
|
+
export const Page = ({ user, onLogin, onLogout, onCreateAccount }) => (
|
|
7
|
+
<article>
|
|
8
|
+
<Header user={user} onLogin={onLogin} onLogout={onLogout} onCreateAccount={onCreateAccount} />
|
|
9
|
+
|
|
10
|
+
<section>
|
|
11
|
+
<h2>Pages in Storybook</h2>
|
|
12
|
+
<p>
|
|
13
|
+
We recommend building UIs with a{' '}
|
|
14
|
+
<a href="https://componentdriven.org" target="_blank" rel="noopener noreferrer">
|
|
15
|
+
<strong>component-driven</strong>
|
|
16
|
+
</a>{' '}
|
|
17
|
+
process starting with atomic components and ending with pages.
|
|
18
|
+
</p>
|
|
19
|
+
<p>
|
|
20
|
+
Render pages with mock data. This makes it easy to build and review page states without
|
|
21
|
+
needing to navigate to them in your app. Here are some handy patterns for managing page data
|
|
22
|
+
in Storybook:
|
|
23
|
+
</p>
|
|
24
|
+
<ul>
|
|
25
|
+
<li>
|
|
26
|
+
Use a higher-level connected component. Storybook helps you compose such data from the
|
|
27
|
+
"args" of child component stories
|
|
28
|
+
</li>
|
|
29
|
+
<li>
|
|
30
|
+
Assemble data in the page component from your services. You can mock these services out
|
|
31
|
+
using Storybook.
|
|
32
|
+
</li>
|
|
33
|
+
</ul>
|
|
34
|
+
<p>
|
|
35
|
+
Get a guided tutorial on component-driven development at{' '}
|
|
36
|
+
<a href="https://storybook.js.org/tutorials/" target="_blank" rel="noopener noreferrer">
|
|
37
|
+
Storybook tutorials
|
|
38
|
+
</a>
|
|
39
|
+
. Read more in the{' '}
|
|
40
|
+
<a href="https://storybook.js.org/docs" target="_blank" rel="noopener noreferrer">
|
|
41
|
+
docs
|
|
42
|
+
</a>
|
|
43
|
+
.
|
|
44
|
+
</p>
|
|
45
|
+
<div className="tip-wrapper">
|
|
46
|
+
<span className="tip">Tip</span> Adjust the width of the canvas with the{' '}
|
|
47
|
+
<svg width="10" height="10" viewBox="0 0 12 12" xmlns="http://www.w3.org/2000/svg">
|
|
48
|
+
<g fill="none" fillRule="evenodd">
|
|
49
|
+
<path
|
|
50
|
+
d="M1.5 5.2h4.8c.3 0 .5.2.5.4v5.1c-.1.2-.3.3-.4.3H1.4a.5.5 0 01-.5-.4V5.7c0-.3.2-.5.5-.5zm0-2.1h6.9c.3 0 .5.2.5.4v7a.5.5 0 01-1 0V4H1.5a.5.5 0 010-1zm0-2.1h9c.3 0 .5.2.5.4v9.1a.5.5 0 01-1 0V2H1.5a.5.5 0 010-1zm4.3 5.2H2V10h3.8V6.2z"
|
|
51
|
+
id="a"
|
|
52
|
+
fill="#999"
|
|
53
|
+
/>
|
|
54
|
+
</g>
|
|
55
|
+
</svg>
|
|
56
|
+
Viewports addon in the toolbar
|
|
57
|
+
</div>
|
|
58
|
+
</section>
|
|
59
|
+
</article>
|
|
60
|
+
);
|
|
61
|
+
|
|
62
|
+
Page.defaultProps = {
|
|
63
|
+
user: null,
|
|
64
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { createElement } from 'rax';
|
|
2
|
+
|
|
3
|
+
import { Page } from './Page';
|
|
4
|
+
import * as HeaderStories from './Header.stories';
|
|
5
|
+
|
|
6
|
+
export default {
|
|
7
|
+
title: 'Example/Page',
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const Template = (args) => <Page {...args} />;
|
|
11
|
+
|
|
12
|
+
export const LoggedIn = Template.bind({});
|
|
13
|
+
LoggedIn.args = {
|
|
14
|
+
// More on composing args: https://storybook.js.org/docs/rax/writing-stories/args#args-composition
|
|
15
|
+
...HeaderStories.LoggedIn.args,
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export const LoggedOut = Template.bind({});
|
|
19
|
+
LoggedOut.args = {
|
|
20
|
+
...HeaderStories.LoggedOut.args,
|
|
21
|
+
};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import './button.css';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Primary UI component for user interaction
|
|
7
|
+
*/
|
|
8
|
+
export const Button = ({ primary, backgroundColor, size, label, ...props }) => {
|
|
9
|
+
const mode = primary ? 'storybook-button--primary' : 'storybook-button--secondary';
|
|
10
|
+
return (
|
|
11
|
+
<button
|
|
12
|
+
type="button"
|
|
13
|
+
className={['storybook-button', `storybook-button--${size}`, mode].join(' ')}
|
|
14
|
+
style={backgroundColor && { backgroundColor }}
|
|
15
|
+
{...props}
|
|
16
|
+
>
|
|
17
|
+
{label}
|
|
18
|
+
</button>
|
|
19
|
+
);
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
Button.propTypes = {
|
|
23
|
+
/**
|
|
24
|
+
* Is this the principal call to action on the page?
|
|
25
|
+
*/
|
|
26
|
+
primary: PropTypes.bool,
|
|
27
|
+
/**
|
|
28
|
+
* What background color to use
|
|
29
|
+
*/
|
|
30
|
+
backgroundColor: PropTypes.string,
|
|
31
|
+
/**
|
|
32
|
+
* How large should the button be?
|
|
33
|
+
*/
|
|
34
|
+
size: PropTypes.oneOf(['small', 'medium', 'large']),
|
|
35
|
+
/**
|
|
36
|
+
* Button contents
|
|
37
|
+
*/
|
|
38
|
+
label: PropTypes.string.isRequired,
|
|
39
|
+
/**
|
|
40
|
+
* Optional click handler
|
|
41
|
+
*/
|
|
42
|
+
onClick: PropTypes.func,
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
Button.defaultProps = {
|
|
46
|
+
backgroundColor: null,
|
|
47
|
+
primary: false,
|
|
48
|
+
size: 'medium',
|
|
49
|
+
onClick: undefined,
|
|
50
|
+
};
|