From 4349de351220bf3e4d22090e1b5a483c4bba65d6 Mon Sep 17 00:00:00 2001 From: Michael Jackson Date: Fri, 20 Jan 2017 11:08:56 -0800 Subject: [PATCH] Welcome to the monorepo! --- .gitignore | 3 - .npmignore | 10 -- lerna.json | 7 ++ package.json | 91 +----------------- packages/react-router-website/.babelrc | 7 ++ .../react-router-website}/.gitignore | 0 .../api/BrowserRouter.md | 0 .../react-router-website}/api/HashRouter.md | 0 .../react-router-website}/api/Link.md | 0 .../react-router-website}/api/MemoryRouter.md | 0 .../react-router-website}/api/Prompt.md | 0 .../react-router-website}/api/Redirect.md | 0 .../react-router-website}/api/Route.md | 0 .../react-router-website}/api/Router.md | 0 .../react-router-website}/api/ServerRouter.md | 0 .../react-router-website}/api/Switch.md | 0 .../react-router-website}/base.css | 0 .../components/APIDocs.js | 7 +- .../react-router-website}/components/App.js | 5 +- .../components/ExampleRouter.js | 0 .../components/Examples.js | 10 +- .../components/FakeBrowser/index.js | 4 +- .../components/FakeBrowser/style.css | 0 .../components/Footer.js | 0 .../components/Header.js | 4 +- .../components/LoadBundle.js | 0 .../components/LoadingDots.js | 0 .../react-router-website}/components/Logo.js | 0 .../components/MarkdownViewer.js | 0 .../components/NewsletterSignup.js | 0 .../components/ScrollToMe.js | 0 .../components/SourceViewer.js | 0 .../react-router-website}/components/Video.js | 0 .../components/bricks.js | 0 .../examples/Ambiguous.js | 0 .../examples/Animation.js | 0 .../react-router-website}/examples/Auth.js | 0 .../react-router-website}/examples/Basic.js | 0 .../examples/CustomLink.js | 0 .../react-router-website}/examples/NoMatch.js | 0 .../react-router-website}/examples/Params.js | 0 .../examples/PreventingTransitions.js | 0 .../examples/Recursive.js | 0 .../examples/RouteConfig.js | 0 .../react-router-website}/examples/Sidebar.js | 0 .../react-router-website}/img/Logo.png | Bin .../react-router-website}/index.html.ejs | 0 .../react-router-website}/index.js | 0 .../loadServiceWorker.js | 0 .../react-router-website}/package.json | 7 ++ .../react-router-website}/routes.js | 0 .../static/android-chrome-144x144.png | Bin .../static/apple-touch-icon.png | Bin .../static/browserconfig.xml | 0 .../static/favicon-16x16.png | Bin .../static/favicon-32x32.png | Bin .../react-router-website}/static/favicon.ico | Bin .../static/manifest.json | 0 .../static/mstile-150x150.png | Bin .../static/safari-pinned-tab.svg | 0 .../react-router-website}/webpack.config.js | 5 +- .../webpack/markdown-loader.js | 0 .babelrc => packages/react-router/.babelrc | 0 .../react-router/.eslintignore | 0 .eslintrc => packages/react-router/.eslintrc | 0 packages/react-router/.gitignore | 1 + .../react-router/karma.conf.js | 0 .../react-router/modules}/BrowserRouter.js | 0 .../react-router/modules}/Core.js | 0 .../react-router/modules}/HashRouter.js | 0 .../react-router/modules}/Link.js | 0 .../react-router/modules}/MemoryRouter.js | 0 .../react-router/modules}/NavLink.js | 0 .../react-router/modules}/Prompt.js | 0 .../react-router/modules}/Redirect.js | 0 .../react-router/modules}/Route.js | 0 .../react-router/modules}/Router.js | 0 .../react-router/modules}/ServerRouter.js | 0 .../react-router/modules}/Switch.js | 0 .../react-router/modules}/__tests__/.eslintrc | 0 .../modules}/__tests__/Link-test.js | 0 .../modules}/__tests__/NavLink-test.js | 0 .../modules}/__tests__/ServerRouter-test.js | 0 .../modules}/__tests__/hashLinks-test.js | 0 .../modules}/__tests__/integration-test.js | 0 .../modules}/__tests__/withRouter-test.js | 0 .../react-router/modules}/index.js | 0 .../react-router/modules}/matchPath.js | 0 .../react-router/modules}/withRouter.js | 0 packages/react-router/package.json | 90 +++++++++++++++++ .../react-router/scripts}/build.js | 0 .../react-router/scripts}/clean.js | 0 .../react-router/scripts}/release.js | 0 .../react-router/tests.webpack.js | 0 .../react-router/webpack.config.js | 0 yarn.lock => packages/react-router/yarn.lock | 0 96 files changed, 135 insertions(+), 116 deletions(-) delete mode 100644 .gitignore delete mode 100644 .npmignore create mode 100644 lerna.json create mode 100644 packages/react-router-website/.babelrc rename {website => packages/react-router-website}/.gitignore (100%) rename {website => packages/react-router-website}/api/BrowserRouter.md (100%) rename {website => packages/react-router-website}/api/HashRouter.md (100%) rename {website => packages/react-router-website}/api/Link.md (100%) rename {website => packages/react-router-website}/api/MemoryRouter.md (100%) rename {website => packages/react-router-website}/api/Prompt.md (100%) rename {website => packages/react-router-website}/api/Redirect.md (100%) rename {website => packages/react-router-website}/api/Route.md (100%) rename {website => packages/react-router-website}/api/Router.md (100%) rename {website => packages/react-router-website}/api/ServerRouter.md (100%) rename {website => packages/react-router-website}/api/Switch.md (100%) rename {website => packages/react-router-website}/base.css (100%) rename {website => packages/react-router-website}/components/APIDocs.js (95%) rename {website => packages/react-router-website}/components/App.js (87%) rename {website => packages/react-router-website}/components/ExampleRouter.js (100%) rename {website => packages/react-router-website}/components/Examples.js (93%) rename {website => packages/react-router-website}/components/FakeBrowser/index.js (97%) rename {website => packages/react-router-website}/components/FakeBrowser/style.css (100%) rename {website => packages/react-router-website}/components/Footer.js (100%) rename {website => packages/react-router-website}/components/Header.js (98%) rename {website => packages/react-router-website}/components/LoadBundle.js (100%) rename {website => packages/react-router-website}/components/LoadingDots.js (100%) rename {website => packages/react-router-website}/components/Logo.js (100%) rename {website => packages/react-router-website}/components/MarkdownViewer.js (100%) rename {website => packages/react-router-website}/components/NewsletterSignup.js (100%) rename {website => packages/react-router-website}/components/ScrollToMe.js (100%) rename {website => packages/react-router-website}/components/SourceViewer.js (100%) rename {website => packages/react-router-website}/components/Video.js (100%) rename {website => packages/react-router-website}/components/bricks.js (100%) rename {website => packages/react-router-website}/examples/Ambiguous.js (100%) rename {website => packages/react-router-website}/examples/Animation.js (100%) rename {website => packages/react-router-website}/examples/Auth.js (100%) rename {website => packages/react-router-website}/examples/Basic.js (100%) rename {website => packages/react-router-website}/examples/CustomLink.js (100%) rename {website => packages/react-router-website}/examples/NoMatch.js (100%) rename {website => packages/react-router-website}/examples/Params.js (100%) rename {website => packages/react-router-website}/examples/PreventingTransitions.js (100%) rename {website => packages/react-router-website}/examples/Recursive.js (100%) rename {website => packages/react-router-website}/examples/RouteConfig.js (100%) rename {website => packages/react-router-website}/examples/Sidebar.js (100%) rename {website => packages/react-router-website}/img/Logo.png (100%) rename {website => packages/react-router-website}/index.html.ejs (100%) rename {website => packages/react-router-website}/index.js (100%) rename {website => packages/react-router-website}/loadServiceWorker.js (100%) rename {website => packages/react-router-website}/package.json (77%) rename {website => packages/react-router-website}/routes.js (100%) rename {website => packages/react-router-website}/static/android-chrome-144x144.png (100%) rename {website => packages/react-router-website}/static/apple-touch-icon.png (100%) rename {website => packages/react-router-website}/static/browserconfig.xml (100%) rename {website => packages/react-router-website}/static/favicon-16x16.png (100%) rename {website => packages/react-router-website}/static/favicon-32x32.png (100%) rename {website => packages/react-router-website}/static/favicon.ico (100%) rename {website => packages/react-router-website}/static/manifest.json (100%) rename {website => packages/react-router-website}/static/mstile-150x150.png (100%) rename {website => packages/react-router-website}/static/safari-pinned-tab.svg (100%) rename {website => packages/react-router-website}/webpack.config.js (91%) rename {website => packages/react-router-website}/webpack/markdown-loader.js (100%) rename .babelrc => packages/react-router/.babelrc (100%) rename .eslintignore => packages/react-router/.eslintignore (100%) rename .eslintrc => packages/react-router/.eslintrc (100%) create mode 100644 packages/react-router/.gitignore rename karma.conf.js => packages/react-router/karma.conf.js (100%) rename {modules => packages/react-router/modules}/BrowserRouter.js (100%) rename {modules => packages/react-router/modules}/Core.js (100%) rename {modules => packages/react-router/modules}/HashRouter.js (100%) rename {modules => packages/react-router/modules}/Link.js (100%) rename {modules => packages/react-router/modules}/MemoryRouter.js (100%) rename {modules => packages/react-router/modules}/NavLink.js (100%) rename {modules => packages/react-router/modules}/Prompt.js (100%) rename {modules => packages/react-router/modules}/Redirect.js (100%) rename {modules => packages/react-router/modules}/Route.js (100%) rename {modules => packages/react-router/modules}/Router.js (100%) rename {modules => packages/react-router/modules}/ServerRouter.js (100%) rename {modules => packages/react-router/modules}/Switch.js (100%) rename {modules => packages/react-router/modules}/__tests__/.eslintrc (100%) rename {modules => packages/react-router/modules}/__tests__/Link-test.js (100%) rename {modules => packages/react-router/modules}/__tests__/NavLink-test.js (100%) rename {modules => packages/react-router/modules}/__tests__/ServerRouter-test.js (100%) rename {modules => packages/react-router/modules}/__tests__/hashLinks-test.js (100%) rename {modules => packages/react-router/modules}/__tests__/integration-test.js (100%) rename {modules => packages/react-router/modules}/__tests__/withRouter-test.js (100%) rename {modules => packages/react-router/modules}/index.js (100%) rename {modules => packages/react-router/modules}/matchPath.js (100%) rename {modules => packages/react-router/modules}/withRouter.js (100%) create mode 100644 packages/react-router/package.json rename {scripts => packages/react-router/scripts}/build.js (100%) rename {scripts => packages/react-router/scripts}/clean.js (100%) rename {scripts => packages/react-router/scripts}/release.js (100%) rename tests.webpack.js => packages/react-router/tests.webpack.js (100%) rename webpack.config.js => packages/react-router/webpack.config.js (100%) rename yarn.lock => packages/react-router/yarn.lock (100%) diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 29b6b86f73..0000000000 --- a/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -umd -node_modules -npm-debug.log diff --git a/.npmignore b/.npmignore deleted file mode 100644 index 374a0fbdca..0000000000 --- a/.npmignore +++ /dev/null @@ -1,10 +0,0 @@ -.babelrc -.eslintrc -.gitignore -.npmignore -karma.conf.js -logo -modules -scripts -tests.webpack.js -webpack.config.js diff --git a/lerna.json b/lerna.json new file mode 100644 index 0000000000..34c9af290e --- /dev/null +++ b/lerna.json @@ -0,0 +1,7 @@ +{ + "lerna": "2.0.0-beta.32", + "packages": [ + "packages/*" + ], + "version": "independent" +} diff --git a/package.json b/package.json index 1d00cbd165..8977e4f345 100644 --- a/package.json +++ b/package.json @@ -1,91 +1,10 @@ { - "name": "react-router", - "version": "4.0.0-alpha.6", - "description": "Declarative routing for React", - "repository": "ReactTraining/react-router", - "license": "MIT", - "authors": [ - "Michael Jackson", - "Ryan Florence" - ], - "files": [ - "BrowserRouter.js", - "Core.js", - "HashRouter.js", - "Link.js", - "MemoryRouter.js", - "NavLink.js", - "Prompt.js", - "Redirect.js", - "Route.js", - "Router.js", - "ServerRouter.js", - "Switch.js", - "index.js", - "matchPath.js", - "withRouter.js", - "README.md", - "umd" - ], - "main": "index.js", "scripts": { - "start": "echo 'Make sure to `cd website && npm install && npm run build`' && cd website && npm start", - "release": "node ./scripts/release.js", - "build-lib": "babel ./modules -d . --ignore __tests__", - "build-umd": "webpack modules/index.js umd/react-router.js", - "build-min": "webpack -p modules/index.js umd/react-router.min.js", - "build": "node ./scripts/build.js", - "watch": "babel ./modules -d . --ignore __tests__ --watch", - "prepublish": "node ./scripts/build.js", - "clean": "node ./scripts/clean.js", - "lint": "eslint modules", - "test": "karma start --single-run" - }, - "dependencies": { - "history": "^4.5.1", - "invariant": "^2.2.2", - "path-to-regexp": "^1.5.3" - }, - "peerDependencies": { - "react": "15.x" + "postinstall": "lerna bootstrap", + "start": "cd packages/react-router-website && npm start", + "test": "lerna run test" }, "devDependencies": { - "babel-cli": "^6.18.0", - "babel-eslint": "^6.0.4", - "babel-loader": "^6.2.10", - "babel-plugin-dev-expression": "^0.2.1", - "babel-plugin-transform-react-remove-prop-types": "^0.2.11", - "babel-preset-es2015": "^6.14.0", - "babel-preset-react": "^6.5.0", - "babel-preset-stage-1": "^6.5.0", - "eslint": "^2.13.1", - "eslint-plugin-import": "^1.15.0", - "eslint-plugin-react": "^5.2.2", - "expect": "^1.20.1", - "gzip-size": "^3.0.0", - "in-publish": "^2.0.0", - "karma": "^0.13.22", - "karma-browserstack-launcher": "^1.0.1", - "karma-chrome-launcher": "^1.0.1", - "karma-mocha": "^1.0.1", - "karma-mocha-reporter": "^2.0.4", - "karma-sourcemap-loader": "^0.3.7", - "karma-webpack": "^1.7.0", - "mocha": "^2.5.3", - "pretty-bytes": "^3.0.1", - "react": "^15.3.0", - "react-addons-test-utils": "^15.3.1", - "react-dom": "^15.3.0", - "readline-sync": "^1.4.4", - "webpack": "^1.13.1", - "webpack-dev-server": "^1.14.1" - }, - "keywords": [ - "react", - "router", - "route", - "routing", - "history", - "link" - ] + "lerna": "2.0.0-beta.32" + } } diff --git a/packages/react-router-website/.babelrc b/packages/react-router-website/.babelrc new file mode 100644 index 0000000000..2582910d5f --- /dev/null +++ b/packages/react-router-website/.babelrc @@ -0,0 +1,7 @@ +{ + "presets": [ + [ "es2015", { "loose": true } ], + "stage-1", + "react" + ] +} diff --git a/website/.gitignore b/packages/react-router-website/.gitignore similarity index 100% rename from website/.gitignore rename to packages/react-router-website/.gitignore diff --git a/website/api/BrowserRouter.md b/packages/react-router-website/api/BrowserRouter.md similarity index 100% rename from website/api/BrowserRouter.md rename to packages/react-router-website/api/BrowserRouter.md diff --git a/website/api/HashRouter.md b/packages/react-router-website/api/HashRouter.md similarity index 100% rename from website/api/HashRouter.md rename to packages/react-router-website/api/HashRouter.md diff --git a/website/api/Link.md b/packages/react-router-website/api/Link.md similarity index 100% rename from website/api/Link.md rename to packages/react-router-website/api/Link.md diff --git a/website/api/MemoryRouter.md b/packages/react-router-website/api/MemoryRouter.md similarity index 100% rename from website/api/MemoryRouter.md rename to packages/react-router-website/api/MemoryRouter.md diff --git a/website/api/Prompt.md b/packages/react-router-website/api/Prompt.md similarity index 100% rename from website/api/Prompt.md rename to packages/react-router-website/api/Prompt.md diff --git a/website/api/Redirect.md b/packages/react-router-website/api/Redirect.md similarity index 100% rename from website/api/Redirect.md rename to packages/react-router-website/api/Redirect.md diff --git a/website/api/Route.md b/packages/react-router-website/api/Route.md similarity index 100% rename from website/api/Route.md rename to packages/react-router-website/api/Route.md diff --git a/website/api/Router.md b/packages/react-router-website/api/Router.md similarity index 100% rename from website/api/Router.md rename to packages/react-router-website/api/Router.md diff --git a/website/api/ServerRouter.md b/packages/react-router-website/api/ServerRouter.md similarity index 100% rename from website/api/ServerRouter.md rename to packages/react-router-website/api/ServerRouter.md diff --git a/website/api/Switch.md b/packages/react-router-website/api/Switch.md similarity index 100% rename from website/api/Switch.md rename to packages/react-router-website/api/Switch.md diff --git a/website/base.css b/packages/react-router-website/base.css similarity index 100% rename from website/base.css rename to packages/react-router-website/base.css diff --git a/website/components/APIDocs.js b/packages/react-router-website/components/APIDocs.js similarity index 95% rename from website/components/APIDocs.js rename to packages/react-router-website/components/APIDocs.js index 75725c8ba8..5b2fede357 100644 --- a/website/components/APIDocs.js +++ b/packages/react-router-website/components/APIDocs.js @@ -1,9 +1,9 @@ import React from 'react' +import ReactDOM from 'react-dom' +import Route from '../../react-router/modules/Route' import { I, H, B, PAD, lightGray, red } from './bricks' -import { render } from 'react-dom' import MarkdownViewer from './MarkdownViewer' import ScrollToMe from './ScrollToMe' -import Route from '../../modules/Route' export const API = [ { name: 'Route', @@ -77,7 +77,8 @@ class APIDocs extends React.Component { ))} ) - render(el, this.menu) + + ReactDOM.render(el, this.menu) } render() { diff --git a/website/components/App.js b/packages/react-router-website/components/App.js similarity index 87% rename from website/components/App.js rename to packages/react-router-website/components/App.js index da263cc3b5..6cc292fea6 100644 --- a/website/components/App.js +++ b/packages/react-router-website/components/App.js @@ -1,7 +1,7 @@ import React from 'react' +import BrowserRouter from '../../react-router/modules/BrowserRouter' -import BrowserRouter from '../../modules/BrowserRouter' - +import { B } from './bricks' import Examples from './Examples' import Header from './Header' import APIDocs from './APIDocs' @@ -9,7 +9,6 @@ import Video from './Video' import Footer from './Footer' import LoadBundle from './LoadBundle' import NewsletterSignup from './NewsletterSignup' -import { B } from './bricks' const App = () => ( diff --git a/website/components/ExampleRouter.js b/packages/react-router-website/components/ExampleRouter.js similarity index 100% rename from website/components/ExampleRouter.js rename to packages/react-router-website/components/ExampleRouter.js diff --git a/website/components/Examples.js b/packages/react-router-website/components/Examples.js similarity index 93% rename from website/components/Examples.js rename to packages/react-router-website/components/Examples.js index 3781cede66..b97dc1b545 100644 --- a/website/components/Examples.js +++ b/packages/react-router-website/components/Examples.js @@ -1,13 +1,13 @@ import React from 'react' -import Route from '../../modules/Route' -import Switch from '../../modules/Switch' -import Link from '../../modules/Link' +import Route from '../../react-router/modules/Route' +import Switch from '../../react-router/modules/Switch' +import Link from '../../react-router/modules/Link' +import { EXAMPLES } from '../routes' +import { B, H, I, PAD, VSpace, darkGray, lightGray, red } from './bricks' import LoadBundle from './LoadBundle' import SourceViewer from './SourceViewer' import FakeBrowser from './FakeBrowser' import ScrollToMe from './ScrollToMe' -import { B, H, I, PAD, VSpace, darkGray, lightGray, red } from './bricks' -import { EXAMPLES } from '../routes' const Nav = (props) => ( diff --git a/website/components/FakeBrowser/index.js b/packages/react-router-website/components/FakeBrowser/index.js similarity index 97% rename from website/components/FakeBrowser/index.js rename to packages/react-router-website/components/FakeBrowser/index.js index 9d64f406c7..1eeae4b6a1 100644 --- a/website/components/FakeBrowser/index.js +++ b/packages/react-router-website/components/FakeBrowser/index.js @@ -1,7 +1,7 @@ import React, { PropTypes } from 'react' +import MemoryRouter from '../../../react-router/modules/MemoryRouter' +import Route from '../../../react-router/modules/Route' import { B, V, H, PAD, LIGHT_GRAY, GRAY } from '../bricks' -import MemoryRouter from '../../../modules/MemoryRouter' -import Route from '../../../modules/Route' import { button } from './style.css' const LeftArrowIcon = (props) => ( diff --git a/website/components/FakeBrowser/style.css b/packages/react-router-website/components/FakeBrowser/style.css similarity index 100% rename from website/components/FakeBrowser/style.css rename to packages/react-router-website/components/FakeBrowser/style.css diff --git a/website/components/Footer.js b/packages/react-router-website/components/Footer.js similarity index 100% rename from website/components/Footer.js rename to packages/react-router-website/components/Footer.js diff --git a/website/components/Header.js b/packages/react-router-website/components/Header.js similarity index 98% rename from website/components/Header.js rename to packages/react-router-website/components/Header.js index d6080bc59a..22f2e61c20 100644 --- a/website/components/Header.js +++ b/packages/react-router-website/components/Header.js @@ -1,7 +1,7 @@ import React from 'react' -import Link from '../../modules/Link' -import Logo from './Logo' +import Link from '../../react-router/modules/Link' import { B, H, I, PAD, VSpace, HSpace, lightGray, red, bigFont } from './bricks' +import Logo from './Logo' const NavLink = ({ to, href, ...props }) => ( diff --git a/website/components/LoadBundle.js b/packages/react-router-website/components/LoadBundle.js similarity index 100% rename from website/components/LoadBundle.js rename to packages/react-router-website/components/LoadBundle.js diff --git a/website/components/LoadingDots.js b/packages/react-router-website/components/LoadingDots.js similarity index 100% rename from website/components/LoadingDots.js rename to packages/react-router-website/components/LoadingDots.js diff --git a/website/components/Logo.js b/packages/react-router-website/components/Logo.js similarity index 100% rename from website/components/Logo.js rename to packages/react-router-website/components/Logo.js diff --git a/website/components/MarkdownViewer.js b/packages/react-router-website/components/MarkdownViewer.js similarity index 100% rename from website/components/MarkdownViewer.js rename to packages/react-router-website/components/MarkdownViewer.js diff --git a/website/components/NewsletterSignup.js b/packages/react-router-website/components/NewsletterSignup.js similarity index 100% rename from website/components/NewsletterSignup.js rename to packages/react-router-website/components/NewsletterSignup.js diff --git a/website/components/ScrollToMe.js b/packages/react-router-website/components/ScrollToMe.js similarity index 100% rename from website/components/ScrollToMe.js rename to packages/react-router-website/components/ScrollToMe.js diff --git a/website/components/SourceViewer.js b/packages/react-router-website/components/SourceViewer.js similarity index 100% rename from website/components/SourceViewer.js rename to packages/react-router-website/components/SourceViewer.js diff --git a/website/components/Video.js b/packages/react-router-website/components/Video.js similarity index 100% rename from website/components/Video.js rename to packages/react-router-website/components/Video.js diff --git a/website/components/bricks.js b/packages/react-router-website/components/bricks.js similarity index 100% rename from website/components/bricks.js rename to packages/react-router-website/components/bricks.js diff --git a/website/examples/Ambiguous.js b/packages/react-router-website/examples/Ambiguous.js similarity index 100% rename from website/examples/Ambiguous.js rename to packages/react-router-website/examples/Ambiguous.js diff --git a/website/examples/Animation.js b/packages/react-router-website/examples/Animation.js similarity index 100% rename from website/examples/Animation.js rename to packages/react-router-website/examples/Animation.js diff --git a/website/examples/Auth.js b/packages/react-router-website/examples/Auth.js similarity index 100% rename from website/examples/Auth.js rename to packages/react-router-website/examples/Auth.js diff --git a/website/examples/Basic.js b/packages/react-router-website/examples/Basic.js similarity index 100% rename from website/examples/Basic.js rename to packages/react-router-website/examples/Basic.js diff --git a/website/examples/CustomLink.js b/packages/react-router-website/examples/CustomLink.js similarity index 100% rename from website/examples/CustomLink.js rename to packages/react-router-website/examples/CustomLink.js diff --git a/website/examples/NoMatch.js b/packages/react-router-website/examples/NoMatch.js similarity index 100% rename from website/examples/NoMatch.js rename to packages/react-router-website/examples/NoMatch.js diff --git a/website/examples/Params.js b/packages/react-router-website/examples/Params.js similarity index 100% rename from website/examples/Params.js rename to packages/react-router-website/examples/Params.js diff --git a/website/examples/PreventingTransitions.js b/packages/react-router-website/examples/PreventingTransitions.js similarity index 100% rename from website/examples/PreventingTransitions.js rename to packages/react-router-website/examples/PreventingTransitions.js diff --git a/website/examples/Recursive.js b/packages/react-router-website/examples/Recursive.js similarity index 100% rename from website/examples/Recursive.js rename to packages/react-router-website/examples/Recursive.js diff --git a/website/examples/RouteConfig.js b/packages/react-router-website/examples/RouteConfig.js similarity index 100% rename from website/examples/RouteConfig.js rename to packages/react-router-website/examples/RouteConfig.js diff --git a/website/examples/Sidebar.js b/packages/react-router-website/examples/Sidebar.js similarity index 100% rename from website/examples/Sidebar.js rename to packages/react-router-website/examples/Sidebar.js diff --git a/website/img/Logo.png b/packages/react-router-website/img/Logo.png similarity index 100% rename from website/img/Logo.png rename to packages/react-router-website/img/Logo.png diff --git a/website/index.html.ejs b/packages/react-router-website/index.html.ejs similarity index 100% rename from website/index.html.ejs rename to packages/react-router-website/index.html.ejs diff --git a/website/index.js b/packages/react-router-website/index.js similarity index 100% rename from website/index.js rename to packages/react-router-website/index.js diff --git a/website/loadServiceWorker.js b/packages/react-router-website/loadServiceWorker.js similarity index 100% rename from website/loadServiceWorker.js rename to packages/react-router-website/loadServiceWorker.js diff --git a/website/package.json b/packages/react-router-website/package.json similarity index 77% rename from website/package.json rename to packages/react-router-website/package.json index 769d294f01..168cd9b7ce 100644 --- a/website/package.json +++ b/packages/react-router-website/package.json @@ -1,10 +1,17 @@ { + "name": "react-router-website", + "private": true, "scripts": { "build": "webpack -p && npm run service-worker", "start": "webpack-dev-server --inline", "service-worker": "cp -R static/ build/ && sw-precache --root='build/' --static-file-globs='build/**/!(*map*)'" }, "devDependencies": { + "babel-core": "^6.21.0", + "babel-loader": "^6.2.10", + "babel-preset-es2015": "^6.18.0", + "babel-preset-react": "^6.16.0", + "babel-preset-stage-1": "^6.16.0", "bundle-loader": "0.5.4", "css-loader": "0.23.1", "file-loader": "^0.9.0", diff --git a/website/routes.js b/packages/react-router-website/routes.js similarity index 100% rename from website/routes.js rename to packages/react-router-website/routes.js diff --git a/website/static/android-chrome-144x144.png b/packages/react-router-website/static/android-chrome-144x144.png similarity index 100% rename from website/static/android-chrome-144x144.png rename to packages/react-router-website/static/android-chrome-144x144.png diff --git a/website/static/apple-touch-icon.png b/packages/react-router-website/static/apple-touch-icon.png similarity index 100% rename from website/static/apple-touch-icon.png rename to packages/react-router-website/static/apple-touch-icon.png diff --git a/website/static/browserconfig.xml b/packages/react-router-website/static/browserconfig.xml similarity index 100% rename from website/static/browserconfig.xml rename to packages/react-router-website/static/browserconfig.xml diff --git a/website/static/favicon-16x16.png b/packages/react-router-website/static/favicon-16x16.png similarity index 100% rename from website/static/favicon-16x16.png rename to packages/react-router-website/static/favicon-16x16.png diff --git a/website/static/favicon-32x32.png b/packages/react-router-website/static/favicon-32x32.png similarity index 100% rename from website/static/favicon-32x32.png rename to packages/react-router-website/static/favicon-32x32.png diff --git a/website/static/favicon.ico b/packages/react-router-website/static/favicon.ico similarity index 100% rename from website/static/favicon.ico rename to packages/react-router-website/static/favicon.ico diff --git a/website/static/manifest.json b/packages/react-router-website/static/manifest.json similarity index 100% rename from website/static/manifest.json rename to packages/react-router-website/static/manifest.json diff --git a/website/static/mstile-150x150.png b/packages/react-router-website/static/mstile-150x150.png similarity index 100% rename from website/static/mstile-150x150.png rename to packages/react-router-website/static/mstile-150x150.png diff --git a/website/static/safari-pinned-tab.svg b/packages/react-router-website/static/safari-pinned-tab.svg similarity index 100% rename from website/static/safari-pinned-tab.svg rename to packages/react-router-website/static/safari-pinned-tab.svg diff --git a/website/webpack.config.js b/packages/react-router-website/webpack.config.js similarity index 91% rename from website/webpack.config.js rename to packages/react-router-website/webpack.config.js index c22884bd3d..274a8fdf33 100644 --- a/website/webpack.config.js +++ b/packages/react-router-website/webpack.config.js @@ -4,7 +4,7 @@ const HTMLWebpackPlugin = require('html-webpack-plugin') const PROD = process.env.NODE_ENV === 'production' const HASH = '[chunkHash]' -const ROUTER_SRC = path.join(__dirname, '..', 'modules') +const ROUTER_SRC = path.join(__dirname, '..', 'react-router/modules') module.exports = { devtool: 'source-map', @@ -32,6 +32,8 @@ module.exports = { resolve: { alias: { + // These are for the examples. All modules used to build the actual + // site should import directly from packages/react-router 'react-router/Link': path.join(ROUTER_SRC, 'Link'), 'react-router/Prompt': path.join(ROUTER_SRC, 'Prompt'), 'react-router/Redirect': path.join(ROUTER_SRC, 'Redirect'), @@ -39,7 +41,6 @@ module.exports = { 'react-router/Router': path.join(ROUTER_SRC, 'Router'), 'react-router/Switch': path.join(ROUTER_SRC, 'Switch'), 'react-router/withRouter': path.join(ROUTER_SRC, 'withRouter'), - // Shim the real router so people can copy paste examples into create-react-app 'react-router/BrowserRouter': path.join(__dirname, 'components', 'ExampleRouter') } diff --git a/website/webpack/markdown-loader.js b/packages/react-router-website/webpack/markdown-loader.js similarity index 100% rename from website/webpack/markdown-loader.js rename to packages/react-router-website/webpack/markdown-loader.js diff --git a/.babelrc b/packages/react-router/.babelrc similarity index 100% rename from .babelrc rename to packages/react-router/.babelrc diff --git a/.eslintignore b/packages/react-router/.eslintignore similarity index 100% rename from .eslintignore rename to packages/react-router/.eslintignore diff --git a/.eslintrc b/packages/react-router/.eslintrc similarity index 100% rename from .eslintrc rename to packages/react-router/.eslintrc diff --git a/packages/react-router/.gitignore b/packages/react-router/.gitignore new file mode 100644 index 0000000000..3dc8f1c9e1 --- /dev/null +++ b/packages/react-router/.gitignore @@ -0,0 +1 @@ +umd diff --git a/karma.conf.js b/packages/react-router/karma.conf.js similarity index 100% rename from karma.conf.js rename to packages/react-router/karma.conf.js diff --git a/modules/BrowserRouter.js b/packages/react-router/modules/BrowserRouter.js similarity index 100% rename from modules/BrowserRouter.js rename to packages/react-router/modules/BrowserRouter.js diff --git a/modules/Core.js b/packages/react-router/modules/Core.js similarity index 100% rename from modules/Core.js rename to packages/react-router/modules/Core.js diff --git a/modules/HashRouter.js b/packages/react-router/modules/HashRouter.js similarity index 100% rename from modules/HashRouter.js rename to packages/react-router/modules/HashRouter.js diff --git a/modules/Link.js b/packages/react-router/modules/Link.js similarity index 100% rename from modules/Link.js rename to packages/react-router/modules/Link.js diff --git a/modules/MemoryRouter.js b/packages/react-router/modules/MemoryRouter.js similarity index 100% rename from modules/MemoryRouter.js rename to packages/react-router/modules/MemoryRouter.js diff --git a/modules/NavLink.js b/packages/react-router/modules/NavLink.js similarity index 100% rename from modules/NavLink.js rename to packages/react-router/modules/NavLink.js diff --git a/modules/Prompt.js b/packages/react-router/modules/Prompt.js similarity index 100% rename from modules/Prompt.js rename to packages/react-router/modules/Prompt.js diff --git a/modules/Redirect.js b/packages/react-router/modules/Redirect.js similarity index 100% rename from modules/Redirect.js rename to packages/react-router/modules/Redirect.js diff --git a/modules/Route.js b/packages/react-router/modules/Route.js similarity index 100% rename from modules/Route.js rename to packages/react-router/modules/Route.js diff --git a/modules/Router.js b/packages/react-router/modules/Router.js similarity index 100% rename from modules/Router.js rename to packages/react-router/modules/Router.js diff --git a/modules/ServerRouter.js b/packages/react-router/modules/ServerRouter.js similarity index 100% rename from modules/ServerRouter.js rename to packages/react-router/modules/ServerRouter.js diff --git a/modules/Switch.js b/packages/react-router/modules/Switch.js similarity index 100% rename from modules/Switch.js rename to packages/react-router/modules/Switch.js diff --git a/modules/__tests__/.eslintrc b/packages/react-router/modules/__tests__/.eslintrc similarity index 100% rename from modules/__tests__/.eslintrc rename to packages/react-router/modules/__tests__/.eslintrc diff --git a/modules/__tests__/Link-test.js b/packages/react-router/modules/__tests__/Link-test.js similarity index 100% rename from modules/__tests__/Link-test.js rename to packages/react-router/modules/__tests__/Link-test.js diff --git a/modules/__tests__/NavLink-test.js b/packages/react-router/modules/__tests__/NavLink-test.js similarity index 100% rename from modules/__tests__/NavLink-test.js rename to packages/react-router/modules/__tests__/NavLink-test.js diff --git a/modules/__tests__/ServerRouter-test.js b/packages/react-router/modules/__tests__/ServerRouter-test.js similarity index 100% rename from modules/__tests__/ServerRouter-test.js rename to packages/react-router/modules/__tests__/ServerRouter-test.js diff --git a/modules/__tests__/hashLinks-test.js b/packages/react-router/modules/__tests__/hashLinks-test.js similarity index 100% rename from modules/__tests__/hashLinks-test.js rename to packages/react-router/modules/__tests__/hashLinks-test.js diff --git a/modules/__tests__/integration-test.js b/packages/react-router/modules/__tests__/integration-test.js similarity index 100% rename from modules/__tests__/integration-test.js rename to packages/react-router/modules/__tests__/integration-test.js diff --git a/modules/__tests__/withRouter-test.js b/packages/react-router/modules/__tests__/withRouter-test.js similarity index 100% rename from modules/__tests__/withRouter-test.js rename to packages/react-router/modules/__tests__/withRouter-test.js diff --git a/modules/index.js b/packages/react-router/modules/index.js similarity index 100% rename from modules/index.js rename to packages/react-router/modules/index.js diff --git a/modules/matchPath.js b/packages/react-router/modules/matchPath.js similarity index 100% rename from modules/matchPath.js rename to packages/react-router/modules/matchPath.js diff --git a/modules/withRouter.js b/packages/react-router/modules/withRouter.js similarity index 100% rename from modules/withRouter.js rename to packages/react-router/modules/withRouter.js diff --git a/packages/react-router/package.json b/packages/react-router/package.json new file mode 100644 index 0000000000..a886c8483b --- /dev/null +++ b/packages/react-router/package.json @@ -0,0 +1,90 @@ +{ + "name": "react-router", + "version": "4.0.0-alpha.6", + "description": "Declarative routing for React", + "repository": "ReactTraining/react-router", + "license": "MIT", + "authors": [ + "Michael Jackson", + "Ryan Florence" + ], + "files": [ + "BrowserRouter.js", + "Core.js", + "HashRouter.js", + "Link.js", + "MemoryRouter.js", + "NavLink.js", + "Prompt.js", + "Redirect.js", + "Route.js", + "Router.js", + "ServerRouter.js", + "Switch.js", + "index.js", + "matchPath.js", + "withRouter.js", + "README.md", + "umd" + ], + "main": "index.js", + "scripts": { + "release": "node ./scripts/release.js", + "build-lib": "babel ./modules -d . --ignore __tests__", + "build-umd": "webpack modules/index.js umd/react-router.js", + "build-min": "webpack -p modules/index.js umd/react-router.min.js", + "build": "node ./scripts/build.js", + "watch": "babel ./modules -d . --ignore __tests__ --watch", + "prepublish": "node ./scripts/build.js", + "clean": "node ./scripts/clean.js", + "lint": "eslint modules", + "test": "karma start --single-run" + }, + "dependencies": { + "history": "^4.5.1", + "invariant": "^2.2.2", + "path-to-regexp": "^1.5.3" + }, + "peerDependencies": { + "react": "15.x" + }, + "devDependencies": { + "babel-cli": "^6.18.0", + "babel-eslint": "^6.0.4", + "babel-loader": "^6.2.10", + "babel-plugin-dev-expression": "^0.2.1", + "babel-plugin-transform-react-remove-prop-types": "^0.2.11", + "babel-preset-es2015": "^6.14.0", + "babel-preset-react": "^6.5.0", + "babel-preset-stage-1": "^6.5.0", + "eslint": "^2.13.1", + "eslint-plugin-import": "^1.15.0", + "eslint-plugin-react": "^5.2.2", + "expect": "^1.20.1", + "gzip-size": "^3.0.0", + "in-publish": "^2.0.0", + "karma": "^0.13.22", + "karma-browserstack-launcher": "^1.0.1", + "karma-chrome-launcher": "^1.0.1", + "karma-mocha": "^1.0.1", + "karma-mocha-reporter": "^2.0.4", + "karma-sourcemap-loader": "^0.3.7", + "karma-webpack": "^1.7.0", + "mocha": "^2.5.3", + "pretty-bytes": "^3.0.1", + "react": "^15.3.0", + "react-addons-test-utils": "^15.3.1", + "react-dom": "^15.3.0", + "readline-sync": "^1.4.4", + "webpack": "^1.13.1", + "webpack-dev-server": "^1.14.1" + }, + "keywords": [ + "react", + "router", + "route", + "routing", + "history", + "link" + ] +} diff --git a/scripts/build.js b/packages/react-router/scripts/build.js similarity index 100% rename from scripts/build.js rename to packages/react-router/scripts/build.js diff --git a/scripts/clean.js b/packages/react-router/scripts/clean.js similarity index 100% rename from scripts/clean.js rename to packages/react-router/scripts/clean.js diff --git a/scripts/release.js b/packages/react-router/scripts/release.js similarity index 100% rename from scripts/release.js rename to packages/react-router/scripts/release.js diff --git a/tests.webpack.js b/packages/react-router/tests.webpack.js similarity index 100% rename from tests.webpack.js rename to packages/react-router/tests.webpack.js diff --git a/webpack.config.js b/packages/react-router/webpack.config.js similarity index 100% rename from webpack.config.js rename to packages/react-router/webpack.config.js diff --git a/yarn.lock b/packages/react-router/yarn.lock similarity index 100% rename from yarn.lock rename to packages/react-router/yarn.lock