From bce1e9cb9331c394581d49a3d0a9b4f092ca71ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Taehwan=20Eun=20=28=EC=9D=80=ED=83=9C=ED=99=98=29?= Date: Thu, 21 Dec 2017 16:09:58 +0900 Subject: [PATCH] init @storybook/react-native --- .babelrc | 3 + .npmignore | 3 + addons.js | 4 + docs/assets/readme/screenshot.png | Bin 0 -> 347956 bytes docs/manual-setup.md | 69 ++++++ docs/using-devices.md | 27 +++ package.json | 80 +++++++ readme.md | 101 +++++++++ src/bin/storybook-build.js | 5 + src/bin/storybook-start.js | 98 +++++++++ src/bin/storybook.js | 9 + src/index.js | 26 +++ src/manager/components/PreviewHelp.js | 58 +++++ src/manager/index.js | 6 + src/manager/provider.js | 72 +++++++ src/preview/components/OnDeviceUI/index.js | 199 ++++++++++++++++++ .../components/OnDeviceUI/menu_close.png | Bin 0 -> 1110 bytes .../components/OnDeviceUI/menu_open.png | Bin 0 -> 4744 bytes src/preview/components/OnDeviceUI/style.js | 42 ++++ src/preview/components/StoryListView/index.js | 129 ++++++++++++ src/preview/components/StoryListView/style.js | 25 +++ src/preview/components/StoryView/index.js | 66 ++++++ src/preview/components/StoryView/style.js | 11 + src/preview/index.js | 112 ++++++++++ src/preview/story_kind.js | 31 +++ src/preview/story_store.js | 88 ++++++++ src/server/addons.js | 6 + src/server/config.js | 137 ++++++++++++ src/server/config/babel.js | 29 +++ src/server/config/babel.prod.js | 30 +++ src/server/config/defaults/webpack.config.js | 63 ++++++ src/server/config/utils.js | 12 ++ src/server/config/webpack.config.js | 34 +++ src/server/config/webpack.config.prod.js | 57 +++++ src/server/index.html.js | 50 +++++ src/server/index.js | 39 ++++ src/server/middleware.js | 65 ++++++ 37 files changed, 1786 insertions(+) create mode 100644 .babelrc create mode 100644 .npmignore create mode 100644 addons.js create mode 100644 docs/assets/readme/screenshot.png create mode 100644 docs/manual-setup.md create mode 100644 docs/using-devices.md create mode 100644 package.json create mode 100644 readme.md create mode 100644 src/bin/storybook-build.js create mode 100644 src/bin/storybook-start.js create mode 100644 src/bin/storybook.js create mode 100644 src/index.js create mode 100644 src/manager/components/PreviewHelp.js create mode 100644 src/manager/index.js create mode 100644 src/manager/provider.js create mode 100644 src/preview/components/OnDeviceUI/index.js create mode 100644 src/preview/components/OnDeviceUI/menu_close.png create mode 100644 src/preview/components/OnDeviceUI/menu_open.png create mode 100644 src/preview/components/OnDeviceUI/style.js create mode 100644 src/preview/components/StoryListView/index.js create mode 100644 src/preview/components/StoryListView/style.js create mode 100644 src/preview/components/StoryView/index.js create mode 100644 src/preview/components/StoryView/style.js create mode 100644 src/preview/index.js create mode 100644 src/preview/story_kind.js create mode 100644 src/preview/story_store.js create mode 100644 src/server/addons.js create mode 100644 src/server/config.js create mode 100644 src/server/config/babel.js create mode 100644 src/server/config/babel.prod.js create mode 100644 src/server/config/defaults/webpack.config.js create mode 100644 src/server/config/utils.js create mode 100644 src/server/config/webpack.config.js create mode 100644 src/server/config/webpack.config.prod.js create mode 100644 src/server/index.html.js create mode 100755 src/server/index.js create mode 100644 src/server/middleware.js diff --git a/.babelrc b/.babelrc new file mode 100644 index 0000000..845c3cf --- /dev/null +++ b/.babelrc @@ -0,0 +1,3 @@ +{ + "presets": ["env", "stage-0", "react"] +} diff --git a/.npmignore b/.npmignore new file mode 100644 index 0000000..329fc8d --- /dev/null +++ b/.npmignore @@ -0,0 +1,3 @@ +docs +src +.babelrc diff --git a/addons.js b/addons.js new file mode 100644 index 0000000..fcad03f --- /dev/null +++ b/addons.js @@ -0,0 +1,4 @@ +// We are not using this file inside this project. +// But, this will be useful when a user is configuring it's own addons. +// Then he can import this file to add default set of addons. +require('./dist/server/addons'); diff --git a/docs/assets/readme/screenshot.png b/docs/assets/readme/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..12321c55d6d7474bf0868d681ad26d87510901ed GIT binary patch literal 347956 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 B>jwY; literal 0 HcmV?d00001 diff --git a/docs/manual-setup.md b/docs/manual-setup.md new file mode 100644 index 0000000..1e82f66 --- /dev/null +++ b/docs/manual-setup.md @@ -0,0 +1,69 @@ +# Manual Setup + +First, install the `@storybook/react-native` module + +```sh +npm install @storybook/react-native --save-dev +``` + +Create a new directory called `storybook` in your project root and create an entry file (index.ios.js or index.android.js) as given below. (Don't forget to replace "MyApplicationName" with your app name). + +```js +import { AppRegistry } from 'react-native'; +import { getStorybookUI, configure } from '@storybook/react-native'; +import './addons'; + +// import your stories +configure(function() { + require('./stories'); +}, module); + +const StorybookUI = getStorybookUI({ + port: 7007, + host: 'localhost', +}); +AppRegistry.registerComponent('MyApplicationName', () => StorybookUI); +``` + +Create a file named `addons.js` file in `storybook` directory to use default set of addons. + +```js +import '@storybook/addon-actions'; +import '@storybook/addon-links'; +``` + +Then write your first story in the `stories` directory like this: + +```js +import { storiesOf } from '@storybook/react-native'; +import { View, Text } from 'react-native'; + +const style = { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + backgroundColor: '#F5FCFF' +}; +const CenteredView = ({ children }) => ( + + {children} + +); + +storiesOf('CenteredView') + .add('default view', () => ( + + Hello Storybook + + )); +``` + +Then add following NPM script into your `package.json` file: + +```json +{ + "scripts": { + "storybook": "storybook start -p 7007" + } +} +``` diff --git a/docs/using-devices.md b/docs/using-devices.md new file mode 100644 index 0000000..40032f9 --- /dev/null +++ b/docs/using-devices.md @@ -0,0 +1,27 @@ +# Connecting Devices + +In order to work with React Native Storybook, one or more devices should be connected. Stories will only show when devices are available. + +## iOS simulator + +- Start with `react-native run-ios` + +## Android emulator + +- Get your AVD name with `emulator -list-avds` +- Start the emulator `emulator -avd MY_AVD_NAME` +- Forward port 8081 `adb reverse tcp:8081 tcp:8081` +- Forward port 9001 `adb reverse tcp:9001 tcp:9001` +- Start with `react-native run-android` + +### Issues +**Problem**: If you run into a `No such file or directory` error + +**Solution**: You must run the emulator from its directory: `cd $(dirname $(which emulator)) && ./emulator -avd MY_AVD_NAME` + +## Android device + +- Connect your device with adb +- Forward port 8081 `adb reverse tcp:8081 tcp:8081` +- Forward port 9001 `adb reverse tcp:9001 tcp:9001` +- Start with `react-native run-android` diff --git a/package.json b/package.json new file mode 100644 index 0000000..118ce11 --- /dev/null +++ b/package.json @@ -0,0 +1,80 @@ +{ + "name": "@storybook/react-native", + "version": "3.2.18", + "description": "A better way to develop React Native Components for your app", + "keywords": [ + "react", + "react-native", + "storybook" + ], + "homepage": "https://github.com/storybooks/storybook/tree/master/app/react-native", + "bugs": { + "url": "https://github.com/storybooks/storybook/issues" + }, + "license": "MIT", + "main": "dist/index.js", + "bin": { + "storybook": "dist/bin/storybook.js" + }, + "repository": { + "type": "git", + "url": "https://github.com/storybooks/storybook.git" + }, + "scripts": { + "prepare": "node ../../scripts/prepare.js" + }, + "dependencies": { + "@storybook/addon-actions": "^3.2.18", + "@storybook/addon-links": "^3.2.18", + "@storybook/addons": "^3.2.18", + "@storybook/channel-websocket": "^3.2.18", + "@storybook/ui": "^3.2.18", + "autoprefixer": "^7.2.3", + "babel-core": "^6.26.0", + "babel-loader": "^7.1.2", + "babel-plugin-syntax-async-functions": "^6.13.0", + "babel-plugin-syntax-trailing-function-commas": "^6.22.0", + "babel-plugin-transform-class-properties": "^6.24.1", + "babel-plugin-transform-object-rest-spread": "^6.23.0", + "babel-plugin-transform-react-constant-elements": "^6.23.0", + "babel-plugin-transform-regenerator": "^6.26.0", + "babel-plugin-transform-runtime": "^6.23.0", + "babel-polyfill": "^6.26.0", + "babel-preset-env": "^1.6.1", + "babel-preset-minify": "^0.2.0", + "babel-preset-react": "^6.24.1", + "babel-preset-stage-0": "^6.24.1", + "babel-runtime": "^6.26.0", + "case-sensitive-paths-webpack-plugin": "^2.1.1", + "commander": "^2.12.2", + "css-loader": "^0.28.7", + "events": "^1.1.1", + "express": "^4.16.2", + "file-loader": "^1.1.6", + "find-cache-dir": "^1.0.0", + "global": "^4.3.2", + "json-loader": "^0.5.7", + "json5": "^0.5.1", + "postcss-loader": "^2.0.9", + "prop-types": "^15.6.0", + "react-native-compat": "^1.0.0", + "react-native-iphone-x-helper": "^1.0.1", + "shelljs": "^0.7.8", + "style-loader": "^0.19.1", + "url-loader": "^0.6.2", + "url-parse": "^1.1.9", + "util-deprecate": "^1.0.2", + "uuid": "^3.1.0", + "webpack": "^3.10.0", + "webpack-dev-middleware": "^1.12.2", + "webpack-hot-middleware": "^2.21.0", + "ws": "^3.3.3" + }, + "devDependencies": { + "react-native": "^0.51.0" + }, + "peerDependencies": { + "react": "*", + "react-native": ">=0.27.0" + } +} diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..436e60d --- /dev/null +++ b/readme.md @@ -0,0 +1,101 @@ +# Storybook for React Native + +[![Build Status on CircleCI](https://circleci.com/gh/storybooks/storybook.svg?style=shield)](https://circleci.com/gh/storybooks/storybook) +[![CodeFactor](https://www.codefactor.io/repository/github/storybooks/storybook/badge)](https://www.codefactor.io/repository/github/storybooks/storybook) +[![Known Vulnerabilities](https://snyk.io/test/github/storybooks/storybook/8f36abfd6697e58cd76df3526b52e4b9dc894847/badge.svg)](https://snyk.io/test/github/storybooks/storybook/8f36abfd6697e58cd76df3526b52e4b9dc894847) +[![BCH compliance](https://bettercodehub.com/edge/badge/storybooks/storybook)](https://bettercodehub.com/results/storybooks/storybook) [![codecov](https://codecov.io/gh/storybooks/storybook/branch/master/graph/badge.svg)](https://codecov.io/gh/storybooks/storybook) +[![Storybook Slack](https://now-examples-slackin-nqnzoygycp.now.sh/badge.svg)](https://now-examples-slackin-nqnzoygycp.now.sh/) +[![Backers on Open Collective](https://opencollective.com/storybook/backers/badge.svg)](#backers) [![Sponsors on Open Collective](https://opencollective.com/storybook/sponsors/badge.svg)](#sponsors) + +* * * + +With Storybook for React Native you can design and develop individual React Native components without running your app. + +![Storybook Screenshot](docs/assets/readme/screenshot.png) + +For more information visit: [storybook.js.org](https://storybook.js.org) + +## Getting Started + +The `getstorybook` tool can be used to add Storybook to your React Native app. Install the `getstorybook` tool if necessary and run it from your project directory with these commands: + +```shell +npm -g i @storybook/cli +getstorybook +``` + +After you have installed, there are additional steps for `create-react-native-app` apps. See the section for details, otherwise skip to [Start Storybook](#start-storybook) +to see the next step. + +## Create React Native App (CRNA) + +If you run `getstorybook` inside a CRNA app, you'll be notified that there is an extra step required to use Storybook. + +The easiest way to use Storybook inside CRNA is to simply replace your App with the Storybook UI, which is possible by replacing `App.js` with a single line of code: + +```js +export default from './storybook'; +``` + +This will get you up and running quickly, but then you lose your app! +There are multiple options here. for example, you can export conditionally: + +```js +import StorybookUI from './storybook'; + +import App from './app'; + +module.exports = __DEV__ ? StorybookUI : App; +``` + +Alternatively, `StorybookUI` is simply a RN `View` component that can be embedded anywhere in your RN application, e.g. on a tab or within an admin screen. + +## Start Storybook + +After initial setup start the storybook server with the storybook npm script. + +```shell +npm run storybook +``` + +Now, you can open to view your storybook menus in the browser. + +## Start App + +To see your Storybook stories on the device, you should start your mobile app for the `` of your choice (typically `ios` or `android`). (Note that due to an implementation detail, your stories will only show up in the left pane of your browser window after your device has connected to this storybook server.) + +For CRNA apps: + + npm run + +For RN apps: + + react-native run- + +Once your app is started, changing the selected story in web browser will update the story displayed within your mobile app. + +If you are using Android and you get the following error after running the app: `'websocket: connection error', 'Failed to connect to localhost/127.0.0.1:7007'`, you have to forward the port 7007 on your device/emulator to port 7007 on your local machine with the following command: +`adb reverse tcp:7007 tcp:7007` + +## Using Haul-cli + +[Haul](https://github.com/callstack-io/haul) is an alternative to the react-native packager and has several advantages in that it allows you to define your own loaders, and handles symlinks better. + +If you want to use haul instead of the react-native packager, modify the storybook npm script to: + +```sh +storybook start -p 7007 --haul webpack.haul.storybook.js --platform android | ios | all +``` + +Where webpack.haul.storybook.js should look something like this: + +```js +module.exports = ({ platform }) => ({ + entry: `./storybook/index.${platform}.js`, + // any other haul config here. +}); +``` + +## Learn More + +Check the `docs` directory in this repo for more advanced setup guides and other info. diff --git a/src/bin/storybook-build.js b/src/bin/storybook-build.js new file mode 100644 index 0000000..703e94b --- /dev/null +++ b/src/bin/storybook-build.js @@ -0,0 +1,5 @@ +#!/usr/bin/env node + +import program from 'commander'; + +program.option('-o, --outdir ', 'location to store built storybook').parse(process.argv); diff --git a/src/bin/storybook-start.js b/src/bin/storybook-start.js new file mode 100644 index 0000000..620c2ba --- /dev/null +++ b/src/bin/storybook-start.js @@ -0,0 +1,98 @@ +#!/usr/bin/env node +/* eslint-disable no-console */ + +import path from 'path'; +import program from 'commander'; +import shelljs from 'shelljs'; +import Server from '../server'; + +program + .option('-h, --host ', 'host to listen on') + .option('-p, --port ', 'port to listen on') + .option('--haul ', 'use haul with config file') + .option('--platform ', 'build platform-specific build') + .option('-s, --secured', 'whether server is running on https') + .option('-c, --config-dir [dir-name]', 'storybook config directory') + .option('-e, --environment [environment]', 'DEVELOPMENT/PRODUCTION environment for webpack') + .option('-r, --reset-cache', 'reset react native packager') + .option('--skip-packager', 'run only storybook server') + .option('-i, --manual-id', 'allow multiple users to work with same storybook') + .option('--smoke-test', 'Exit after successful start') + .option('--packager-port ', 'Custom packager port') + .option('--root [root]', 'Add additional root(s) to be used by the packager in this project') + .option('--projectRoots [projectRoots]', 'Override the root(s) to be used by the packager') + .parse(process.argv); + +const projectDir = path.resolve(); +const configDir = path.resolve(program.configDir || './storybook'); +const listenAddr = [program.port]; +if (program.host) { + listenAddr.push(program.host); +} + +const server = new Server({ + projectDir, + configDir, + environment: program.environment, + manualId: program.manualId, + secured: program.secured, +}); + +server.listen(...listenAddr, err => { + if (err) { + throw err; + } + const address = `http://${program.host || 'localhost'}:${program.port}/`; + console.info(`\nReact Native Storybook started on => ${address}\n`); + if (program.smokeTest) { + process.exit(0); + } +}); + +if (!program.skipPackager) { + let symlinks = []; + + let roots = [projectDir]; + + if (program.root) { + roots = roots.concat(program.root.split(',').map(root => path.resolve(root))); + } + + try { + const findSymlinksPaths = require('react-native/local-cli/util/findSymlinksPaths'); // eslint-disable-line global-require + symlinks = findSymlinksPaths(path.join(projectDir, 'node_modules'), [projectDir]); + } catch (e) { + console.warn(`Unable to load findSymlinksPaths: ${e.message}`); + } + + let projectRoots = (configDir === projectDir ? [configDir] : [configDir, projectDir]).concat( + symlinks + ); + + if (program.projectRoots) { + projectRoots = projectRoots.concat( + program.projectRoots.split(',').map(root => path.resolve(root)) + ); + } + + let cliCommand = 'node node_modules/react-native/local-cli/cli.js start'; + if (program.haul) { + const platform = program.platform || 'all'; + cliCommand = `node node_modules/.bin/haul start --config ${ + program.haul + } --platform ${platform}`; + } + // RN packager + shelljs.exec( + [ + cliCommand, + `--projectRoots ${projectRoots.join(',')}`, + `--root ${roots.join(',')}`, + program.resetCache && '--reset-cache', + program.packagerPort && `--port=${program.packagerPort}`, + ] + .filter(x => x) + .join(' '), + { async: true } + ); +} diff --git a/src/bin/storybook.js b/src/bin/storybook.js new file mode 100644 index 0000000..4fcf271 --- /dev/null +++ b/src/bin/storybook.js @@ -0,0 +1,9 @@ +#!/usr/bin/env node + +import program from 'commander'; + +program + .version(require('../../package.json').version) + .command('start', 'starts storybook webapp', { isDefault: true }) + .command('build', 'builds storybook webapp') + .parse(process.argv); diff --git a/src/index.js b/src/index.js new file mode 100644 index 0000000..f197d31 --- /dev/null +++ b/src/index.js @@ -0,0 +1,26 @@ +import deprecate from 'util-deprecate'; + +// NOTE export these to keep backwards compatibility +import { action as deprecatedAction } from '@storybook/addon-actions'; +import { linkTo as deprecatedLinkTo } from '@storybook/addon-links'; + +import Preview from './preview'; + +const preview = new Preview(); + +export const storiesOf = preview.storiesOf.bind(preview); +export const setAddon = preview.setAddon.bind(preview); +export const addDecorator = preview.addDecorator.bind(preview); +export const configure = preview.configure.bind(preview); +export const getStorybook = preview.getStorybook.bind(preview); +export const getStorybookUI = preview.getStorybookUI.bind(preview); + +export const action = deprecate( + deprecatedAction, + '@storybook/react action is deprecated. See: https://github.com/storybooks/storybook/tree/master/addons/actions' +); + +export const linkTo = deprecate( + deprecatedLinkTo, + '@storybook/react linkTo is deprecated. See: https://github.com/storybooks/storybook/tree/master/addons/links' +); diff --git a/src/manager/components/PreviewHelp.js b/src/manager/components/PreviewHelp.js new file mode 100644 index 0000000..7e01121 --- /dev/null +++ b/src/manager/components/PreviewHelp.js @@ -0,0 +1,58 @@ +import React from 'react'; + +const styles = { + main: { + margin: 15, + maxWidth: 600, + lineHeight: 1.4, + fontFamily: '"Helvetica Neue", Helvetica, "Segoe UI", Arial, freesans, sans-serif', + }, + + code: { + fontSize: 15, + fontWeight: 600, + padding: '2px 5px', + border: '1px solid #eae9e9', + borderRadius: 4, + backgroundColor: '#f3f2f2', + color: '#3a3a3a', + }, + + codeBlock: { + backgroundColor: '#f3f2f2', + padding: '1px 10px', + margin: '10px 0', + }, +}; + +const PreviewHelp = () => ( +
+

Welcome to storybook

+

This is a UI component dev environment for your app.

+

+ We've added some basic stories inside the {storybook/stories}{' '} + directory. A story is a single state of one or more UI components. You can have as many + stories as you want. Basically a story is like a visual test case. +

+

+ To see your Storybook stories on the device, you should start your mobile app for the{' '} + <platform> of your choice (typically ios or android). + (Note that due to an implementation detail, your stories will only show up in the left-pane + after your device has connected to this storybook server.) +

+

+ For create-react-native-app apps: +

+
+
npm run <platform>
+
+

+ For react-native init apps: +

+
+
react-native run-<platform>
+
+
+); + +export { PreviewHelp as default }; diff --git a/src/manager/index.js b/src/manager/index.js new file mode 100644 index 0000000..ef3f0b4 --- /dev/null +++ b/src/manager/index.js @@ -0,0 +1,6 @@ +import { window, location, document } from 'global'; +import renderStorybookUI from '@storybook/ui'; +import Provider from './provider'; + +const rootEl = document.getElementById('root'); +renderStorybookUI(rootEl, new Provider({ url: location.host, options: window.storybookOptions })); diff --git a/src/manager/provider.js b/src/manager/provider.js new file mode 100644 index 0000000..935f1ac --- /dev/null +++ b/src/manager/provider.js @@ -0,0 +1,72 @@ +import React from 'react'; +import { Provider } from '@storybook/ui'; +import createChannel from '@storybook/channel-websocket'; +import addons from '@storybook/addons'; +import uuid from 'uuid'; +import PreviewHelp from './components/PreviewHelp'; + +export default class ReactProvider extends Provider { + constructor({ url: domain, options }) { + super(); + this.options = options; + this.selection = null; + try { + this.channel = addons.getChannel(); + } catch (err) { + this.channel = undefined; + } + + const { secured } = options; + const websocketType = secured ? 'wss' : 'ws'; + let url = `${websocketType}://${domain}`; + if (options.manualId) { + const pairedId = uuid().substr(-6); + + this.pairedId = pairedId; + url += `/pairedId=${this.pairedId}`; + } + + if (!this.channel) { + this.channel = createChannel({ url }); + addons.setChannel(this.channel); + } + } + + getPanels() { + return addons.getPanels(); + } + + renderPreview(kind, story) { + this.selection = { kind, story }; + this.channel.emit('setCurrentStory', { kind, story }); + const renderPreview = addons.getPreview(); + + const innerPreview = renderPreview ? renderPreview(kind, story) : null; + + if (this.options.manualId) { + return ( +
+ Your ID: {this.pairedId} + {innerPreview} +
+ ); + } + + return innerPreview || ; + } + + handleAPI(api) { + api.onStory((kind, story) => { + this.selection = { kind, story }; + this.channel.emit('setCurrentStory', this.selection); + }); + this.channel.on('setStories', data => { + api.setStories(data.stories); + }); + this.channel.on('getCurrentStory', () => { + this.channel.emit('setCurrentStory', this.selection); + }); + this.channel.emit('getStories'); + addons.loadAddons(api); + } +} diff --git a/src/preview/components/OnDeviceUI/index.js b/src/preview/components/OnDeviceUI/index.js new file mode 100644 index 0000000..9cc603f --- /dev/null +++ b/src/preview/components/OnDeviceUI/index.js @@ -0,0 +1,199 @@ +import React, { Component } from 'react'; +import PropTypes from 'prop-types'; +import { ifIphoneX } from 'react-native-iphone-x-helper'; + +import { + Animated, + Dimensions, + Easing, + View, + TouchableWithoutFeedback, + Image, + Text, + StatusBar, +} from 'react-native'; +import style from './style'; +import StoryListView from '../StoryListView'; +import StoryView from '../StoryView'; + +/** + * Returns true if the screen is in portrait mode + */ +const isDeviceInPortrait = () => { + const dim = Dimensions.get('screen'); + return dim.height >= dim.width; +}; + +const openMenuImage = require('./menu_open.png'); +const closeMenuImage = require('./menu_close.png'); + +const DRAWER_WIDTH = 250; + +export default class OnDeviceUI extends Component { + constructor(...args) { + super(...args); + + this.state = { + menuAnimation: new Animated.Value(0), + isMenuOpen: false, + selectedKind: null, + selectedStory: null, + isPortrait: isDeviceInPortrait(), + }; + } + + componentWillMount = () => { + Dimensions.addEventListener('change', this.handleDeviceRotation); + this.props.events.on('story', this.handleStoryChange); + }; + + componentDidMount() { + // StatusBar.setHidden(true); + } + + componentWillUnmount = () => { + Dimensions.removeEventListener('change', this.handleDeviceRotation); + this.props.events.removeListener('story', this.handleStoryChange); + }; + + handleDeviceRotation = () => { + this.setState({ + isPortrait: isDeviceInPortrait(), + }); + }; + + handleStoryChange = (storyFn, selection) => { + const { kind, story } = selection; + this.setState({ + selectedKind: kind, + selectedStory: story, + }); + }; + + handleToggleMenu = () => { + const isMenuOpen = !this.state.isMenuOpen; + + Animated.timing(this.state.menuAnimation, { + toValue: isMenuOpen ? 1 : 0, + duration: 150, + easing: Easing.linear, + }).start(); + + this.setState({ + isMenuOpen, + }); + }; + + render() { + const { stories, events, url } = this.props; + const { isPortrait, menuAnimation, selectedKind, selectedStory } = this.state; + + const iPhoneXStyles = ifIphoneX( + isPortrait + ? { + marginVertical: 30, + } + : { + marginHorizontal: 30, + }, + {} + ); + + const menuStyles = [ + style.menuContainer, + { + transform: [ + { + translateX: menuAnimation.interpolate({ + inputRange: [0, 1], + outputRange: [-DRAWER_WIDTH - 30, 0], + }), + }, + ], + }, + iPhoneXStyles, + ]; + + const headerStyles = [ + style.headerContainer, + { + opacity: menuAnimation.interpolate({ + inputRange: [0, 1], + outputRange: [1, 0], + }), + }, + ]; + + const previewContainerStyles = [style.previewContainer, iPhoneXStyles]; + + const previewWrapperStyles = [style.previewWrapper, iPhoneXStyles]; + + /* + Checks if import is a base64 encoded string uri. + If using haul as bundler, some projects are set up to include small files as base64 strings. + */ + let openIcon = openMenuImage; + if (typeof openIcon === 'string') { + openIcon = { uri: openMenuImage }; + } + let closeIcon = closeMenuImage; + if (typeof closeIcon === 'string') { + closeIcon = { uri: closeMenuImage }; + } + + return ( + + + {/* + + + + + + + {selectedKind} {selectedStory} + + */} + + + + + + + + + + + + + + + + ); + } +} + +OnDeviceUI.propTypes = { + stories: PropTypes.shape({ + dumpStoryBook: PropTypes.func.isRequired, + on: PropTypes.func.isRequired, + emit: PropTypes.func.isRequired, + removeListener: PropTypes.func.isRequired, + }).isRequired, + events: PropTypes.shape({ + on: PropTypes.func.isRequired, + emit: PropTypes.func.isRequired, + removeListener: PropTypes.func.isRequired, + }).isRequired, + url: PropTypes.string, +}; + +OnDeviceUI.defaultProps = { + url: '', +}; diff --git a/src/preview/components/OnDeviceUI/menu_close.png b/src/preview/components/OnDeviceUI/menu_close.png new file mode 100644 index 0000000000000000000000000000000000000000..557b3e21aebd211c2afab5972cca2a8c342f78b9 GIT binary patch literal 1110 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSEX7WqAsj$Z!;#Vf4nJ za0`PlBg3pY5)2H?KRjI=Ln`LHy%U)y>?qRu@cvD2k!PkZk{%)sHUNy}ZHc4qF`a<7uTlYf^75c8^_uTl#_DGTUvp*!Eqp zbBUPW@Kr{-^qJn@b+=hJOio>1d}rBxf&YA)CnoNXd&6`;^3AThr#9So(=ORvyOL$P zu2fxwy2VeOt>+&(^K4}~-6ns{_I0nhWy(*-wveWXhy9J|$Ex#7{N^OK1vJe7a=&l8 z{r`T)$?~fa%vWQYZU9B%mkFDA1U5){Pf+?}_~CL0&KCS52th*g2Z|?K@Fx~Zsd)noa4ac73 z#H()L{I9$r%QPVTwU3ij5vR_f{RckwXGrsGX9;^)J?HNv#c2)?;}b)hd{;L<+tGa} z-=sxIbccuKA<3K~b^fMP9UkhhXakC><_6^fMO0LQTHM2efJ~(@)f-Vs{ap5j z=T&dGJ)Hd^f~htCOfXPJP0nk<2jkmH@th+2ge`&Wxf^vF50#%<#lm&puvu+ z&>!#S+v{Iyy~o7nBhSR{6VJ@9Q~pEC(Jk&!IH%DEv3*_%C$fKNH8Q?`*#7jbU|Fb! zYRy!I#!En1B`s4Rld1cIK2MypYD7cm4{4syH;=80Y?EKX;`fBZK7iBcv}9et;ln!J zPZa++s2V)e1d)#nfuzTo;vbD(6FfK{va8x&+s2{V3e+@libUN4A)S>^J}~q1Z`KLo zeaNom=x+*=lD!I&+OonDsCPyp2T`) zybp{I^Vx6EIGFxm*HwpHw*%TD|Mu&6eYlh}OYD2#4__Ux4cTUAWzGlw*t|sVVDj$3 zwBHSf=BuZ2`td%`Fkz}&{NeVJUsZn&7j>vHaO@JQF`t{zHY1;LYn%KLJ;!g` z85+bj{@5i=doc0iJ!xBqhu=k4vshn~&NpK63;0p18_i_S?#N)?sIT#7pO|jr>ctNd zy6aSbaIATLV}gTe~ HDWM4fg!=4x literal 0 HcmV?d00001 diff --git a/src/preview/components/OnDeviceUI/menu_open.png b/src/preview/components/OnDeviceUI/menu_open.png new file mode 100644 index 0000000000000000000000000000000000000000..64a204a093d342e13c864811f71d5dbe1e3bf273 GIT binary patch literal 4744 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 jfazZg=Kt&JtZeNn%C#AP<9(uEP+x}*c ( + + {title} + +); + +SectionHeader.propTypes = { + title: PropTypes.string.isRequired, + selected: PropTypes.bool.isRequired, +}; + +const ListItem = ({ title, selected, onPress }) => ( + + {title} + +); + +ListItem.propTypes = { + title: PropTypes.string.isRequired, + onPress: PropTypes.func.isRequired, + selected: PropTypes.bool.isRequired, +}; + +export default class StoryListView extends Component { + constructor(props, ...args) { + super(props, ...args); + + const ds = new ListView.DataSource({ + rowHasChanged: (r1, r2) => r1 !== r2, + sectionHeaderHasChanged: (s1, s2) => s1 !== s2, + }); + + this.state = { + dataSource: ds.cloneWithRowsAndSections({}), + }; + + this.storyAddedHandler = this.handleStoryAdded.bind(this); + this.changeStoryHandler = this.changeStory.bind(this); + + this.props.stories.on('storyAdded', this.storyAddedHandler); + } + + componentDidMount() { + this.handleStoryAdded(); + const dump = this.props.stories.dumpStoryBook(); + const nonEmptyKind = dump.find(kind => kind.stories.length > 0); + if (nonEmptyKind) { + this.changeStory(nonEmptyKind.kind, nonEmptyKind.stories[0]); + } + } + + componentWillUnmount() { + this.props.stories.removeListener('storyAdded', this.storyAddedHandler); + } + + handleStoryAdded() { + if (this.props.stories) { + const data = this.props.stories.dumpStoryBook(); + + const sections = data.reduce( + (map, section) => ({ + ...map, + [section.kind]: section.stories.map(story => ({ + key: story, + name: story, + kind: section.kind, + })), + }), + {} + ); + this.setState({ + dataSource: this.state.dataSource.cloneWithRowsAndSections(sections), + }); + } + } + + changeStory(kind, story) { + this.props.events.emit('setCurrentStory', { kind, story }); + } + + render() { + return ( + ( + this.changeStory(item.kind, item.name)} + /> + )} + renderSectionHeader={(sectionData, sectionName) => ( + + )} + dataSource={this.state.dataSource} + stickySectionHeadersEnabled={false} + /> + ); + } +} + +StoryListView.propTypes = { + stories: PropTypes.shape({ + dumpStoryBook: PropTypes.func.isRequired, + on: PropTypes.func.isRequired, + emit: PropTypes.func.isRequired, + removeListener: PropTypes.func.isRequired, + }).isRequired, + events: PropTypes.shape({ + on: PropTypes.func.isRequired, + emit: PropTypes.func.isRequired, + removeListener: PropTypes.func.isRequired, + }).isRequired, + selectedKind: PropTypes.string, + selectedStory: PropTypes.string, + width: PropTypes.number.isRequired, +}; + +StoryListView.defaultProps = { + selectedKind: null, + selectedStory: null, +}; diff --git a/src/preview/components/StoryListView/style.js b/src/preview/components/StoryListView/style.js new file mode 100644 index 0000000..fe376bb --- /dev/null +++ b/src/preview/components/StoryListView/style.js @@ -0,0 +1,25 @@ +export default { + list: { + flex: 1, + }, + header: { + paddingTop: 5, + paddingBottom: 5, + }, + headerText: { + fontSize: 20, + }, + headerTextSelected: { + fontWeight: 'bold', + }, + item: { + paddingVertical: 5, + paddingHorizontal: 16, + }, + itemText: { + fontSize: 16, + }, + itemTextSelected: { + fontWeight: 'bold', + }, +}; diff --git a/src/preview/components/StoryView/index.js b/src/preview/components/StoryView/index.js new file mode 100644 index 0000000..f0d8979 --- /dev/null +++ b/src/preview/components/StoryView/index.js @@ -0,0 +1,66 @@ +import PropTypes from 'prop-types'; +import React, { Component } from 'react'; +import { View, Text } from 'react-native'; +import style from './style'; + +export default class StoryView extends Component { + constructor(props, ...args) { + super(props, ...args); + this.state = { storyFn: null, selection: {} }; + + this.storyHandler = this.selectStory.bind(this); + + this.props.events.on('story', this.storyHandler); + } + + componentWillUnmount() { + this.props.events.removeListener('story', this.storyHandler); + } + + selectStory(storyFn, selection) { + this.setState({ storyFn, selection }); + } + + renderHelp() { + return ( + + {this.props.url && this.props.url.length ? ( + + Please open the Storybook UI ( + {this.props.url} + ) with a web browser and select a story for preview. + + ) : ( + + Please open the Storybook UI with a web browser and select a story for preview. + + )} + + ); + } + + render() { + if (!this.state.storyFn) { + return this.renderHelp(); + } + const { kind, story } = this.state.selection; + const context = { kind, story }; + return ( + + {this.state.storyFn(context)} + + ); + } +} + +StoryView.propTypes = { + events: PropTypes.shape({ + on: PropTypes.func.isRequired, + removeListener: PropTypes.func.isRequired, + }).isRequired, + url: PropTypes.string, +}; + +StoryView.defaultProps = { + url: '', +}; diff --git a/src/preview/components/StoryView/style.js b/src/preview/components/StoryView/style.js new file mode 100644 index 0000000..b5fe466 --- /dev/null +++ b/src/preview/components/StoryView/style.js @@ -0,0 +1,11 @@ +export default { + main: { + flex: 1, + }, + help: { + flex: 1, + padding: 15, + alignItems: 'center', + justifyContent: 'center', + }, +}; diff --git a/src/preview/index.js b/src/preview/index.js new file mode 100644 index 0000000..6b0270e --- /dev/null +++ b/src/preview/index.js @@ -0,0 +1,112 @@ +/* eslint no-underscore-dangle: 0 */ + +import React from 'react'; +import { NativeModules } from 'react-native'; +import parse from 'url-parse'; +import addons from '@storybook/addons'; +import createChannel from '@storybook/channel-websocket'; +import { EventEmitter } from 'events'; +import StoryStore from './story_store'; +import StoryKindApi from './story_kind'; +import OnDeviceUI from './components/OnDeviceUI'; +import StoryView from './components/StoryView'; + +export default class Preview { + constructor() { + this._addons = {}; + this._decorators = []; + this._stories = new StoryStore(); + this._events = new EventEmitter(); + } + + storiesOf(kind, module) { + if (module && module.hot) { + // TODO remove the kind on dispose + } + return new StoryKindApi(this._stories, this._addons, this._decorators, kind); + } + + setAddon(addon) { + Object.assign(this._addons, addon); + } + + addDecorator(decorator) { + this._decorators.push(decorator); + } + + configure(loadStories, module) { + loadStories(); + if (module && module.hot) { + module.hot.accept(() => this._sendSetStories()); + // TODO remove all global decorators on dispose + } + } + + getStorybook() { + return this._stories.getStoryKinds().map(kind => { + const stories = this._stories.getStories(kind).map(name => { + const render = this._stories.getStory(kind, name); + return { name, render }; + }); + return { kind, stories }; + }); + } + + getStorybookUI(params = {}) { + return () => { + let webUrl = null; + let channel = null; + + try { + channel = addons.getChannel(); + } catch (e) { + // getChannel throws if the channel is not defined, + // which is fine in this case (we will define it below) + } + + if (params.resetStorybook || !channel) { + const host = params.host || parse(NativeModules.SourceCode.scriptURL).hostname; + const port = params.port !== false ? `:${params.port || 7007}` : ''; + + const query = params.query || ''; + const { secured } = params; + const websocketType = secured ? 'wss' : 'ws'; + const httpType = secured ? 'https' : 'http'; + + const url = `${websocketType}://${host}${port}/${query}`; + webUrl = `${httpType}://${host}${port}`; + channel = createChannel({ url }); + addons.setChannel(channel); + } + channel.on('getStories', () => this._sendSetStories()); + channel.on('setCurrentStory', d => this._selectStory(d)); + this._events.on('setCurrentStory', d => this._selectStory(d)); + this._sendSetStories(); + this._sendGetCurrentStory(); + + // finally return the preview component + return params.onDeviceUI ? ( + + ) : ( + + ); + }; + } + + _sendSetStories() { + const channel = addons.getChannel(); + const stories = this._stories.dumpStoryBook(); + channel.emit('setStories', { stories }); + } + + _sendGetCurrentStory() { + const channel = addons.getChannel(); + channel.emit('getCurrentStory'); + } + + _selectStory(selection) { + const { kind, story } = selection; + const storyFn = this._stories.getStory(kind, story); + this._events.emit('story', storyFn, selection); + } +} diff --git a/src/preview/story_kind.js b/src/preview/story_kind.js new file mode 100644 index 0000000..edec71a --- /dev/null +++ b/src/preview/story_kind.js @@ -0,0 +1,31 @@ +/* eslint no-underscore-dangle: 0 */ + +export default class StoryKindApi { + constructor(stories, addons, decorators, kind) { + this.kind = kind; + this._stories = stories; + this._decorators = decorators.slice(); + Object.assign(this, addons); + } + + addDecorator(decorator) { + this._decorators.push(decorator); + return this; + } + + add(story, fn) { + const decorated = this._decorate(fn); + this._stories.addStory(this.kind, story, decorated); + return this; + } + + _decorate(fn) { + return this._decorators.reduce( + (decorated, decorator) => context => { + const _fn = () => decorated(context); + return decorator(_fn, context); + }, + fn + ); + } +} diff --git a/src/preview/story_store.js b/src/preview/story_store.js new file mode 100644 index 0000000..07e9187 --- /dev/null +++ b/src/preview/story_store.js @@ -0,0 +1,88 @@ +/* eslint no-underscore-dangle: 0 */ +import { EventEmitter } from 'events'; + +let count = 0; + +export default class StoryStore extends EventEmitter { + constructor() { + super(); + this._data = {}; + } + + addStory(kind, name, fn) { + count += 1; + if (!this._data[kind]) { + this._data[kind] = { + kind, + index: count, + stories: {}, + }; + } + + this._data[kind].stories[name] = { + name, + index: count, + fn, + }; + + this.emit('storyAdded', kind, name, fn); + } + + getStoryKinds() { + return Object.keys(this._data) + .map(key => this._data[key]) + .sort((info1, info2) => info1.index - info2.index) + .map(info => info.kind); + } + + getStories(kind) { + if (!this._data[kind]) { + return []; + } + + return Object.keys(this._data[kind].stories) + .map(name => this._data[kind].stories[name]) + .sort((info1, info2) => info1.index - info2.index) + .map(info => info.name); + } + + getStory(kind, name) { + const storiesKind = this._data[kind]; + if (!storiesKind) { + return null; + } + + const storyInfo = storiesKind.stories[name]; + if (!storyInfo) { + return null; + } + + return storyInfo.fn; + } + + removeStoryKind(kind) { + delete this._data[kind]; + } + + hasStoryKind(kind) { + return Boolean(this._data[kind]); + } + + hasStory(kind, name) { + return Boolean(this.getStory(kind, name)); + } + + dumpStoryBook() { + const data = this.getStoryKinds().map(kind => ({ kind, stories: this.getStories(kind) })); + + return data; + } + + size() { + return Object.keys(this._data).length; + } + + clean() { + this.getStoryKinds().forEach(kind => delete this._data[kind]); + } +} diff --git a/src/server/addons.js b/src/server/addons.js new file mode 100644 index 0000000..131036e --- /dev/null +++ b/src/server/addons.js @@ -0,0 +1,6 @@ +import deprecate from 'util-deprecate'; +import '@storybook/addon-actions/register'; +import '@storybook/addon-links/register'; + +deprecate(() => {}, +'@storybook/react-native/addons is deprecated. See https://storybook.js.org/addons/using-addons/')(); diff --git a/src/server/config.js b/src/server/config.js new file mode 100644 index 0000000..f5abb9a --- /dev/null +++ b/src/server/config.js @@ -0,0 +1,137 @@ +import fs from 'fs'; +import path from 'path'; +import JSON5 from 'json5'; +import findCacheDir from 'find-cache-dir'; + +// avoid ESLint errors +const logger = console; + +function removeReactHmre(presets) { + const index = presets.indexOf('react-hmre'); + if (index > -1) { + presets.splice(index, 1); + } +} + +// Tries to load a .babelrc and returns the parsed object if successful +function loadBabelConfig(babelConfigPath) { + let config; + if (fs.existsSync(babelConfigPath)) { + const content = fs.readFileSync(babelConfigPath, 'utf-8'); + try { + config = JSON5.parse(content); + config.babelrc = false; + } catch (e) { + logger.error(`=> Error parsing .babelrc file: ${e.message}`); + throw e; + } + } + + if (!config) return null; + + // Remove react-hmre preset. + // It causes issues with react-storybook. + // We don't really need it. + // Earlier, we fix this by runnign storybook in the production mode. + // But, that hide some useful debug messages. + if (config.presets) { + removeReactHmre(config.presets); + } + + if (config.env && config.env.development && config.env.development.presets) { + removeReactHmre(config.env.development.presets); + } + + return config; +} + +// `baseConfig` is a webpack configuration bundled with storybook. +// Storybook will look in the `configDir` directory +// (inside working directory) if a config path is not provided. +export default function(configType, baseConfig, projectDir, configDir) { + const config = baseConfig; + + // Search for a .babelrc in project directory, config directory, and storybook + // module directory. If found, use that to extend webpack configurations. + const babelConfigInConfig = loadBabelConfig(path.resolve(configDir, '.babelrc')); + const babelConfigInProject = loadBabelConfig(path.resolve(projectDir, '.babelrc')); + const babelConfigInModule = loadBabelConfig('.babelrc'); + + let babelConfig = null; + let babelConfigDir = ''; + + if (babelConfigInConfig) { + logger.info('=> Loading custom .babelrc from config directory.'); + babelConfig = babelConfigInConfig; + babelConfigDir = configDir; + } else if (babelConfigInProject) { + logger.info('=> Loading custom .babelrc from project directory.'); + babelConfig = babelConfigInProject; + babelConfigDir = projectDir; + } else { + babelConfig = babelConfigInModule; + } + + if (babelConfig) { + // If the custom config uses babel's `extends` clause, then replace it with + // an absolute path. `extends` will not work unless we do this. + if (babelConfig.extends) { + babelConfig.extends = babelConfigDir + ? path.resolve(babelConfigDir, babelConfig.extends) + : path.resolve(babelConfig.extends); + } + config.module.loaders[0].query = babelConfig; + } + + // This is a feature of `babel-loader` for webpack (not Babel itself). + // It enables a cache directory for faster-rebuilds + // `find-cache-dir` will create the cache directory under the node_modules directory. + config.module.loaders[0].query.cacheDirectory = findCacheDir({ + name: 'react-storybook', + }); + + // Check whether addons.js file exists inside the storybook. + // Load the default addons.js file if it's missing. + const storybookDefaultAddonsPath = path.resolve(__dirname, 'addons.js'); + const storybookCustomAddonsPath = path.resolve(configDir, 'addons.js'); + if (fs.existsSync(storybookCustomAddonsPath)) { + logger.info('=> Loading custom addons config.'); + config.entry.manager.unshift(storybookCustomAddonsPath); + } else { + config.entry.manager.unshift(storybookDefaultAddonsPath); + } + + // Check whether user has a custom webpack config file and + // return the (extended) base configuration if it's not available. + let customConfigPath = path.resolve(configDir, 'webpack.config.js'); + if (!fs.existsSync(customConfigPath)) { + logger.info('=> Using default webpack setup based on "Create React App".'); + customConfigPath = path.resolve(__dirname, './config/defaults/webpack.config.js'); + } + + const customConfig = require(customConfigPath); // eslint-disable-line + + if (typeof customConfig === 'function') { + logger.info('=> Loading custom webpack config (full-control mode).'); + return customConfig(config, configType); + } + + logger.info('=> Loading custom webpack config.'); + + customConfig.module = customConfig.module || {}; + + return { + ...customConfig, + // We'll always load our configurations after the custom config. + // So, we'll always load the stuff we need. + ...config, + // We need to use our and custom plugins. + plugins: [...config.plugins, ...(customConfig.plugins || [])], + module: { + ...config.module, + // We need to use our and custom loaders. + ...customConfig.module, + loaders: [...config.module.loaders, ...(customConfig.module.loaders || [])], + }, + }; +} diff --git a/src/server/config/babel.js b/src/server/config/babel.js new file mode 100644 index 0000000..0a02919 --- /dev/null +++ b/src/server/config/babel.js @@ -0,0 +1,29 @@ +module.exports = { + // Don't try to find .babelrc because we want to force this configuration. + babelrc: false, + presets: [ + [ + require.resolve('babel-preset-env'), + { + modules: process.env.NODE_ENV === 'test' ? 'commonjs' : false, + }, + ], + require.resolve('babel-preset-react'), + ], + plugins: [ + require.resolve('babel-plugin-syntax-trailing-function-commas'), + require.resolve('babel-plugin-syntax-async-functions'), + require.resolve('babel-plugin-transform-class-properties'), + require.resolve('babel-plugin-transform-object-rest-spread'), + require.resolve('babel-plugin-transform-regenerator'), + // Polyfills the runtime needed for async/await and generators + [ + require.resolve('babel-plugin-transform-runtime'), + { + helpers: true, + polyfill: true, + regenerator: true, + }, + ], + ], +}; diff --git a/src/server/config/babel.prod.js b/src/server/config/babel.prod.js new file mode 100644 index 0000000..45f88f5 --- /dev/null +++ b/src/server/config/babel.prod.js @@ -0,0 +1,30 @@ +module.exports = { + // Don't try to find .babelrc because we want to force this configuration. + babelrc: false, + presets: [ + [ + require.resolve('babel-preset-env'), + { + modules: false, + }, + ], + require.resolve('babel-preset-react'), + require.resolve('babel-preset-minify'), + ], + plugins: [ + require.resolve('babel-plugin-syntax-trailing-function-commas'), + require.resolve('babel-plugin-syntax-async-functions'), + require.resolve('babel-plugin-transform-class-properties'), + require.resolve('babel-plugin-transform-object-rest-spread'), + require.resolve('babel-plugin-transform-regenerator'), + // Polyfills the runtime needed for async/await and generators + [ + require.resolve('babel-plugin-transform-runtime'), + { + helpers: true, + polyfill: true, + regenerator: true, + }, + ], + ], +}; diff --git a/src/server/config/defaults/webpack.config.js b/src/server/config/defaults/webpack.config.js new file mode 100644 index 0000000..97df0e9 --- /dev/null +++ b/src/server/config/defaults/webpack.config.js @@ -0,0 +1,63 @@ +import autoprefixer from 'autoprefixer'; +import { includePaths } from '../utils'; + +// Add a default custom config which is similar to what React Create App does. +module.exports = storybookBaseConfig => { + const newConfig = { ...storybookBaseConfig }; + + newConfig.module.loaders = [ + ...newConfig.module.loaders, + { + test: /\.css?$/, + include: includePaths, + use: [ + require.resolve('style-loader'), + require.resolve('css-loader'), + { + loader: require.resolve('postcss-loader'), + options: { + plugins: () => [ + autoprefixer({ + browsers: ['>1%', 'last 4 versions', 'Firefox ESR', 'not ie < 9'], + }), + ], + }, + }, + ], + }, + { + test: /\.json$/, + include: includePaths, + loader: require.resolve('json-loader'), + }, + { + test: /\.(jpg|png|gif|eot|svg|ttf|woff|woff2)(\?.*)?$/, + include: includePaths, + loader: require.resolve('file-loader'), + query: { + name: 'static/media/[name].[hash:8].[ext]', + }, + }, + { + test: /\.(mp4|webm)(\?.*)?$/, + include: includePaths, + loader: require.resolve('url-loader'), + query: { + limit: 10000, + name: 'static/media/[name].[hash:8].[ext]', + }, + }, + ]; + + newConfig.resolve = { + ...newConfig.resolve, + alias: { + ...((newConfig.resolve && newConfig.resolve.alias) || {}), + // This is to support NPM2 + 'babel-runtime/regenerator': require.resolve('babel-runtime/regenerator'), + }, + }; + + // Return the altered config + return newConfig; +}; diff --git a/src/server/config/utils.js b/src/server/config/utils.js new file mode 100644 index 0000000..b05edcd --- /dev/null +++ b/src/server/config/utils.js @@ -0,0 +1,12 @@ +import webpack from 'webpack'; +import path from 'path'; + +export const OccurenceOrderPlugin = + // for webpack 2 + webpack.optimize.OccurrenceOrderPlugin || + // for webpack 1 + webpack.optimize.OccurenceOrderPlugin; + +export const includePaths = [path.resolve('./')]; + +export const excludePaths = [path.resolve('./node_modules')]; diff --git a/src/server/config/webpack.config.js b/src/server/config/webpack.config.js new file mode 100644 index 0000000..ddd38a2 --- /dev/null +++ b/src/server/config/webpack.config.js @@ -0,0 +1,34 @@ +import path from 'path'; +import webpack from 'webpack'; +import CaseSensitivePathsPlugin from 'case-sensitive-paths-webpack-plugin'; +import { OccurenceOrderPlugin, includePaths, excludePaths } from './utils'; + +const config = { + devtool: '#cheap-module-eval-source-map', + entry: { + manager: [require.resolve('../../manager')], + }, + output: { + path: path.join(__dirname, 'dist'), + filename: 'static/[name].bundle.js', + publicPath: '/', + }, + plugins: [ + new OccurenceOrderPlugin(), + new webpack.HotModuleReplacementPlugin(), + new CaseSensitivePathsPlugin(), + ], + module: { + loaders: [ + { + test: /\.jsx?$/, + loader: require.resolve('babel-loader'), + query: require('./babel.js'), // eslint-disable-line + include: includePaths, + exclude: excludePaths, + }, + ], + }, +}; + +export default config; diff --git a/src/server/config/webpack.config.prod.js b/src/server/config/webpack.config.prod.js new file mode 100644 index 0000000..841459f --- /dev/null +++ b/src/server/config/webpack.config.prod.js @@ -0,0 +1,57 @@ +import path from 'path'; +import webpack from 'webpack'; +import { OccurenceOrderPlugin, includePaths, excludePaths } from './utils'; + +const config = { + bail: true, + devtool: '#cheap-module-source-map', + entry: { + manager: [path.resolve(__dirname, '../../manager')], + }, + output: { + path: path.join(__dirname, 'dist'), + filename: 'static/[name].bundle.js', + // Here we set the publicPath to ''. + // This allows us to deploy storybook into subpaths like GitHub pages. + // This works with css and image loaders too. + // This is working for storybook since, we don't use pushState urls and + // relative URLs works always. + publicPath: '/', + }, + plugins: [ + new webpack.DefinePlugin({ 'process.env.NODE_ENV': '"production"' }), + new webpack.optimize.DedupePlugin(), + new webpack.optimize.UglifyJsPlugin({ + compress: { + screw_ie8: true, + warnings: false, + }, + mangle: { + screw_ie8: true, + }, + output: { + comments: false, + screw_ie8: true, + }, + }), + ], + module: { + loaders: [ + { + test: /\.jsx?$/, + loader: require.resolve('babel-loader'), + query: require('./babel.prod.js'), // eslint-disable-line + include: includePaths, + exclude: excludePaths, + }, + ], + }, +}; + +// Webpack 2 doesn't have a OccurenceOrderPlugin plugin in the production mode. +// But webpack 1 has it. That's why we do this. +if (OccurenceOrderPlugin) { + config.plugins.unshift(new OccurenceOrderPlugin()); +} + +export default config; diff --git a/src/server/index.html.js b/src/server/index.html.js new file mode 100644 index 0000000..1ab3ca5 --- /dev/null +++ b/src/server/index.html.js @@ -0,0 +1,50 @@ +import url from 'url'; + +export default function(publicPath, options) { + return ` + + + + + + Storybook for React + + + +
+ + + + + `; +} diff --git a/src/server/index.js b/src/server/index.js new file mode 100755 index 0000000..09e0a34 --- /dev/null +++ b/src/server/index.js @@ -0,0 +1,39 @@ +import express from 'express'; +import querystring from 'querystring'; +import http from 'http'; +import ws from 'ws'; +import storybook from './middleware'; + +export default class Server { + constructor(options) { + this.options = options; + this.httpServer = http.createServer(); + this.expressApp = express(); + this.expressApp.use(storybook(options)); + this.httpServer.on('request', this.expressApp); + this.wsServer = new ws.Server({ server: this.httpServer }); + this.wsServer.on('connection', (s, req) => this.handleWS(s, req)); + } + + handleWS(socket, req) { + if (this.options.manualId) { + const params = req.url ? querystring.parse(req.url.substr(1)) : {}; + + if (params.pairedId) { + socket.pairedId = params.pairedId; // eslint-disable-line + } + } + + socket.on('message', data => { + this.wsServer.clients.forEach(c => { + if (!this.options.manualId || (socket.pairedId && socket.pairedId === c.pairedId)) { + c.send(data); + } + }); + }); + } + + listen(...args) { + this.httpServer.listen(...args); + } +} diff --git a/src/server/middleware.js b/src/server/middleware.js new file mode 100644 index 0000000..a7c5c46 --- /dev/null +++ b/src/server/middleware.js @@ -0,0 +1,65 @@ +import fs from 'fs'; +import path from 'path'; +import { Router } from 'express'; +import webpack from 'webpack'; +import webpackDevMiddleware from 'webpack-dev-middleware'; +import webpackHotMiddleware from 'webpack-hot-middleware'; +import baseConfig from './config/webpack.config'; +import baseProductionConfig from './config/webpack.config.prod'; +import loadConfig from './config'; +import getIndexHtml from './index.html'; + +function getMiddleware(configDir) { + const middlewarePath = path.resolve(configDir, 'middleware.js'); + if (fs.existsSync(middlewarePath)) { + let middlewareModule = require(middlewarePath); // eslint-disable-line + if (middlewareModule.__esModule) { // eslint-disable-line + middlewareModule = middlewareModule.default; + } + return middlewareModule; + } + return () => {}; +} + +export default function({ projectDir, configDir, ...options }) { + // Build the webpack configuration using the `baseConfig` + // custom `.babelrc` file and `webpack.config.js` files + const environment = options.environment || 'DEVELOPMENT'; + const isProd = environment === 'PRODUCTION'; + const currentWebpackConfig = isProd ? baseProductionConfig : baseConfig; + const config = loadConfig(environment, currentWebpackConfig, projectDir, configDir); + + // remove the leading '/' + let { publicPath } = config.output; + if (publicPath[0] === '/') { + publicPath = publicPath.slice(1); + } + + const compiler = webpack(config); + const devMiddlewareOptions = { + noInfo: true, + publicPath: config.output.publicPath, + watchOptions: config.watchOptions || {}, + }; + + const router = new Router(); + const middlewareFn = getMiddleware(configDir); + middlewareFn(router); + + router.use(webpackDevMiddleware(compiler, devMiddlewareOptions)); + + if (!isProd) { + router.use(webpackHotMiddleware(compiler)); + } + + router.get('/', (req, res) => { + res.send( + getIndexHtml(publicPath, { + manualId: options.manualId, + secured: options.secured, + }) + ); + }); + + return router; +}